- 1
Остались ли среди созидателей Ынтерпрайзного гуано не познавшие вкус хуйца своего шефа?
Нашли или выдавили из себя код, который нельзя назвать нормальным, на который без улыбки не взглянешь? Не торопитесь его удалять или рефакторить, — запостите его на говнокод.ру, посмеёмся вместе!
−103
Остались ли среди созидателей Ынтерпрайзного гуано не познавшие вкус хуйца своего шефа?
Cолгите ещё один раз. Обманите себя, сказав что Ваш рот девственен.
0
https://habr.com/post/431534/
Проблемные личности среди разработчиков
+1
// HooksList.h
#define PPCAT_NX(A, B) A ## B
#define PPCAT(A, B) PPCAT_NX(A, B)
#ifdef HOOKS_DEFS
using namespace NtStructs;
#define API_HOOK_DEF(module_name, hook_name, return_type, enabled, ...) \
typedef return_type(WINAPI *PPCAT(hook_name, _ptr))(__VA_ARGS__); \
return_type WINAPI PPCAT(hook_name, _hook)(__VA_ARGS__); \
extern PPCAT(hook_name, _ptr) PPCAT(hook_name, _orig);
#elif defined(HOOKS_LIST)
#define API_HOOK_DEF(module_name, hook_name, return_type, enabled, ...) \
{module_name, #hook_name, (LPVOID)PPCAT(hook_name, _hook), (LPVOID*)&PPCAT(hook_name, _orig), enabled},
#elif defined(HOOKS_TYPES_DEF)
using namespace NtStructs;
#define API_HOOK_DEF(module_name, hook_name, return_type, enabled, ...) \
typedef return_type(WINAPI *PPCAT(hook_name, _ptr))(__VA_ARGS__); \
return_type WINAPI PPCAT(hook_name, _hook)(__VA_ARGS__);
#elif defined(ORIGINAL_FUNCTIONS_TABLE_DEF)
#define API_HOOK_DEF(module_name, hook_name, return_type, enabled, ...) \
PPCAT(hook_name, _ptr) hook_name;
#elif defined(ORIGINAL_FUNCTIONS_TABLE_FILL)
#define API_HOOK_DEF(module_name, hook_name, return_type, enabled, ...) \
(ORIGINAL_FUNCTIONS_TABLE_NAME).hook_name = PPCAT(hook_name, _orig);
#else
#define API_HOOK_DEF(...)
#endif
// NtCreateFile
API_HOOK_DEF(L"ntdll", NtCreateFile, NTSTATUS, true,
PHANDLE FileHandle,
ACCESS_MASK DesiredAccess,
POBJECT_ATTRIBUTES ObjectAttributes,
PIO_STATUS_BLOCK IoStatusBlock,
PLARGE_INTEGER AllocationSize,
ULONG FileAttributes,
ULONG ShareAccess,
ULONG CreateDisposition,
ULONG CreateOptions,
PVOID EaBuffer,
ULONG EaLength)
// NtDeleteFile
API_HOOK_DEF(L"ntdll", NtDeleteFile, NTSTATUS, true,
POBJECT_ATTRIBUTES ObjectAttributes)
// И так далее
// В .cpp:
static HookEntry hookEntries[] = {
#define HOOKS_LIST
#include "HooksList.h"
#undef HOOKS_LIST
};
// ...
static OriginalFunctions originalFuncsTable;
#define ORIGINAL_FUNCTIONS_TABLE_FILL 1
#define ORIGINAL_FUNCTIONS_TABLE_NAME originalFuncsTable
#include "HooksList.h"
#undef ORIGINAL_FUNCTIONS_TABLE_NAME
#undef ORIGINAL_FUNCTIONS_TABLE_FILL
Мокросы!..
+3
: ENUM> ( -- ) ;
: <ENUM ( xt n -- )
BEGIN
BEGIN
>IN @ BL WORD DUP C@ 0=
WHILE
2DROP REFILL 0= IF EXIT THEN
REPEAT
FIND SWAP ['] ENUM> = AND IF DROP 2DROP EXIT THEN
>IN !
2DUP SWAP EXECUTE
1+
AGAIN
;
WORDLIST CONSTANT ASSEMBLER
GET-ORDER ASSEMBLER SWAP 1+ SET-ORDER DEFINITIONS
HEX
VARIABLE 'BYTES
: B, ( c -- ) C, 1 'BYTES @ +! ;
: W, ( u -- ) DUP B, 8 RSHIFT B, ;
: DB" ( "ccc<quote>" -- c-addr u )
[CHAR] " PARSE SWAP OVER HERE >R HERE SWAP DUP ALLOT CMOVE
R> SWAP DUP 'BYTES @ +!
;
: W! ( u addr -- ) 2DUP C! SWAP 8 RSHIFT SWAP 1+ C! ;
' CONSTANT 0 <ENUM AX CX DX BX SP BP SI DI ENUM>
' CONSTANT 0 <ENUM AL CL DL BL AH CH DH BH ENUM>
: MEM ( u "<spaces>name" -- ) DUP 18 AND 3 RSHIFT >R 7 AND R> 2CONSTANT ;
' MEM 0 <ENUM
[BX+SI] [BX+DI] [BP+SI] [BP+DI] [SI] [DI] [W] [BX]
[BX+SI]+B [BX+DI]+B [BP+SI]+B [BP+DI]+B [SI]+B [DI]+B [BP]+B [BX]+B
[BX+SI]+W [BX+DI]+W [BP+SI]+W [BP+DI]+W [SI]+W [DI]+W [BP]+W [BX]+W
ENUM>
:NONAME ( reg1 reg2 -- ) 3 LSHIFT OR B, ;
:NONAME ( reg off u -- ) ROT 3 LSHIFT OR B, W, ;
:NONAME ( reg off u -- ) ROT 3 LSHIFT OR B, B, ;
:NONAME ( reg off 6 | reg u -- )
DUP 6 = IF
ROT 3 LSHIFT OR B, W,
ELSE
SWAP 3 LSHIFT OR B,
THEN
;
CREATE MOD , , , ,
3 CONSTANT REG
: -- ( opcode "<spaces>name" -- ) CREATE C, DOES> C@ B, CELLS MOD + @ EXECUTE ;
' -- 0 <ENUM ADD<B ADD<W ADD>B ADD>W ENUM>
' -- 8 <ENUM OR<B OR<W OR>B OR>W ENUM>
' -- 10 <ENUM ADC<B ADC<W ADC>B ADC>W ENUM>
' -- 18 <ENUM SBB<B SBB<W SBB>B SBB>W ENUM>
' -- 20 <ENUM AND<B AND<W AND>B AND>W ENUM>
' -- 28 <ENUM SUB<B SUB<W SUB>B SUB>W ENUM>
' -- 30 <ENUM XOR<B XOR<W XOR>B XOR>W ENUM>
' -- 38 <ENUM CMP<B CMP<W CMP>B CMP>W ENUM>
' -- 85 <ENUM TESTB TESTW XCHGB XCHGW
MOV<B MOV<W MOV>B MOV>W ENUM>
8D -- LEA 0C4 -- LES 0C5 -- LDS
: -- ( opcode "<spaces>name" -- ) CREATE C, DOES> C@ B, B, ;
4 -- AL-ADD 0C -- AL-OR 14 -- AL-ADC 1C -- AL-SBB
24 -- AL-AND 2C -- AL-SUB 34 -- AL-XOR 3C -- AL-CMP
6B -- PUSHB 0A8 -- AL-TEST 0CD -- INT 0EB -- JMP-SHORT
' -- 70 <ENUM JO JNO JB JAE JZ JNZ JBE JA JS JNS JP JNP ENUM>
' -- 0B0 <ENUM AL-MOV CL-MOV DL-MOV BL-MOV
AH-MOV CH-MOV DH-MOV BH-MOV ENUM>
' -- 0E0 <ENUM LOOPNZ LOOPZ LOOP JCXZ
INB INW OUTB OUTW ENUM>
: -- ( opcode "<spaces>name" -- ) CREATE C, DOES> C@ B, W, ;
5 -- AX-ADD 0D -- AX-OR 15 -- AX-ADC 1D -- AX-SBB
25 -- AX-AND 2D -- AX-SUB 35 -- AX-XOR 3D -- AX-CMP
68 -- PUSHW 0A0 -- MEM>AL 0A1 -- MEM>AX 0A2 -- AL>MEM
0A3 -- AX>MEM 0A9 -- AX-TEST 0C2 -- RETW 0CA -- RETW-FAR
0E8 -- CALL 0E9 -- JMP
' -- 0B8 <ENUM AX-MOV CX-MOV DX-MOV BX-MOV
SP-MOV BP-MOV SI-MOV DI-MOV ENUM>
: -- ( opcode "<spaces>name" -- ) CREATE C, DOES> C@ B, ;
6 -- ES-PUSH 7 -- ES-POP 0E -- CS-PUSH 16 -- SS-PUSH
17 -- SS-POP 1E -- DS-PUSH 1F -- DS-POP 26 -- ES:
26 -- DAA 2E -- CS: 2F -- DAS 36 -- SS:
37 -- AAA 3E -- DS: 3F -- AAS 60 -- PUSHA
61 -- POPA 64 -- FS: 65 -- GS: 66 -- CHANGE-OP-SIZE
67 -- CHANGE-ADDR-SIZE 0C3 -- RET 0C9 -- LEAVE 0CB -- RET-FAR
0CC -- INT3 0CE -- INTO 0CF -- IRET 0F0 -- LOCK
' -- 40 <ENUM AX-INC CX-INC DX-INC BX-INC SP-INC BP-INC SI-INC DI-INC
AX-DEC CX-DEC DX-DEC BX-DEC SP-DEC BP-DEC SI-DEC DI-DEC
AX-PUSH CX-PUSH DX-PUSH BX-PUSH SP-PUSH BP-PUSH SI-PUSH DI-PUSH
AX-POP CX-POP DX-POP BX-POP SP-POP BP-POP SI-POP DI-POP
ENUM>
' -- 6C <ENUM INSB INSW OUTSB OUTSW ENUM>
' -- 80 <ENUM NOP CX-AX-XCHG DX-AX-XCHG BX-AX-XCHG
SP-AX-XCHG BP-AX-XCHG SI-AX-XCHG DI-AX-XCHG
CBW CWD ENUM>
' -- 9B <ENUM WAIT PUSHF POPF SAHF LAHF ENUM>
' -- 0A4 <ENUM MOVSB MOVSW CMPSB CMPSW ENUM>
' -- 0AA <ENUM STOSB STOSW LODSB LODSW SCASB SCASW ENUM>
' -- 0D4 <ENUM AAM AAD SALC XLAT ENUM>
' -- 0EC <ENUM DX-AL-IN DX-AX-IN AL-DX-OUT AX-DX-OUT ENUM>
' -- 0F2 <ENUM REPNZ REPZ HLT CMC ENUM>
' -- 0F8 <ENUM CLC STC CLI STI CLD STD ENUM>
Я вчера упоролся подумал, хуля я как лох пешу форт на асме, ТруЪ фротеры пишут форт на ыорте. И начал я с этого —– я представляю вам единственный и неповторимый говно-фрот-асамблец за авторством моего меня.
Примерим:
VARIABLE BYTES
BYTES 'BYTES !
CREATE PROG
9 AH-MOV
0 DX-MOV HERE 2 -
21 INT
4C00 AX-MOV
21 INT
DB" Hello, Forth-ASSembler!$" DROP PROG - 100 + SWAP W!
PROG BYTES @ DUMP
0
// https://dev.to/saigowthamr/how-to-reverse-a-string-in-javascript-3i9c
// In this tutorial, we are going to learn three different ways to reverse a string
// in JavaScript by using the reverse method, reduce method.
// First way
const str = "hello"
str.split('').reverse().join('')
//"olleh"
// We used split method to split the string into an array of individual strings then chain it to reverse method.
// Second way
const str = "hello"
[...str].reduce((prev,next)=>next+prev)
//"olleh"
// First, we spread the string using spread operator and reverse the string using the reduce method
// Third way
function reverseString(str){
const arr = [...str]
let reverse= "";
while(arr.length){
reverse = reverse + arr.pop()
}
return reverse
}
// I mostly like the Second way to reverse a string using reduce method.
// Happy coding...
Это видимо такой вид соревнований, типа как вкрутить лампочку в патрон наиболее упоротым и неочевидным способом. Нахрена это нужно обычному программисту? Может это такой способ ручной обфускации? Тогда понятно
+1
#include <stdio.h>
#include <inttypes.h>
#include <string.h>
typedef struct
{
uint8_t arr[10];
uint8_t pos;
uint8_t is_swap;
} arr10;
arr10 bubble_sort_recursion(arr10 a);
void bubble_sort (uint8_t arr[static 10]);
void bubble_sort (uint8_t arr[static 10])
{
arr10 a;
memcpy(a.arr, arr, sizeof(a.arr));
a.pos = 0;
a.is_swap = 0;
a = bubble_sort_recursion(a);
memcpy(arr, a.arr, sizeof(a.arr));
}
arr10 bubble_sort_recursion(arr10 a)
{
if (a.pos != 9)
{
if (a.arr[a.pos] > a.arr[a.pos + 1])
{
uint8_t tmp = a.arr[a.pos + 1];
a.arr[a.pos + 1] = a.arr[a.pos];
a.arr[a.pos] = tmp;
a.is_swap = 1;
}
a.pos++;
return bubble_sort_recursion(a);
}
else
{
if (a.is_swap == 0)
{
return a;
}
else
{
a.pos = 0;
a.is_swap = 0;
return bubble_sort_recursion(a);
}
}
}
int main(void)
{
uint8_t arr[10] = {244, 90, 254, 109, 33, 85, 69, 81, 126, 71};
bubble_sort(arr);
printf("%" PRIu8 ", %" PRIu8 ", %" PRIu8 ", %" PRIu8 ", %" PRIu8 ", %" PRIu8 ", %" PRIu8 ", %" PRIu8 ", %" PRIu8 ", %" PRIu8,
arr[0], arr[1], arr[2], arr[3], arr[4], arr[5], arr[6], arr[7], arr[8], arr[9]);
return 0;
}
Рекурсивная сортировка пузырьком
−4
<j123123__> Ну лол, я 29-летний бородатый чел из Харькова который живет с мамкой, пишет прошивки под микроконтроллеры STM32
<j123123__> Я не мобилизован потому что например дважды в психбольнице лежал, лол
<j123123__> Ну диагноз тама не говорят, вроде шизо-какое-то расстройство
<j123123__> А вот представь вот в пледик укрыться с кунчиком и на сишечке прогать
Узнаем j123123 с новой стороны.
−6
Давайте хвалить "NodeJS".
−1
$type = ($_POST['type'] == 'any') ? '' : str_replace(' ', '%20', str_replace('|','%7C', $_POST['type']));
$make = ($_POST['make'] == 'any') ? '' : str_replace(' ', '%20', str_replace('|','%7C', $_POST['make']));
$url = 'http://www.cycletrader.com/search-results?sort=featured%3Aasc&page='.$_POST['page'].'&type='.$type.'&make='.$make;
$str = getCurlObject($url);
$content = multiexplode('<div id="searchPage"', '<div class="footer', $str);
$list = multiexplode('<div id="gridView"', '<div class="rezDetailsBtm', $content);
$field = explode('<div data-url=', $list);
for ($k = 1; $k < count($field); $k++) {
$title_tmp = multiexplode('<a class="listing-info-title', '</a>', $field[$k]);
$title = multiexplode('title="', '"', $title_tmp);
$link = $lang['dir'].'detail?'.$_POST['form'].'&'.multiexplode('href="', '"', $title_tmp);
$img_tmp = multiexplode('<img', '/>', $field[$k]);
$img = multiexplode('data-src="', '"', $img_tmp);
$price_tmp = multiexplode('class="price', '</span>', $field[$k]);
if (strripos($price_tmp,'<span class="mileage">')) {
$price = multiexplode('<span>', '<span', $price_tmp);
} else {
$price = multiexplode('<span>', '</span>', $price_tmp);
}
if (trim($price) == 'Call for price') $price = '';
$result['item'][$k]['link'] = $link;
$result['item'][$k]['title'] = $title;
$result['item'][$k]['img'] = $img;
$result['item'][$k]['price'] = $price;
$result['item'][$k]['location'] = $location;
}
if (strripos($content,'<div class="pagination')) {
$pagination = multiexplode('<div class="pagination', '</div>', $content);
$pagination_tmp = multiexplode('<span class="hidden-xs','</div>', $pagination);
$pagination_item = explode('<li', $pagination);
if (count($pagination_item) > 6) {
$result['pagination'] = true;
}
}
Стандартный похокод пыходибила.
−4
начало пхп прог уннамед
подключить "пхп модуль 1.0"
доллар целое а = 4
доллар целое б = 2
печать сум доллар а + доллар б 2
помолиться perl
конец пхп прог уннамед