Function at 0x40b25b
Capabilities:
Accept command line arguments
Encode data using xor

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x74
push ebx
push esi
mov dword [ebp - 8], 0x6f0
mov esi, ecx
cmp dword [ebp - 8], 0x242c
push edi
jle 0x40b2d0
cmc
imul edx, dword [ebp - 0x4f], 0x59a2b28f
and dword [esi + 0x61], esp
movsd dword es:[edi], dword [esi]
retf 0xf5c6
mov dword [ebp - 0x20], 0xffffffff
mov dword [ebp - 8], 0xb5c
cmp dword [ebp - 8], 0x25c3
jle 0x40b3e5
sub dword [0xaed933b5], ecx
scasb al, byte es:[edi]
add dh, dl
xor dh, bl
cmc
cmc
push cs
inc eax
jle 0x40b339
in eax, 0x90
sbb dl, ah
push ebp
leave
div byte [eax - 0xb13b3bf]
jb 0x40b37f
shr dword [eax + 0x5f], cl
push eax
loope 0x40b2f0
pushal
pop eax
bound edx, qword [0xd88203c8]
pop edi
mov ecx, 0xc1aae855
insd dword es:[edi], dx
ret 0x47a1
dec edx
xchg ebx, eax
dec ebx
scasd eax, dword es:[edi]
invalid
in al, dx
add esp, edi
scasd eax, dword es:[edi]
adc eax, 0xe045ab85
lea edi, [edx - 0xd]
nop
out dx, eax
movsb byte es:[edi], byte [esi]
retf
mov dword [ebp - 0x18], 0xfdb7b241
mov dword [ebp - 0x28], 0xffffffff
mov dword [ebp - 8], 0x9e7
cmp dword [ebp - 8], 0x13e5
jle 0x40b501
mov ecx, gs
test ebx, eax
xor eax, 0x5ed30cee
invalid
mov dword [ebp - 8], 0x1ba
cmp dword [ebp - 8], 0x1725
jle 0x40b57f
and dword [ecx], ecx
in al, dx
stosb byte es:[edi], al
pop ss
push 0x1a
pop ds
mov dword [0xfea441e2], eax
insb byte es:[edi], dx
ret
xchg ebp, eax
add byte [eax], al
loop 0x40b5f0
jae 0x40b546
cmpsb byte [esi], byte es:[edi]
cmp al, 5
fbstp tbyte [ebp + 0x45c79c42]
mov dword [ebp - 8], 0x377
clc
ja 0x40b587
add byte [eax], al
cmp dword [ebp - 8], 0x1909
jge 0x40b581
or dword [ecx], ebx
add byte [eax], al
jle 0x40b5fd
mov edi, 0xe9a86eef
mov esp, 0x85098680
add edx, eax
jae 0x40b600
mov eax, 0xe2fed09e
ja 0x40b5bf
sar dword [ebp + 0x6f4cd5d7], 0xfb
cli
scasb al, byte es:[edi]
pop ecx
adc ch, byte [esi - 0x676a9ef7]
and byte [ebp + 0x6e91173f], dh
movsb byte es:[edi], byte [esi]
cmp cl, byte [edi]
std
or eax, 0x986ae25a
pop edx
loop 0x40b62d
cwde
mov dword [ebp + 0x20], ebp
mov ah, 0xd2
mov byte [edx], dl
dec eax
push ecx
dec edi
mov edx, 0xa01aa4f6
push esp
in al, 0x7b
mov bl, 0x82
pushfd
jbe 0x40b5c0
jecxz 0x40b574
sahf
movsd dword es:[edi], dword [esi]
outsd dx, dword [esi]
out 0xa, al
push ss
xchg ebx, eax
or eax, 0x74709114
xchg esp, eax
invalid
pushfd
sbb esi, dword [0x345e453a]
ror dword [eax + 0x42585a7b], 0xc7
inc ebp
clc
mov dword [ebp - 8], 0x628d16e9
mov dword [ebp - 0x30], 0xffffffff
mov dword [ebp - 8], 0x12b7
cmp dword [ebp - 8], 0x23f3
jle 0x40b675
jmp 0xc7a3431b
or al, 0x29
int1
fld xword [ebx]
pop esp
dec esp
hlt
mov ss, word gs:[0x31c12300]
inc edx
imul eax, dword [eax], 0x445b4cc2
push esi
xor byte [0x8991baa5], dh
stosb byte es:[edi], al
pop ecx
or ebp, 0x3d
dec ecx
add edx, dword [ebp - 0x4e]
daa
adc byte [esi + 4], bl
pop eax
sub dh, ah
fbld tbyte [ecx]
pop es
and al, 0x58
in eax, dx
push ebx
and dword [edx], ecx
ljmp 0x39cf
iretd
xor edi, edi
xor ecx, ecx
mov dword [ebp - 0x10], edi
inc ecx
jmp 0x40b68d
mov eax, dword [ebp - 0x10]
mov dword [ebp + eax*4 - 0x34], 0xfffffff9
inc dword [ebp - 0x10]
cmp dword [ebp - 0x10], ecx
jl 0x40b67f
push 4
mov dword [ebp - 0x10], edi
pop edx
jmp 0x40b6a4
mov eax, dword [ebp - 0x10]
mov dword [ebp + eax*4 - 0x5c], edi
inc dword [ebp - 0x10]
cmp dword [ebp - 0x10], edx
jl 0x40b69a
mov dword [ebp - 8], 0xf01
cmp dword [ebp - 8], 0x1c6e
jle 0x40b799
add byte [eax], al
xor edx, dword [esi]
shr bl, cl
mov cl, 0x39
jnp 0x40b660
dec eax
aaa
fdivr qword [ebx]
jmp 0x40b6f4
aaa
das
lodsb al, byte [esi]
jecxz 0x40b72d
mov byte [0x9d177197], al
sar ch, cl
xchg edi, eax
invalid
test eax, 0xca2067e0
jno 0x40b74a
sbb al, 0xe0
mov esi, dword [edi]
loopne 0x40b6bb
aaa
shl byte [ecx], cl
cmp al, 0x7b
daa
mov edi, ebx
push ss
cmp esp, dword [ebp + 0x7f]
mov ebx, esp
enter 0x77b2, 0x77
imul ebx, dword [0x8c688e86], 0x1bf47089
dec edx
stosd dword es:[edi], eax
mov dl, 0x77
ja 0x40b7ad
sbb eax, 0x8c688e86
mov dword [eax - 0xc], esi
jo 0x40b740
sbb ecx, dword [edx - 0x55]
movsd dword es:[edi], dword [esi]
lodsb al, byte [esi]
mov eax, eax
in eax, dx
push ebp
dec esi
mov dl, 0x5a
rcr dword [edi + 0x6d9d9b6b], 0x91
je 0x40b77e
sti
and dword cs:[edx + eax*4], edi
pop ss
and eax, 0x841dbb3e
test edi, edi
mov ebx, 0xff85841d
xor byte [esi], ch
cwde
push esp
jle 0x40b767
xor ah, dh
cwde
invalid
xchg bl, dl
sub dword [edx], ebp
in eax, 0x3c
mov cl, 0xf8
sar byte [ebp - 0x5217940f], cl
adc al, 0x7f
mov esi, 0xd90b9c3
adc byte [edx + 0x39], al
std
loope 0x40b727
mov dword [ebp - 0x10], edi
jmp 0x40b7a8
mov eax, dword [ebp - 0x10]
mov dword [ebp + eax*4 - 0x4c], edi
inc dword [ebp - 0x10]
cmp dword [ebp - 0x10], ecx
jl 0x40b79e
mov dword [ebp - 0x10], edi
jmp 0x40b7bc
mov eax, dword [ebp - 0x10]
mov dword [ebp + eax*4 - 0x74], ecx
inc dword [ebp - 0x10]
cmp dword [ebp - 0x10], edx
jl 0x40b7b2
mov dword [ebp - 8], 0x80
cmp dword [ebp - 8], 0x169d
jle 0x40b85c
mov dword [0xe6078c23], eax
loop 0x40b769
cwde
std
lodsd eax, dword [esi]
invalid
cmp dword [ebp - 0x20], edi
jne 0x40b886
mov eax, dword [ebp - 0x20]
xor ecx, ecx
cmp eax, 0x451d
mov eax, dword [ebp - 0x20]
setge cl
xor edx, edx
cmp eax, ecx
setne dl
mov dword [ebp - 0x34], edx
test edx, edx
jne 0x40b886
mov edx, edi
xor edi, edi
inc edi
jmp 0x40b88b
xor edi, edi
inc edi
mov edx, edi
mov dword [ebp - 0x58], edx
xor ecx, ecx
mov eax, dword [ebp - 0x20]
cmp edx, eax
mov eax, dword [ebp - 0x20]
setle cl
xor edx, edx
cmp ecx, eax
mov eax, dword [ebp - 0x20]
setge dl
xor ebx, ebx
cmp edx, eax
mov eax, dword [ebp - 0x18]
setle bl
xor ecx, ecx
cmp ebx, eax
setle cl
mov dword [ebp - 8], ecx
mov eax, dword [ebp - 0x18]
mov dword [ebp - 0x10], eax
mov byte [ebp - 2], 0x9f
mov eax, dword [ebp - 8]
mov dword [ebp - 8], eax
mov al, byte [ebp - 2]
mov byte [ebp - 9], al
mov byte [ebp - 3], 0xcd
mov byte [ebp - 1], 0xce
movzx edx, byte [ebp - 1]
movzx eax, byte [ebp - 9]
movzx ecx, byte [ebp - 3]
imul edx, eax
movzx eax, byte [ebp - 9]
imul ecx, eax
sub ecx, edx
add ecx, dword [ebp - 8]
mov dword [ebp - 8], ecx
mov eax, dword [ebp - 0x10]
mov dword [ebp - 0x14], eax
mov byte [ebp - 9], 0x3a
movzx eax, byte [ebp - 9]
mov ecx, dword [ebp - 8]
sub ecx, eax
imul ecx, dword [ebp - 0x14]
movzx eax, byte [ebp - 9]
imul eax, dword [ebp - 0x14]
add ecx, eax
mov dword [ebp - 8], ecx
movzx eax, byte [ebp - 2]
imul eax, dword [ebp - 0x10]
mov dword [ebp - 0x14], eax
mov byte [ebp - 3], 0x37
mov byte [ebp - 1], 0x38
movzx ecx, byte [ebp - 1]
imul ecx, dword [ebp - 0x14]
movzx eax, byte [ebp - 3]
imul eax, dword [ebp - 0x14]
sub ecx, eax
add ecx, dword [ebp - 8]
sub ecx, dword [ebp - 0x20]
mov eax, dword [ebp - 0x20]
neg ecx
sbb ecx, ecx
add eax, 0x45b3
inc ecx
add eax, ecx
mov ecx, dword [ebp - 0x20]
sub ecx, eax
neg ecx
sbb ecx, ecx
inc ecx
imul ecx, dword [ebp - 0x20]
test ecx, ecx
je 0x40b995
xor ebx, ebx
mov byte [ebp - 1], bl
cmp byte [ebp - 1], bl
je 0x40bcde
push ebx
push 0x17e8
push 0x174c
push ebx
push 0x135e
push 0x9f9
push ebx
call dword [sym.imp.KERNEL32.dll_CreateFileA]
jmp 0x40bcde
mov dword [ebp - 8], 0x1f9
cmp dword [ebp - 8], 0x200f
jle 0x40b9f5
adc dword [edx + 0x18fc4df0], edi
out 0x22, al
inc ecx
cmpsd dword [esi], dword es:[edi]
call 0x22a7ebb5
jo 0x40b9cd
cmc
outsb dx, byte [esi]
dec esi
push 0x8b6d3e0
imul edi, dword [ebx + ebx], 0xffffff96
pop edi
push ebp
jmp 0x7f3116d8
mov dword [ebp - 0x14], 0x31c3
mov dword [ebp - 0x10], edi
mov dword [ebp - 8], 0x133c
cmp dword [ebp - 8], 0x2324
jle 0x40ba73
ror byte [eax], cl
add cl, 0x12
and dword [ebx + 3], esi
daa
xlatb
inc esi
dec ecx
aaa
cli
out 0x8a, al
mov dword [ebp - 0x14], 0xf61160dd
mov eax, dword [ebp - 0x10]
mov edx, dword [ebp - 0x10]
sub edx, dword [ebp - 0x18]
mov eax, dword [ebp - 0x20]
neg edx
sbb edx, edx
xor ecx, ecx
inc edx
cmp edx, eax
mov eax, dword [ebp - 0x18]
setg cl
xor edx, edx
cmp ecx, eax
mov eax, dword [ebp - 0x18]
setne dl
xor ecx, ecx
cmp edx, eax
setle cl
xor eax, eax
cmp ecx, 0x7a54
setl al
xor ebx, ebx
inc eax
je 0x40babd
mov eax, edi
cmp dword [ebp - 0x10], ebx
jne 0x40babf
mov eax, ebx
mov dword [ebp - 8], eax
xor edx, edx
mov dword [ebp - 0x14], 0x5ce
mov byte [ebp - 3], pe_nt_image_headers32
mov byte [ebp - 1], 0xe1
mov al, byte [ebp - 1]
mov byte [ebp - 0x1a], al
mov eax, dword [ebp - 0x14]
mov dword [ebp - 0x20], eax
mov byte [ebp - 9], 0x57
mov al, byte [ebp - 3]
mov byte [ebp - 1], al
mov eax, dword [ebp - 0x14]
mov dword [ebp - 0x14], eax
mov byte [ebp - 2], 0xdd
mov al, byte [ebp - 1]
mov al, byte [ebp - 2]
mov eax, dword [ebp - 0x14]
mov al, byte [ebp - 2]
mov eax, dword [ebp - 0x14]
mov eax, dword [ebp - 8]
mov al, byte [ebp - 0x1a]
mov al, byte [ebp - 9]
mov eax, dword [ebp - 0x20]
mov al, byte [ebp - 9]
mov eax, dword [ebp - 0x20]
mov ecx, dword [ebp - 0x10]
mov dword [ebp - 0x58], ecx
mov eax, dword [ebp - 0x10]
cmp eax, ecx
mov ecx, 0x84725324
setge dl
add edx, 9
imul eax, edx, 0xc418
cmp ecx, eax
sbb eax, eax
xor ecx, ecx
inc eax
cmp eax, 0xc4e7
setg cl
imul eax, ecx, 3
mov dword [ebp - 8], eax
mov eax, dword [ebp - 0x18]
mov dword [ebp - 0x14], eax
mov byte [ebp - 1], 0x57
mov byte [ebp - 3], 0x58
mov eax, dword [ebp - 8]
mov dword [ebp - 8], eax
movzx eax, byte [ebp - 1]
imul eax, dword [ebp - 0x14]
mov dword [ebp - 0x20], eax
mov byte [ebp - 0x1a], 0xb6
mov byte [ebp - 1], 0xb7
mov al, byte [ebp - 3]
mov byte [ebp - 3], al
mov eax, dword [ebp - 0x14]
mov dword [ebp - 0x14], eax
mov byte [ebp - 2], 0x67
movzx eax, byte [ebp - 1]
imul eax, dword [ebp - 0x20]
movzx ecx, byte [ebp - 0x1a]
imul ecx, dword [ebp - 0x20]
sub ecx, eax
add ecx, dword [ebp - 8]
mov dword [ebp - 8], ecx
movzx eax, byte [ebp - 2]
movzx ecx, byte [ebp - 3]
sub ecx, eax
imul ecx, dword [ebp - 0x14]
movzx eax, byte [ebp - 2]
imul eax, dword [ebp - 0x14]
add ecx, eax
mov dword [ebp - 0x14], ecx
mov byte [ebp - 1], 0x9c
mov byte [ebp - 3], 0x9d
mov al, byte [ebp - 1]
mov eax, dword [ebp - 0x14]
mov eax, dword [ebp - 8]
mov al, byte [ebp - 3]
mov eax, dword [ebp - 0x14]
mov dword [ebp - 0x14], 0x7245
mov eax, dword [ebp - 0x10]
xor edx, edx
add eax, dword [ebp - 0x10]
cmp eax, 0x219ff40b
mov eax, dword [ebp - 0x14]
setne dl
xor ecx, ecx
cmp eax, edx
setl cl
xor edx, edx
mov dword [ebp - 0x10], ecx
mov eax, dword [ebp - 0x10]
mov dword [ebp - 0x34], eax
mov eax, dword [ebp - 0x18]
mov ecx, dword [ebp - 0x5c]
mov eax, dword [ebp - 0x18]
cmp ecx, eax
setne dl
mov dword [ebp - 0x14], edx
mov dword [ebp - 8], 0x971
cmp dword [ebp - 8], 0x26d9
jle 0x40bc59
aad 0x20
outsb dx, byte [esi]
mov dword [ebp - 8], 0xffff
mov eax, dword [ebp - 0x34]
mov eax, dword [ebp - 0x50]
mov dword [ebp - 0x58], edi
mov eax, dword [ebp - 0x14]
mov eax, dword [ebp - 0x34]
mov eax, dword [ebp - 0x18]
mov eax, dword [ebp - 0x28]
mov eax, 0x87e3
mov dword [ebp - 0x34], eax
mov dword [ebp - 0x18], eax
mov byte [ebp - 1], 0x61
mov byte [ebp - 0x1a], 0x62
mov eax, dword [ebp - 8]
mov dword [ebp - 0x28], eax
movzx eax, byte [ebp - 1]
imul eax, dword [ebp - 0x18]
mov dword [ebp - 0x14], eax
mov byte [ebp - 3], 0x6b
mov byte [ebp - 1], 0x6c
movzx ecx, byte [ebp - 1]
imul ecx, dword [ebp - 0x14]
movzx eax, byte [ebp - 3]
imul eax, dword [ebp - 0x14]
sub ecx, eax
movzx eax, byte [ebp - 0x1a]
imul eax, dword [ebp - 0x18]
sub ecx, eax
xor eax, eax
add ecx, dword [ebp - 0x28]
cmp ecx, edi
setge al
cmp eax, 0xfffffffe
jle 0x40bcd3
mov eax, ebx
cmp dword [ebp - 0x58], ebx
je 0x40bcd5
mov eax, edi
mov dword [ebp - 0x4c], eax
mov dword [ebp - 0x74], eax
mov dword [ebp - 8], eax
mov dword [ebp - 0x28], esi
mov dword [ebp - 0x18], 0xa
mov byte [ebp - 1], 0x22
mov byte [ebp - 3], 0x23
mov eax, dword [ebp - 0x28]
mov dword [ebp - 8], eax
mov al, byte [ebp - 1]
mov byte [ebp - 1], al
mov eax, dword [ebp - 0x18]
mov dword [ebp - 0x14], eax
mov byte [ebp - 2], 9
movzx eax, byte [ebp - 2]
movzx ecx, byte [ebp - 1]
sub ecx, eax
imul ecx, dword [ebp - 0x14]
movzx eax, byte [ebp - 2]
imul eax, dword [ebp - 0x14]
add ecx, eax
mov dword [ebp - 0x20], ecx
mov byte [ebp - 0x19], 0x1f
mov byte [ebp - 0x1a], 0x20
mov al, byte [ebp - 3]
mov byte [ebp - 1], al
mov eax, dword [ebp - 0x18]
mov dword [ebp - 0x18], eax
mov byte [ebp - 9], 0x6b
movzx eax, byte [ebp - 9]
movzx ecx, byte [ebp - 1]
sub ecx, eax
mov dword [ebp - 0x28], ecx
mov eax, dword [ebp - 0x18]
mov dword [ebp - 0x14], eax
mov byte [ebp - 2], 0x4e
mov al, byte [ebp - 0x1a]
mov byte [ebp - 1], al
mov eax, dword [ebp - 0x20]
mov dword [ebp - 0x10], eax
mov byte [ebp - 0x21], 0xe9
movzx eax, byte [ebp - 0x21]
movzx esi, byte [ebp - 1]
sub esi, eax
imul esi, dword [ebp - 0x10]
movzx eax, byte [ebp - 2]
mov ecx, dword [ebp - 0x28]
sub ecx, eax
imul ecx, dword [ebp - 0x14]
movzx eax, byte [ebp - 2]
imul eax, dword [ebp - 0x14]
sub esi, ecx
sub esi, eax
movzx eax, byte [ebp - 0x19]
imul eax, dword [ebp - 0x20]
sub esi, eax
movzx eax, byte [ebp - 9]
imul eax, dword [ebp - 0x18]
sub esi, eax
movzx eax, byte [ebp - 0x21]
imul eax, dword [ebp - 0x10]
add esi, eax
add esi, dword [ebp - 8]
mov dword [ebp - 0x28], 0x8b2
cmp dword [ebp - 0x28], 0x14cd
jle 0x40be7f
int3
mov dword [ebp - 0x28], 0x11cf
cmp dword [ebp - 0x28], 0x24f7
jle 0x40bf88
test byte [eax - 0x49], dl
outsd dx, dword [esi]
and al, 0xa5
add byte [ebx], dh
mov dl, byte [eax + eax*4 - 0x39]
movsb byte es:[edi], byte [esi]
lodsb al, byte [esi]
mov word [edi - 0x1f], fs
clc
fcomi st(7)
push edi
into
and cl, byte [edi - 0x67aee2ee]
sub al, byte [ebp - 0x66f26992]
add byte [edx + 0x3e], cl
adc ch, ch
ljmp 0x6850
push eax
invalid
mov dword [ebp - 0x18], ebx
jmp 0x40bf9b
mov eax, dword [ebp - 0x18]
mov dword [ebp + eax*4 - 0x64], 0xd5e4
inc dword [ebp - 0x18]
cmp dword [ebp - 0x18], 2
jl 0x40bf8d
mov byte [ebp - 0x19], bl
cmp byte [ebp - 0x19], 0
je 0x40bfb1
push ebx
call dword [sym.imp.KERNEL32.dll_InitializeSListHead]
mov dword [ebp - 0x28], 0x190
cmp dword [ebp - 0x28], 0x1de6
jle 0x40c09c
inc esp
jb 0x40bfc9
jmp 0x40c01c
push edx
cmpsb byte [esi], byte es:[edi]
invalid
lcall 0x34d5, 0x30d6e9bd
invalid
and esp, ebp
cld
mov esp, 0xc04dc0d0
jle 0x40bff8
push ds
je 0x40c08e
das
push ebx
enter 0x294b, 0xffffffffffffff82
adc al, 0x39
ret 0x1095
imul eax, dword [0xab70218], 0xdaba4fa4
rol byte [edi - 0x342e6e0a], 0xc7
cdq
or ah, byte [edi + ecx*2 - 0x783f2546]
not byte [ecx - 0x6638342f]
mov cl, 0x88
pop ebp
out 0x80, eax
jge 0x40c089
mov byte [ebp - 0x19], bl
cmp byte [ebp - 0x19], 0
je 0x40c0b1
add byte [esp + ecx + 0x68], dh
inc edi
sbb eax, dword [eax]
add byte [ebx - 1], dl
adc eax, sym.imp.KERNEL32.dll_InitializeCriticalSectionAndSpinCount
push 0x1b47
push ebx
call dword [sym.imp.KERNEL32.dll_InitializeCriticalSectionAndSpinCount]
mov dword [ebp - 0x28], 0xbfc
cmp dword [ebp - 0x28], 0x22fa
jle 0x40c0fd
add eax, 0x76ae7902
invalid
mov eax, esi
mov dword [ebp - 0x28], 0x136d
cdq
mov ecx, 0x572
idiv ecx
cmp dword [ebp - 0x28], 0x1bd8
mov esi, eax
jle 0x40c15f
mov al, byte [0x738b40d6]
movsb byte es:[edi], byte [esi]
xor al, 0xf1
lds ecx, [ebx - 0x4b]
hlt
mov dword [ebp - 0x28], 0xb05
cmp dword [ebp - 0x28], 0x23b2
jle 0x40c21d
das
leave
jmp 0x50fbce18
fdivr dword [0xd833cbdd]
sbb dl, byte [ebx]
adc dword [eax], esi
fadd qword [edx - 0x39]
inc ebp
invalid
mov dword [ebp - 0x10], 0xffffffff
mov dword [ebp - 0x28], 0x9e2
cmp dword [ebp - 0x28], 0x13ec
jle 0x40c2e2
fnstsw word [ecx - 0x5ffef523]
or al, 0x7e
adc dword [ecx], esp
lodsd eax, dword [esi]
mov eax, dword [0x8926b9ca]
enter 0x3d7c, 0x3d
rol byte [eax - 0x21f3a32], 0xb5
xor dword [esi + 0xe], ebx
push cs
xor byte [edi], 0xdd
push ecx
mov al, bl
dec ebx
ja 0x40c211
jne 0x40c29f
dec edi
invalid
nop
jmp 0x78c1002a
and eax, 0x9b26cea
movsb byte es:[edi], byte [esi]
inc edx
cld
scasd eax, dword es:[edi]
xchg ebp, eax
in eax, dx
mov ecx, 0xeb3836e3
in al, dx
fcomp dword [edx]
jp 0x40c27f
sar byte [eax], cl
or eax, 0x582a003d
adc al, 0x7c
cdq
push cs
jg 0x40c255
sub esp, esp
insd dword es:[edi], dx
push 0x3f0eebe7
cwde
mov bh, 0xc9
int1
mov ebp, esp
sahf
push cs
sub esp, edi
add byte [ecx], 0xf4
cmp ebp, esp
mov ch, byte [eax + esi + 0x72ece7fd]
cmc
in al, 0xbb
mov dword [ebp - 0x20], edi
mov dword [ebp - 0x28], 0x91b
cmp dword [ebp - 0x28], 0x205f
jle 0x40c372
sub dword ds:[edi], 0x204a0540
dec dword [eax]
pop edi
aam 0x23
mov dl, 0x29
xchg ebx, eax
das
jne 0x40c360
fcom qword [edx + esi*4 - 0x24]
sub byte [ebx + 0x673232f1], ch
xor dh, 0xa9
push ds
cli
sub ebx, dword [edi - 0x2d183932]
and byte [ecx - 0x201a36a8], 0x92
xchg dword [ecx - 0x71], esp
cmp esi, dword [ebx - 0x6e830b86]
jb 0x40c36e
adc ah, cl
mov bl, 3
neg byte [edi - 7]
test eax, 0x546b6776
mov ebp, 0xb4834d72
insd dword es:[edi], dx
cmp cl, byte [ebp + 0x29a402f1]
adc byte [ebx - 0x211a0117], ah
xchg ebx, eax
int3
out 0xf9, eax
hlt
jle 0x460878f3
mov dword [ebp - 8], 0xffffffff
mov dword [ebp - 0x28], 0xb8e
cmp dword [ebp - 0x28], 0x1b17
jle 0x40c446
clc
add byte [eax], al
add byte [edi + 0x71], bh
jg 0x40c400
ljmp 0x3b15:0xde88346a
ficom word [0xd1b5c53b]
test dword [ebx - 0x6a], esp
push ss
mov ebp, ds
jecxz 0x40c3d0
lds esi, [ecx + 0x18cf5d2a]
ja 0x40c3d5
pop edx
sub dword [edi + 0x3b], esp
push edi
into
and dword [0x585f0ecc], ebx
out dx, al
invalid
cmpsd dword [esi], dword es:[edi]
dec eax
call 0x62716f8f
in eax, dx
xor byte [edx - 0x13], ah
jmp 0x40c38a
invalid
stosb byte es:[edi], al
adc bl, byte [ebx]
or eax, 0x4b0ff897
xor al, 0xab
cmp al, 0x5b
pop ebx
scasd eax, dword es:[edi]
mov word [edi - 0x2a], ds
sub ch, dl
aas
je 0x40c393
or ebp, dword [ecx]
jg 0x40c3de
and eax, 0xe0a281f1
dec ebx
js 0x40c3f5
push ebp
sub dh, byte [eax]
sbb cl, ah
ja 0x40c42f
jge 0x40c448
aaa
dec esp
sub ebx, dword [ebp + 0x3e]
or dword [edx + 0x7e50c561], 0xffffffee
cdq
push eax
pop dword [ebx + 0x35]
sub eax, 0xf0bc88b2
add ebx, dword [edi]
inc ebx
xor eax, 0xbc88b22d
lock add ebx, dword [edi]
sbb al, 0x8d
mov ah, byte [ebx - 0x39]
adc edx, dword [edx - 0x6d61dd27]
sub dword [ecx*2 - 0x38178277], ebp
inc ebp
fsubr st(3)
mov dword [ebp - 0x18], edi
mov dword [ebp - 0x28], 0x5eb
cmp dword [ebp - 0x28], 0x232d
jle 0x40c49f
call 0xec190a14
add eax, 0x7d810000
fsubr dword [0x7e000023]
inc esi
das
sbb al, 0xad
daa
sub dl, byte [eax + 0x37]
or edi, esp
xchg ebp, eax
add dword [eax], 0x44
sbb byte [edi], ah
in eax, dx
pop esi
add ah, 0x16
xor byte [edi - 0x7fa3f0db], 0xbc
and edx, esi
add al, 0x5c
mov dword [ebp - 0x14], 0xffffffff
mov dword [ebp - 0x28], 0x1fa
cmp dword [ebp - 0x28], 0x1408
jle 0x40c51f
inc eax
shl dword [ecx + 0x2fad7e2f], cl
in al, dx
mov ebx, 0xf6e24b79
jmp 0x2df5b055
mov dword [ebp - 0x30], 0xfffffffe
mov dword [ebp - 0x28], 0x5b7
cmp dword [ebp - 0x28], 0x2306
jle 0x40c62f
sbb dword [edx], edx
cmpsb byte [esi], byte es:[edi]
fisttp qword [ebp + ecx*4 + 0x68949b48]
salc
xchg ebx, eax
dec edi
into
dec esi
lodsd eax, dword [esi]
mov bh, 0xd3
and byte [esi + 0x435fde35], 0x62
adc ebp, edx
xchg ecx, eax
xlatb
fld qword [esi]
lodsb al, byte [esi]
cmpsd dword [esi], dword es:[edi]
mov al, 0x63
enter 0xffffffffffffdf2a, 0x1a
xchg ecx, ebx
sub al, 0xc0
inc ebx
mov byte [edi - 0x1c], dl
insb byte es:[edi], dx
mov ecx, 0x346c3cd7
push ss
in eax, 0x38
test al, 0x1a
push eax
inc esp
fidivr word [ebx]
add ebp, 0xbdd7fd40
mov byte [0x57e32d9], al
and byte [esi - 0x4485d12b], cl
lds eax, [eax - 3]
xlatb
mov ebp, 0x7e32d9a2
add eax, 0x2ed58e20
jp 0x40c544
int 0x47
pop es
sbb al, 0xfd
inc ecx
aaa
test dword [edx], edx
dec edx
add dh, byte [eax - 0x49]
pop ebp
mov ah, 0x9c
sub dh, byte [esi]
imul edi, dword [eax], 0xffffffe9
sbb ebp, dword [ebx - 0x51]
dec ebx
and al, 0xda
dec edx
bswap esp
mov al, byte [0xf68a6b5e]
dec edi
and byte [edi], al
jle 0x40c5c4
les ecx, [edi + 0x73]
mov ebp, 0x3239a63d
sub dword [ecx - 0x3f1dcf38], esp
loopne 0x40c579
mov ch, 0x7b
fsub dword [ebx + edx*4 - 0x2d]
inc eax
sub ch, byte [ebx]
retf 0xa5fa
mov dword [ebp - 0x18], ebx
jmp 0x40c642
mov eax, dword [ebp - 0x18]
mov dword [ebp + eax*4 - 0x48], 0xdacd7d39
inc dword [ebp - 0x18]
cmp dword [ebp - 0x18], 3
jl 0x40c634
mov eax, dword [ebp - 0x10]
mov eax, dword [ebp - 0x10]
mov eax, dword [ebp - 0x44]
mov eax, dword [ebp - 0x44]
mov dword [ebp - 0x30], 0x7779a7b4
mov dword [ebp - 0x14], edi
mov byte [ebp - 0x19], 0x48
mov byte [ebp - 1], 0x49
mov al, byte [ebp - 0x19]
mov byte [ebp - 0x19], al
mov eax, dword [ebp - 0x14]
mov dword [ebp - 0x18], eax
mov byte [ebp - 0x21], 0xf9
mov al, byte [ebp - 1]
mov byte [ebp - 3], al
mov eax, dword [ebp - 0x14]
mov dword [ebp - 0x14], eax
mov byte [ebp - 2], 0xbe
movzx eax, byte [ebp - 0x21]
movzx ecx, byte [ebp - 0x19]
sub ecx, eax
mov dword [ebp - 0x3c], ecx
mov eax, dword [ebp - 0x18]
mov dword [ebp - 8], eax
mov byte [ebp - 1], 7
mov eax, dword [ebp - 0x18]
mov dword [ebp - 0x28], eax
mov al, byte [ebp - 0x21]
mov byte [ebp - 0x1a], al
mov byte [ebp - 9], 0xbd
mov al, byte [ebp - 3]
mov byte [ebp - 4], al
mov al, byte [ebp - 2]
mov byte [ebp - 0x21], al
mov byte [ebp - 0x29], 0x50
mov byte [ebp - 0x19], 0x51
mov eax, dword [ebp - 0x14]
mov dword [ebp - 0x18], eax
mov al, byte [ebp - 2]
mov byte [ebp - 3], al
mov byte [ebp - 2], 0xe4
mov eax, dword [ebp - 0x10]
mov eax, dword [ebp - 0x10]
mov eax, dword [ebp - 0x10]
mov dword [ebp - 0x20], eax
movzx ecx, byte [ebp - 0x19]
movzx eax, byte [ebp - 0x21]
movzx edx, byte [ebp - 0x29]
imul ecx, eax
movzx eax, byte [ebp - 0x21]
imul edx, eax
movzx eax, byte [ebp - 4]
sub edx, ecx
add edx, eax
imul edx, dword [ebp - 0x14]
movzx eax, byte [ebp - 9]
mov ecx, dword [ebp - 0x28]
sub ecx, eax
movzx eax, byte [ebp - 0x1a]
imul ecx, eax
movzx eax, byte [ebp - 2]
sub edx, ecx
mov ecx, dword [ebp - 0x18]
sub ecx, eax
movzx eax, byte [ebp - 3]
imul ecx, eax
movzx eax, byte [ebp - 1]
add edx, ecx
mov ecx, dword [ebp - 0x3c]
sub ecx, eax
imul ecx, dword [ebp - 8]
sub edx, ecx
movzx ecx, byte [ebp - 9]
movzx eax, byte [ebp - 0x1a]
imul ecx, eax
sub edx, ecx
movzx ecx, byte [ebp - 2]
movzx eax, byte [ebp - 3]
imul ecx, eax
movzx eax, byte [ebp - 1]
add edx, ecx
imul eax, dword [ebp - 8]
sub edx, eax
add edx, dword [ebp - 0x30]
mov dword [ebp - 8], edx
xor edx, edx
mov eax, dword [ebp - 8]
inc eax
mov dword [ebp - 0x18], eax
mov ecx, dword [ebp - 0x18]
mov eax, dword [ebp - 0x10]
cmp ecx, eax
mov eax, dword [ebp - 0x20]
setne dl
xor ecx, ecx
cmp eax, edx
setle cl
cmp dword [ebp - 0x10], ecx
jne 0x40c786
sar dword [ecx], 0x4d
invalid
mov edx, ebx
cmp dword [ebp - 0x44], ebx
je 0x40c788
mov edx, edi
mov eax, dword [ebp - 0x44]
xor ecx, ecx
cmp edx, eax
setne cl
mov dword [ebp - 0x14], ecx
cmp dword [ebp - 0x14], ebx
jne 0x40c7a1
mov ecx, ebx
cmp dword [ebp - 0x44], ebx
je 0x40c7a3
mov ecx, edi
xor eax, eax
cmp ecx, edi
setne al
mov dword [ebp - 0x30], eax
mov dword [ebp - 0x10], ebx
jmp 0x40c9b7
mov dword [ebp - 0x30], 0xcb2
cmp dword [ebp - 0x30], 0x26c8
jle 0x40c810
sbb byte [edi - 0x48], bh
and eax, 0xaa25ff6
dec esp
dec ebx
aad 0x44
cli
dec ecx
mov esp, ebx
je 0x40c7a3
jg 0x40c7f7
lea edi, [ebp - 1]
cmp eax, 0xe9cdce83
mov edi, 0xcdababc0
salc
ret 0x8536
jne 0x40c779
cmp ebp, eax
push ds
sub eax, 0x143cd288
out 0xb8, al
mov dword [ebp - 0x30], 0x87b3
mov dword [ebp - 0x30], 0x124f
cmp dword [ebp - 0x30], 0x1f97
jle 0x40c902
movsb byte es:[edi], byte [esi]
popfd
in al, dx
push ecx
xchg ebp, eax
push ecx
invalid
mov eax, dword [ebp - 0x20]
mov dword [ebp - 0x30], eax
mov eax, dword [ebp - 0x14]
mov dword [ebp - 8], eax
mov byte [ebp - 0x29], 0x76
mov byte [ebp - 4], 0x77
mov al, byte [ebp - 4]
mov byte [ebp - 4], al
mov eax, dword [ebp - 8]
mov dword [ebp - 0x14], eax
mov byte [ebp - 1], 0x34
movzx eax, byte [ebp - 1]
movzx ecx, byte [ebp - 4]
sub ecx, eax
imul ecx, dword [ebp - 0x14]
movzx edx, byte [ebp - 0x29]
imul edx, dword [ebp - 8]
movzx eax, byte [ebp - 1]
imul eax, dword [ebp - 0x14]
sub edx, ecx
sub edx, eax
add edx, dword [ebp - 0x30]
mov dword [ebp - 0x14], edx
mov dword [ebp - 0x18], ebx
jmp 0x40c9ae
mov dword [ebp - 0x30], 0x9b5
cmp dword [ebp - 0x30], 0x1f2f
jle 0x40c9a4
inc edx
lcall 0xd48b, 0x88d1ca1d
inc ebp
inc ebx
add al, 0x79
stosd dword es:[edi], eax
pop es
xchg esp, eax
inc edi
push ebp
cmp byte [eax + ecx + 0x22757fd5], al
leave
jne 0x40c9af
mov dword [0x33c07ff2], eax
inc esp
push 0x9cfb24e4
mov cl, 0x5d
scasd eax, dword es:[edi]
dec edx
fisubr word [esi]
in al, dx
movsd dword es:[edi], dword cs:[esi]
sti
sub dl, byte [ebp - 0x53]
dec ebx
xor byte [0xf2473ef], 0x8b
mov al, 0xd5
repne insb byte es:[edi], dx
clc
xor eax, 0xf2473ef
mov esi, dword [eax - 0x7930d2b]
mov dword [ebp - 0x30], 0x85fafe44
inc dword [ebp - 0x18]
cmp dword [ebp - 0x18], 2
jle 0x40c953
jge 0x40c999
add bh, byte [esi - 0x61]
inc dword [ebp - 0x10]
cmp dword [ebp - 0x10], 7
je 0x40c7b5
mov dword [ebp - 0x30], 0xe47
cmp dword [ebp - 0x30], 0x1b84
jle 0x40ca89
call 0x27faae18
aaa
sub eax, 0x6738db5e
and eax, 0x8b870a9c
and al, byte [ebx]
idiv byte [ebx + 0x4a]
stc
xchg ecx, eax
sub al, 0x33
mov byte [0x7797d9f6], al
xor byte [0x88b6790a], bl
test ebx, 0xb39f64e8
imul eax, dword [eax], 0x1d247a6c
out 0x6b, al
cmpsd dword [esi], dword es:[edi]
ficomp dword [ebp + 0x61]
test eax, 0xdd7ea9e
adc eax, 0xa530d52a
push edi
and ebx, esi
invalid
mov dword [ebp - 0x30], esi
mov dword [ebp - 8], 0xa
mov byte [ebp - 4], 0x5a
mov byte [ebp - 0x29], 0x5b
movzx eax, byte [ebp - 4]
imul eax, dword [ebp - 8]
add eax, dword [ebp - 0x30]
mov dword [ebp - 0x30], eax
mov al, byte [ebp - 0x29]
mov byte [ebp - 4], al
mov eax, dword [ebp - 8]
mov dword [ebp - 8], eax
mov byte [ebp - 1], 0xdb
movzx eax, byte [ebp - 1]
movzx ecx, byte [ebp - 4]
sub ecx, eax
imul ecx, dword [ebp - 8]
movzx eax, byte [ebp - 1]
imul eax, dword [ebp - 8]
add ecx, eax
mov dword [ebp - 8], ecx
mov byte [ebp - 0x29], 0xa0
mov byte [ebp - 4], 0xa1
mov al, byte [ebp - 4]
mov byte [ebp - 4], al
mov eax, dword [ebp - 8]
mov dword [ebp - 0x14], eax
mov byte [ebp - 1], 0xe2
movzx eax, byte [ebp - 1]
movzx ecx, byte [ebp - 4]
sub ecx, eax
imul ecx, dword [ebp - 0x14]
movzx esi, byte [ebp - 0x29]
imul esi, dword [ebp - 8]
movzx eax, byte [ebp - 1]
imul eax, dword [ebp - 0x14]
sub esi, ecx
sub esi, eax
add esi, dword [ebp - 0x30]
mov dword [ebp - 0x14], ebx
mov dword [ebp - 0x30], 0x10e7
cmp dword [ebp - 0x30], 0x1615
jle 0x40cb79
out dx, al
dec edi
add dh, cl
pop esp
int1
ret 0x7eef
mov dword [ebp - 0x18], ebx
jmp 0x40cb8c
mov eax, dword [ebp - 0x18]
mov dword [ebp + eax*4 - 0x38], 0x3638
inc dword [ebp - 0x18]
cmp dword [ebp - 0x18], edi
jl 0x40cb7e
mov dword [ebp - 0x14], 0xffffffe9
jmp 0x40cefc
mov dword [ebp - 0x20], edi
mov dword [ebp - 0x30], 0x4a5
cmp dword [ebp - 0x30], 0x1412
jle 0x40cc5e
sub cl, byte [ecx + 0x4d]
jl 0x40cbce
invalid
lea eax, [ebx + 0x16]
mov ch, 0xda
jl 0x40cc2b
or byte [ecx + ebp*8 + 0x3bef3a75], 0xcf
mov dword [esp + ebx], edi
out 0xe5, eax
invalid
invalid
mov dword [ebp - 0x10], 0x1a9565e0
mov dword [ebp - 0x20], ebx
jmp 0x40cd6c
mov dword [ebp - 0x30], 0x646
cmp dword [ebp - 0x30], 0x1eeb
jle 0x40cd62
sub dl, bl
hlt
mov dword [ebp - 0x10], 0xffffffff
inc dword [ebp - 0x20]
cmp dword [ebp - 0x20], ebx
jle 0x40cc6d
invalid
mov dword [ebp - 0x20], ebx
jmp 0x40ceef
cmp dword [ebp - 0x20], ebx
jne 0x40cef9
mov dword [ebp - 0x10], ebx
cmp dword [ebp - 0x10], ebx
jl 0x40ceec
mov dword [ebp - 0x18], 0xa7084bc9
mov dword [ebp - 0x30], 0x9bb
cmp dword [ebp - 0x30], 0x1627
sar byte [ebx - 0x7efffff7], 1
jge 0x40cd73
daa
push ss
add byte [eax], al
jle 0x40cea7
sbb eax, 0xfb368adb
inc esi
or al, 0xcd
jg 0x40cd9b
add eax, 0xdeff12be
sbb esp, dword [0xd8f57a8f]
lahf
jo 0x40cdf7
stosd dword es:[edi], eax
cmp byte [ebx], 0x23
sbb byte [eax], al
push ebp
and dh, byte [ebx - 0x15]
outsb dx, byte cs:[esi]
int3
mov al, byte [0xa72f010d]
lock sub dword [ebx], ebp
or eax, 0x5adb68e
dec edx
outsb dx, byte [esi]
xchg esi, eax
mov byte [esi + edi*8], al
add dh, al
std
inc esi
ljmp 0x40ac
mov dword [ebp - 0x18], ebx
cmp dword [ebp - 0x18], ebx
jl 0x40cee3
mov byte [ebp - 4], bl
cmp byte [ebp - 4], 0
je 0x40ced0
push ebx
push 0x2558
push 0x8ff
push 0x225a
push ebx
push ebx
call dword [sym.imp.KERNEL32.dll_CreateFileMappingA]
mov eax, dword [ebp - 0x18]
mov ecx, dword [ebp + eax*4 - 0x38]
mov eax, dword [ebp - 0x18]
mov dword [ebp + eax*4 - 0x38], ecx
dec dword [ebp - 0x18]
jns 0x40ceaf
dec dword [ebp - 0x10]
jns 0x40cd92
dec dword [ebp - 0x20]
cmp dword [ebp - 0x20], 0xffffffff
jge 0x40cd7d
inc dword [ebp - 0x14]
cmp dword [ebp - 0x14], 0xffffffea
je 0x40cb9d
mov dword [ebp - 0x30], 0x14f
cmp dword [ebp - 0x30], 0x1af5
jle 0x40cf89
add byte [ecx + 0x642de652], cl
pop es
stosd dword es:[edi], eax
jmp 0x40cf8d
pop edi
mov eax, esi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret