- 1
- 2
- 3
sub eax, edx
test eax, eax
jl +$04
Нашли или выдавили из себя код, который нельзя назвать нормальным, на который без улыбки не взглянешь? Не торопитесь его удалять или рефакторить, — запостите его на говнокод.ру, посмеёмся вместе!
+212
sub eax, edx
test eax, eax
jl +$04
dcc32
Нафига вторая строчка?
+247
mov eax, eax ;without this crap, it fucks up
mov ecx, ecx ;don't ask me why...
нашел в инклудах к opengl
+234
00614A77 |. 8BF0 MOV ESI,EAX
00614A79 |. BB 01000000 MOV EBX,1
00614A7E |. EB 01 JMP SHORT 00614A81
00614A80 |> 43 /INC EBX
00614A81 |> 3BF3 CMP ESI,EBX
00614A83 |. 7C 07 |JL SHORT 00614A8C
00614A85 |. 807C1F FF 20 |CMP BYTE PTR DS:[EDI+EBX-1],20
00614A8A |.^ 76 F4 \JBE SHORT 00614A80
Оптимизация компилятора
+225
.386
.model flat,stdcall
option casemap:none
include c:\masm32\includes\windows.inc
include c:\masm32\includes\user32.inc
include c:\masm32\includes\kernel32.inc
includelib c:\masm32\lib\user32.lib
includelib c:\masm32\lib\kernel32.lib
bufsize EQU 12
.data
a dd 300
b dd 500
d dd 300
fmt db "Max = %2d",0
buf db bufsize dup(0)
ctrlf db 0dh,0ah
stdout dd ?
cWritten dd ?
result dd ?
.code
start:
invoke GetStdHandle,STD_OUTPUT_HANDLE
mov stdout,eax
mov eax,a
mov result,eax ; изначально максимальный это a
cmp eax,b ; сравниваем со вторым числом
jbe big1 ; если a<=b , значит b больше a
ja min1 ; иначе a ещё максимальное
big1:
mov eax,b
mov result,eax ;теперь b максимальное
cmp eax,d
jbe big2 ; максимальное c
jmp print
big2:
mov eax,d
mov result,eax ;максимальный c
jmp print
min1:
mov eax,d
cmp eax,a
jbe big3
mov result,eax
jmp print
big3:
mov eax,a
mov result,eax
jmp print
print:
mov edx,result
invoke wsprintf, ADDR buf, ADDR fmt, edx
invoke WriteConsoleA, stdout, ADDR buf, bufsize, ADDR cWritten, NULL
invoke WriteConsoleA, stdout, ADDR ctrlf, 2, ADDR cWritten, NULL
end start
С ума сойти. И это сравнение трёх чисел, которое делается в два простейших условия...
+242
main:
mov a, P0
dec a
inc a
jnz __div_part
jmp __mul_part
__mul_part:
// mul
mov r0, P1
mov r2, P2
call __Mul
mov P1, r0
mov P2, r1
jmp __end
__div_part:
// div
mov r0, P1
mov r2, P2
call __Div
mov P1, r0
mov P2, r1
jmp __end
__end:
end
процедура main лабы по mcs-51
+230
org VECTORS
dw metka1
org 3feh
dw start
org 200h
start:
lda #0
sta 0E0h
sta 0E1h
sta 0E2h
clra
lda #0f0h
sta 4
bset 5,0008h
cli
jmp $
metka1:
rol 0
bcs metka2
lda #070h
sta 4
lda #1
sta 0E0h
jmp metka3
metka2:
lda #0f0h
sta 4
lda 0E0h
cmp 0E2h
beq metka3
lda #0
sta 0E0h
lda 0E1h
inca
sta 0E1h
jmp metka4
metka3:
lda 0E1h
inca
sta 0E1h
metka4:
bset 2,0008h
rti
END
типовик
+240
lea 0x0(%esi),%esi
sub $0x1,%eax
cmp $0xffffffff,%eax
je 0x8048e07
mov (%ecx,%eax,4),%esi
test %esi,%esi
je 0x8048df8
Чудеса оптимизации -О3 на gcc 4.4
(код в интелловской аннотации, сначала источник, потом назначение)
+263
:start
call lol
jmp start
:lol
push 9
ret
:test
...
Не очевидная альтернатива jmp test
+225
; Program entry point
00401000: push 0070F001
00401005: call 0040100B
0040100A: ret
0040100B: ret
Суровый старт зашифрованного самораспаковывающегося архива. Так хитро передаётся управление на 0070F001 (за сегмент кода).
+266
code segment para
assume cs:code,ds:code
org 0100h
start:
mov dx,offset years_old
mov cx,dx
fuck:
mov dx,offset message ;назойливая мысль
mov ah,09h ;отпечаток на жизни
int 21h ;вызвать желание
dec cx
loop fuck
mov ax,4c00h ;згинуть на**й
int 21h
message db 'Hociu trahnutsya s etim novenykim simpotich'nym parnem!',13,10,'$'
years_old dw 67
end start
взломал ломиком, черепную коробку одной обычной женской особи..)) добравшись до головного процессора - вот что удалось обнаружить )) ... прошивку бл***и :) хорошо что в эту прошивку не встроен ескплой эксплуатирующий уязвимость RPC MS03-026 (передача через назойливый поток информации передаваемый свистулькой посредством насвистывания...(позже техника была названа НЛП - нейро-лингвистическое программирование) :)