Function at 0x504461
Capabilities:
Parse pe header

Disassembly:
push esi
push esi
add esp, 4
xor esi, 0x55f8
pop esi
push ebx
xor ebx, 0x212e
pop ebx
push ecx
push edi
add esp, 4
add ecx, 0x3520
xor ecx, 0x9134
pop ecx
push eax
push ecx
add esp, 4
xor eax, 0x112c8
pop eax
mov edx, dword [ebp - 0x30]
add edx, 0x138
imul eax, dword [ebp - 0x2c], 0x138
add eax, 0x44f3644b
imul ecx, dword [ebp - 0x2c], 0x138
sub eax, ecx
xor edx, eax
imul edx, dword [ebp - 0x2c]
mov dword [ebp - 0x1c80], edx
push edi
push esi
add esp, 4
add edi, 0xea36
pop edi
push eax
or eax, 0x5bfd
pop eax
push ebx
push edx
add esp, 4
jmp 0x5042cb
and ebx, 0xe11f
add ebx, 0x39f7
and ebx, 0x9918
pop ebx
mov edx, dword [ebp - 0x1c80]
add edx, 1
mov dword [ebp - 0x1494], edx
push ebx
add ebx, 0xe08
and ebx, 0xe600
add ebx, 0x139e3
jmp 0x504307
pop ebx
push ebx
or ebx, 0x20e1
or ebx, 0x776e
jmp 0x50431e
pop ebx
push edi
push ecx
add esp, 4
jmp 0x50432c
and edi, 0x1601e
xor edi, 0x11a42
and edi, 0xc77f
pop edi
push ecx
push ebx
add esp, 4
add ecx, 0x231e
or ecx, 0x54d3
pop ecx
imul eax, dword [ebp - 0x2c], 0x138
add eax, 0x44f3644b
imul ecx, dword [ebp - 0x2c], 0x138
sub eax, ecx
xor eax, dword [ebp - 0x1494]
imul eax, dword [ebp - 0x2c]
imul edx, dword [ebp - 0x2c], 0x138
sub eax, edx
mov dword [ebp - 0x30], eax
mov eax, dword [ebp - 0x1494]
imul eax, dword [ebp - 0x2c]
mov dword [ebp - 0x1d24], eax
mov dword [ebp - 0x1520], 1
push ecx
push eax
add esp, 4
add ecx, 0x2895
and ecx, 0xc2f
xor ecx, 0x74fd
pop ecx
push edi
push eax
add esp, 4
or edi, 0x15c6f
or edi, 0x3b07
pop edi
push ebx
sub ebx, 0xc6f0
pop ebx
imul ecx, dword [ebp - 0x1520], 0x138
add ecx, 0x44f3644b
imul edx, dword [ebp - 0x1520], 0x138
sub ecx, edx
xor ecx, dword [ebp - 0x1d24]
imul ecx, dword [ebp - 0x1520]
imul eax, dword [ebp - 0x1520], 0x138
sub ecx, eax
mov dword [ebp - 0x1524], ecx
mov ecx, dword [ebp - 0xfb0]
mov edx, dword [ebp - 0xfac]
mov dword [ebp - 0x152c], ecx
mov dword [ebp - 0x1528], edx
push eax
add eax, 0x5a95
xor eax, 0xf1e8
pop eax
push ecx
push ebx
add esp, 4
sub ecx, 0xfb75
xor ecx, 0x4d6e
xor ecx, 0x12b8b
pop ecx
push edx
push edi
add esp, 4
add edx, 0x624a
pop edx
push ebx
push edx
add esp, 4
call 0x504461
add byte [esp + ecx*2 + 0x3a], cl
dec esp
dec esi
inc eax
dec esp
inc ebx
inc esp
add esp, 4
and ebx, 0x5192
pop ebx
push ebx
and ebx, 0x2ec6
or ebx, 0x163cf
xor ebx, 0x8875
pop ebx
mov eax, dword [ebp - 0x30]
add eax, 0x138
imul ecx, dword [ebp - 0x2c], 0x138
add ecx, 0x44f3644b
imul edx, dword [ebp - 0x2c], 0x138
sub ecx, edx
xor eax, ecx
imul eax, dword [ebp - 0x2c]
mov dword [ebp - 0x1d2c], eax
push edx
push edx
add esp, 4
sub edx, 0x4773
pop edx
push edi
call 0x5044c2
add byte [eax + 0x3f], cl
cmp al, byte [esi + 0x3a]
inc edx
add esp, 4
jmp 0x5044ce
jmp 0x5044d4
sub edi, 0x6ba6
pop edi
mov eax, dword [ebp - 0x152c]
add eax, 0x138
imul ecx, dword [ebp - 0x1528], 0x138
add ecx, 0x44f3644b
imul edx, dword [ebp - 0x1528], 0x138
sub ecx, edx
xor eax, ecx
imul eax, dword [ebp - 0x1528]
mov dword [ebp - 0x1d28], eax
mov eax, dword [ebp - 0x1d28]
mov dword [ebp - 0x1d30], eax
mov ecx, dword [ebp - 0x1d2c]
cmp ecx, dword [ebp - 0x1d30]
jae 0x504537
mov dword [ebp - 0x149c], 1
jmp 0x504541
mov dword [ebp - 0x149c], 0
mov dl, byte [ebp - 0x149c]
mov byte [ebp - 0x382], dl
movzx eax, byte [ebp - 0x382]
test eax, eax
je 0x5075b4
push esi
push edi
add esp, 4
xor esi, 0x16cd
or esi, 0xe13
pop esi
push eax
push esi
add esp, 4
sub eax, 0xb14f
or eax, 0x95d2
pop eax
push edx
or edx, 0xfc03
sub edx, 0x1559e
pop edx
push edx
push edi
add esp, 4
sub edx, 0xa543
xor edx, 0x185ed
pop edx
push ecx
push esi
add esp, 4
or ecx, 0x138b6
or ecx, 0x17854
pop ecx
push ebx
sub ebx, 0x3fba
sub ebx, 0x142c1
pop ebx
mov ecx, dword [ebp - 0x30]
add ecx, 0x138
imul edx, dword [ebp - 0x2c], 0x138
add edx, 0x44f3644b
imul eax, dword [ebp - 0x2c], 0x138
sub edx, eax
xor ecx, edx
imul ecx, dword [ebp - 0x2c]
mov dword [ebp - 0x1d34], ecx
mov ecx, dword [ebp - 0x1d34]
mov dword [ebp - 0x1d38], ecx
cmp dword [ebp - 0x1d38], 0x63c1
jne 0x50473b
push edi
or edi, 0xa97c
xor edi, 0x4f34
xor edi, 0x28af
and edi, 0x2506
pop edi
push edx
sub edx, 0x75a8
call 0x504635
add byte [ecx + 0x3b], cl
cmp al, 0x38
inc edx
xor eax, dword [ebx - 0x74a5fb3c]
push ebp
in al, dx
add edx, 0x138
imul eax, dword [ebp - 0x10], 0x138
add eax, 0x44f3644b
imul ecx, dword [ebp - 0x10], 0x138
sub eax, ecx
xor edx, eax
imul edx, dword [ebp - 0x10]
mov dword [ebp - 0x1d3c], edx
mov edx, dword [ebp - 0x1d3c]
mov dword [ebp - 0x1d40], edx
mov eax, dword [ebp - 0x1d40]
sub eax, 0x898
mov dword [ebp - 0x1d44], eax
mov dword [ebp - 0xfb4], 1
push esi
push ebx
add esp, 4
add esi, 0x8468
and esi, 0x1835b
jmp 0x5046a3
add esi, 0x4c29
pop esi
push ecx
push eax
add esp, 4
and ecx, 0x3290
add ecx, 0x1757f
pop ecx
imul ecx, dword [ebp - 0xfb4], 0x138
add ecx, 0x44f3644b
imul edx, dword [ebp - 0xfb4], 0x138
sub ecx, edx
xor ecx, dword [ebp - 0x1d44]
imul ecx, dword [ebp - 0xfb4]
imul eax, dword [ebp - 0xfb4], 0x138
sub ecx, eax
mov dword [ebp - 0xfb8], ecx
mov ecx, dword [ebp - 0xfb8]
mov edx, dword [ebp - 0xfb4]
mov dword [ebp - 0x14], ecx
mov dword [ebp - 0x10], edx
push edx
push edi
add esp, 4
xor edx, 0x926f
xor edx, 0x9270
xor edx, 0x9723
pop edx
push esi
push edx
add esp, 4
or esi, 0xc474
jmp 0x504733
jmp 0x50473a
pop esi
push edi
push edi
add esp, 4
call 0x50474e
add byte [ebp + 0x42], cl
dec esi
push eax
cmp edi, dword [eax]
cmp bh, byte [esi]
add esp, 4
pop edi
push edx
jmp 0x50475a
add edx, 0x410
jmp 0x504766
or edx, 0x103b8
pop edx
mov eax, dword [ebp - 0x14]
add eax, 0x138
imul ecx, dword [ebp - 0x10], 0x138
add ecx, 0x44f3644b
imul edx, dword [ebp - 0x10], 0x138
sub ecx, edx
xor eax, ecx
imul eax, dword [ebp - 0x10]
mov dword [ebp - 0x1d48], eax
mov eax, dword [ebp - 0x1d48]
mov dword [ebp - 0x1db8], eax
lea ecx, [ebp - 0x928]
mov dword [ebp - 0x3bc], ecx
mov edx, dword [ebp - 0x3bc]
mov dword [edx + 4], 1
push ebx
and ebx, 0x9d2c
or ebx, 0x15df7
pop ebx
push edx
sub edx, 0x16f03
jmp 0x5047d8
call 0x5047e4
add byte [edx], bh
cmp eax, 0x5036464c
add esp, 4
sub edx, 0xa9c4
pop edx
mov eax, dword [ebp - 0x3bc]
imul ecx, dword [eax + 4], 0x138
add ecx, 0x44f3644b
mov edx, dword [ebp - 0x3bc]
imul eax, dword [edx + 4], 0x138
sub ecx, eax
xor ecx, 0x23
mov edx, dword [ebp - 0x3bc]
imul ecx, dword [edx + 4]
mov eax, dword [ebp - 0x3bc]
imul edx, dword [eax + 4], 0x138
sub ecx, edx
mov eax, dword [ebp - 0x3bc]
mov dword [eax], ecx
mov ecx, dword [ebp - 0x3bc]
mov dword [ebp - 0x1f58], ecx
push ebx
push edx
add esp, 4
or ebx, 0x166ec
pop ebx
push edx
push ecx
add esp, 4
add edx, 0xd5e0
sub edx, 0x13c82
add edx, 0x155ef
pop edx
push ecx
sub ecx, 0x15129
sub ecx, 0x17278
pop ecx
mov dword [ebp - 0x14a4], 1
push ebx
push esi
add esp, 4
or ebx, 0x281c
and ebx, 0x156af
jmp 0x504894
pop ebx
push ecx
xor ecx, 0x3227
jmp 0x5048a1
sub ecx, 0x5084
jmp 0x5048ad
pop ecx
mov dword [ebp - 0x1f5c], 0x38
mov dword [ebp - 0x1f60], 0xe6
mov dword [ebp - 0x1f64], 0x6e
mov dword [ebp - 0x1f68], 0x6e
mov dword [ebp - 0x1f6c], 0x78
mov dword [ebp - 0x1530], 1
push esi
push ecx
add esp, 4
add esi, 0x280d
pop esi
push ecx
or ecx, 0x11f30
pop ecx
push edi
push eax
add esp, 4
and edi, 0x43b1
and edi, 0x11c11
sub edi, 0x891b
and edi, 0xee84
pop edi
imul edx, dword [ebp - 0x1530], 0x138
add edx, 0x44f3644b
imul eax, dword [ebp - 0x1530], 0x138
sub edx, eax
xor edx, 0xe6
imul edx, dword [ebp - 0x1530]
imul ecx, dword [ebp - 0x1530], 0x138
sub edx, ecx
mov dword [ebp - 0x1534], edx
push esi
or esi, 0x3dd6
sub esi, 0x1c30
pop esi
push eax
xor eax, 0x141d
add eax, 0xc565
pop eax
push ebx
sub ebx, 0x7b2e
xor ebx, 0x16e45
pop ebx
push ebx
sub ebx, 0xfb90
pop ebx
push ecx
push edx
add esp, 4
add ecx, 0x57e6
and ecx, 0x12b02
pop ecx
push eax
push eax
add esp, 4
and eax, 0x4ade
jmp 0x5049ae
xor eax, 0xa677
add eax, 0x129df
pop eax
mov edx, dword [ebp - 0x928]
add edx, 0x138
imul eax, dword [ebp - 0x924], 0x138
add eax, 0x44f3644b
imul ecx, dword [ebp - 0x924], 0x138
sub eax, ecx
xor edx, eax
imul edx, dword [ebp - 0x924]
mov dword [ebp - 0x1d4c], edx
mov edx, dword [ebp - 0x1d4c]
mov dword [ebp - 0x1d50], edx
mov eax, dword [ebp - 0x1d50]
sub eax, 0x6e
mov dword [ebp - 0x1d54], eax
mov dword [ebp - 0xa08], 1
push edx
call 0x504a25
add byte [eax + 0x3e], al
dec esi
cmp byte [esi], bh
aaa
xor ecx, dword [esi - 0x7d]
les eax, [edx + ebx*2]
push esi
push eax
add esp, 4
and esi, 0x1895
or esi, 0x13bfe
jmp 0x504a3f
pop esi
push ebx
or ebx, 0x1a44
pop ebx
imul ecx, dword [ebp - 0xa08], 0x138
add ecx, 0x44f3644b
imul edx, dword [ebp - 0xa08], 0x138
sub ecx, edx
xor ecx, dword [ebp - 0x1d54]
imul ecx, dword [ebp - 0xa08]
imul eax, dword [ebp - 0xa08], 0x138
sub ecx, eax
mov dword [ebp - 0xa0c], ecx
push ebx
push edx
add esp, 4
sub ebx, 0x14fa2
sub ebx, 0xf720
sub ebx, 0xee6c
pop ebx
push edi
push ecx
add esp, 4
sub edi, 0x10a6c
jmp 0x504aac
jmp 0x504ab4
pop edi
mov ecx, dword [ebp - 0x928]
add ecx, 0x138
imul edx, dword [ebp - 0x924], 0x138
add edx, 0x44f3644b
imul eax, dword [ebp - 0x924], 0x138
sub edx, eax
xor ecx, edx
imul ecx, dword [ebp - 0x924]
mov dword [ebp - 0x1d58], ecx
mov ecx, dword [ebp - 0x1d58]
mov dword [ebp - 0x1d5c], ecx
mov edx, dword [ebp - 0x1d5c]
add edx, 0x38
mov dword [ebp - 0x1d60], edx
mov dword [ebp - 0xa10], 1
push edi
call 0x504b1f
add byte [edi + 0x3a], cl
dec edx
cmp al, 0x41
cmp al, byte [edx - 0x7d]
les eax, [ecx + eax*4]
out dx, eax
mov ebx, 0x5f000082
push esi
push edx
add esp, 4
or esi, 0xf9a0
pop esi
push eax
or eax, 0x6e85
xor eax, 0xd196
pop eax
imul eax, dword [ebp - 0xa10], 0x138
add eax, 0x44f3644b
imul ecx, dword [ebp - 0xa10], 0x138
sub eax, ecx
xor eax, dword [ebp - 0x1d60]
imul eax, dword [ebp - 0xa10]
imul edx, dword [ebp - 0xa10], 0x138
sub eax, edx
mov dword [ebp - 0xa14], eax
push edx
push ecx
add esp, 4
and edx, 0xda66
and edx, 0x13d26
sub edx, 0x550f
pop edx
push esi
xor esi, 0x140da
or esi, 0x13c90
and esi, 0x8f87
add esi, 0x17e2c
pop esi
push edx
push edx
add esp, 4
call 0x504bc1
add byte [edi + 0x46], cl
inc edi
dec ecx
inc ebx
cmp dword [ebx + eax*4 - 0x3c], ecx
add al, 0xeb
add al, 0x46
dec edx
inc eax
dec ebp
call 0x504bd7
add byte [ebp + 0x4c], al
inc ebx
cmp al, 0x39
dec edx
dec ecx
add esp, 4
and edx, 0x34c1
pop edx
mov dword [ebp - 0x2d0], 1
push ecx
add ecx, 0x562d
and ecx, 0x1167a
jmp 0x504bff
pop ecx
push esi
call 0x504c10
add byte [edx + 0x3c], al
cmp al, 0x35
xor eax, 0x394f4b4b
add esp, 4
jmp 0x504c1c
pop esi
imul eax, dword [ebp - 0x2d0], 0x138
add eax, 0x44f3644b
imul ecx, dword [ebp - 0x2d0], 0x138
sub eax, ecx
xor eax, 2
imul eax, dword [ebp - 0x2d0]
imul edx, dword [ebp - 0x2d0], 0x138
sub eax, edx
mov dword [ebp - 0x2d4], eax
push edx
push esi
add esp, 4
jmp 0x504c61
jmp 0x504c67
or edx, 0x172e6
pop edx
push edx
push esi
add esp, 4
call 0x504c82
add byte [esi + 0x3a], al
cmp eax, 0x4a3f493b
cmp eax, 0x4c48349
pop edx
mov eax, dword [ebp - 0x928]
mov ecx, dword [ebp - 0x924]
mov dword [ebp - 0x254], eax
mov dword [ebp - 0x250], ecx
jmp 0x504e74
push ebx
push eax
add esp, 4
sub ebx, 0x141b8
pop ebx
push ebx
push ebx
add esp, 4
and ebx, 0x130c4
pop ebx
push ebx
sub ebx, 0x176a2
pop ebx
push edi
call 0x504cd1
add byte [esi + 0x4d], cl
cmp byte [ebp + esi + 0x4c], cl
aaa
add esp, 4
pop edi
mov edx, dword [ebp - 0x254]
add edx, 0x138
imul eax, dword [ebp - 0x250], 0x138
add eax, 0x44f3644b
imul ecx, dword [ebp - 0x250], 0x138
sub eax, ecx
xor edx, eax
imul edx, dword [ebp - 0x250]
mov dword [ebp - 0x1d68], edx
push ebx
and ebx, 0x6ee4
or ebx, 0x5769
xor ebx, 0x51fa
pop ebx
push ecx
push edi
add esp, 4
sub ecx, 0x3100
and ecx, 0x92b
or ecx, 0x14300
add ecx, 0x9f5
pop ecx
mov edx, dword [ebp - 0x1d68]
sub edx, 1
mov dword [ebp - 0x14a0], edx
push edx
push edx
add esp, 4
xor edx, 0x43f
or edx, 0x8644
pop edx
push eax
push esi
add esp, 4
jmp 0x504d68
or eax, 0xb3e
jmp 0x504d77
or eax, 0x41d8
pop eax
push edx
push ecx
add esp, 4
add edx, 0x8370
pop edx
push edi
push eax
add esp, 4
add edi, 0x4e4f
pop edi
push esi
xor esi, 0x13593
sub esi, 0xbb60
and esi, 0x755c
and esi, 0x7de6
pop esi
imul eax, dword [ebp - 0x250], 0x138
add eax, 0x44f3644b
imul ecx, dword [ebp - 0x250], 0x138
sub eax, ecx
xor eax, dword [ebp - 0x14a0]
imul eax, dword [ebp - 0x250]
imul edx, dword [ebp - 0x250], 0x138
sub eax, edx
mov dword [ebp - 0x254], eax
mov eax, dword [ebp - 0x14a0]
imul eax, dword [ebp - 0x250]
mov dword [ebp - 0x1d6c], eax
mov dword [ebp - 0x1538], 1
push ebx
push edx
add esp, 4
jmp 0x504e14
pop ebx
push ebx
call 0x504e23
add byte [esi], dh
dec edi
dec edx
xor eax, 0x833a3240
les eax, [ecx + eax*4]
add eax, 0x810000dc
retf
push ebx
push eax
add esp, 4
xor ebx, 0x1520a
add ebx, 0x8b8f
pop ebx
push edi
push ecx
add esp, 4
sub edi, 0xb554
add edi, 0xeb72
pop edi
push eax
sub eax, 0x138c5
or eax, 0x297
pop eax
mov ecx, dword [ebp - 0x254]
add ecx, 0x138
imul edx, dword [ebp - 0x250], 0x138
add edx, 0x44f3644b
imul eax, dword [ebp - 0x250], 0x138
sub edx, eax
xor ecx, edx
imul ecx, dword [ebp - 0x250]
mov dword [ebp - 0x1d70], ecx
mov ecx, dword [ebp - 0x1d70]
mov dword [ebp - 0x1d74], ecx
cmp dword [ebp - 0x1d74], 0
jbe 0x5053ea
push ecx
call 0x504f04
add byte [esi + 0x3d], al
inc ebx
xor al, 0x39
xor al, 0x34
add esp, 4
call 0x504f13
add byte [edi + 0x4c], cl
aaa
dec edx
inc esi
add esp, 4
call 0x504f24
add byte [edi + 0x4c], al
dec ebp
aaa
dec ecx
dec ecx
cmp dword [eax - 0x7d], edx
les eax, [ecx + ebx*2]
mov edx, dword [ebp - 0x254]
add edx, 0x138
imul eax, dword [ebp - 0x250], 0x138
add eax, 0x44f3644b
imul ecx, dword [ebp - 0x250], 0x138
sub eax, ecx
xor edx, eax
imul edx, dword [ebp - 0x250]
mov dword [ebp - 0x1d78], edx
mov edx, dword [ebp - 0x1d78]
mov dword [ebp - 0x1d84], edx
push esi
call 0x504f78
add byte [edi + 0x40], al
dec edx
inc esp
inc eax
xor al, 0x41
add esp, 4
and esi, 0xbb5c
sub esi, 0x136d6
add esi, 0x36eb
pop esi
push ecx
add ecx, 0x5658
xor ecx, 0xb899
pop ecx
mov eax, dword [ebp - 0xa0c]
add eax, 0x138
imul ecx, dword [ebp - 0xa08], 0x138
add ecx, 0x44f3644b
imul edx, dword [ebp - 0xa08], 0x138
sub ecx, edx
xor eax, ecx
imul eax, dword [ebp - 0xa08]
mov dword [ebp - 0x1d7c], eax
mov eax, dword [ebp - 0x1d7c]
mov dword [ebp - 0x1d80], eax
mov ecx, dword [ebp - 0x14a4]
imul ecx, dword [ebp - 0x1d80]
cmp dword [ebp - 0x1d84], ecx
jne 0x50516d
push eax
push edi
add esp, 4
add eax, 0x11a3a
call 0x505010
add byte [ecx + 0x34], al
xor eax, dword [eax + 0x45]
cmp byte [edx + ecx*2], bh
add esp, 4
call 0x50501f
add byte [ebx + 0x37], al
aaa
dec ebx
xor al, byte [ebp - 0x7d]
les eax, [ecx + eax*4]
rcl byte [edi], 0x74
add dword [eax], eax
pop eax
push ecx
jmp 0x505030
or ecx, 0x1018a
pop ecx
push edi
add edi, 0x10bda
add edi, 0x15eaf
and edi, 0x139d
call 0x505057
add byte [edi], bh
dec ecx
xor eax, 0x4d48474b
add esp, 4
pop edi
mov edx, dword [ebp - 0x2d4]
add edx, 0x138
imul eax, dword [ebp - 0x2d0], 0x138
add eax, 0x44f3644b
imul ecx, dword [ebp - 0x2d0], 0x138
sub eax, ecx
xor edx, eax
imul edx, dword [ebp - 0x2d0]
mov dword [ebp - 0x1d88], edx
mov edx, dword [ebp - 0x1d88]
mov dword [ebp - 0x1d8c], edx
mov eax, dword [ebp - 0x1d8c]
sub eax, 1
mov dword [ebp - 0x1d90], eax
mov dword [ebp - 0xfbc], 1
push eax
push edx
add esp, 4
or eax, 0xd5a
and eax, 0x155b3
and eax, 0x1062c
pop eax
push edi
xor edi, 0xfb63
xor edi, 0xe509
pop edi
push esi
push edx
add esp, 4
sub esi, 0x4eae
pop esi
imul ecx, dword [ebp - 0xfbc], 0x138
add ecx, 0x44f3644b
imul edx, dword [ebp - 0xfbc], 0x138
sub ecx, edx
xor ecx, dword [ebp - 0x1d90]
imul ecx, dword [ebp - 0xfbc]
imul eax, dword [ebp - 0xfbc], 0x138
sub ecx, eax
mov dword [ebp - 0xfc0], ecx
mov ecx, dword [ebp - 0xfc0]
mov edx, dword [ebp - 0xfbc]
mov dword [ebp - 0x2d4], ecx
mov dword [ebp - 0x2d0], edx
push eax
push esi
add esp, 4
add eax, 0x27ad
jmp 0x50514f
or eax, 0x13a96
and eax, 0xdde0
pop eax
push ebx
push ebx
add esp, 4
sub ebx, 0xc8f0
jmp 0x50516c
pop ebx
push ebx
jmp 0x505173
pop ebx
push esi
push ecx
add esp, 4
and esi, 0x5dd9
jmp 0x505187
or esi, 0x17b74
call 0x50519b
add byte [eax + 0x45], dl
inc edi
cmp al, byte [ebp + 0x48]
dec edi
inc ebp
add esp, 4
pop esi
mov eax, dword [ebp - 0x254]
add eax, 0x138
imul ecx, dword [ebp - 0x250], 0x138
add ecx, 0x44f3644b
imul edx, dword [ebp - 0x250], 0x138
sub ecx, edx
xor eax, ecx
imul eax, dword [ebp - 0x250]
mov dword [ebp - 0x1d94], eax
mov eax, dword [ebp - 0x1d94]
mov dword [ebp - 0x1da0], eax
push ebx
push eax
add esp, 4
and ebx, 0x4d06
call 0x5051fa
add byte [ecx + 0x4f], cl
xor eax, 0x45404d37
aaa
add esp, 4
jmp 0x505204
xor ebx, 0x5745
pop ebx
push edi
and edi, 0x180d5
pop edi
mov ecx, dword [ebp - 0xa14]
add ecx, 0x138
imul edx, dword [ebp - 0xa10], 0x138
add edx, 0x44f3644b
imul eax, dword [ebp - 0xa10], 0x138
sub edx, eax
xor ecx, edx
imul ecx, dword [ebp - 0xa10]
mov dword [ebp - 0x1d98], ecx
mov ecx, dword [ebp - 0x1d98]
mov dword [ebp - 0x1d9c], ecx
mov edx, dword [ebp - 0x14a4]
imul edx, dword [ebp - 0x1d9c]
cmp dword [ebp - 0x1da0], edx
jne 0x5053e5
push ecx
push eax
add esp, 4
add ecx, 0xd21d
xor ecx, 0xc7a3
and ecx, 0x9d47
pop ecx
push ecx
push ecx
add esp, 4
xor ecx, 0x17168
sub ecx, 0xde13
pop ecx
push ebx
add ebx, 0xcac9
pop ebx
push ebx
push edx
add esp, 4
and ebx, 0x1975
or ebx, 0x11931
and ebx, 0xd056
pop ebx
push edx
and edx, 0x1627c
pop edx
push esi
push edx
add esp, 4
sub esi, 0xda8a
and esi, 0x90e
pop esi
mov eax, dword [ebp - 0x2d4]
add eax, 0x138
imul ecx, dword [ebp - 0x2d0], 0x138
add ecx, 0x44f3644b
imul edx, dword [ebp - 0x2d0], 0x138
sub ecx, edx
xor eax, ecx
imul eax, dword [ebp - 0x2d0]
mov dword [ebp - 0x1da4], eax
mov eax, dword [ebp - 0x1da4]
mov dword [ebp - 0x1da8], eax
mov ecx, dword [ebp - 0x1da8]
sub ecx, 1
mov dword [ebp - 0x1dac], ecx
mov dword [ebp - 0xfc4], 1
push esi
xor esi, 0x167ee
pop esi
push esi
push edi
add esp, 4
and esi, 0x14c5e
call 0x505350
add byte [esi], dh
inc edx
xor ecx, dword [ebx + 0x4e]
aas
dec ebp
dec ecx
add esp, 4
add esi, 0xf864
add esi, 0x2ebe
pop esi
imul edx, dword [ebp - 0xfc4], 0x138
add edx, 0x44f3644b
imul eax, dword [ebp - 0xfc4], 0x138
sub edx, eax
xor edx, dword [ebp - 0x1dac]
imul edx, dword [ebp - 0xfc4]
imul ecx, dword [ebp - 0xfc4], 0x138
sub edx, ecx
mov dword [ebp - 0xfc8], edx
mov edx, dword [ebp - 0xfc8]
mov eax, dword [ebp - 0xfc4]
mov dword [ebp - 0x2d4], edx
mov dword [ebp - 0x2d0], eax
push edi
push ecx
add esp, 4
call 0x5053c7
add byte [ebx], dh
cmp eax, 0x4d424c49
inc ebx
cmp al, 0x4e
add esp, 4
and edi, 0xe7b
pop edi
push ebx
and ebx, 0x9661
xor ebx, 0x7eb
xor ebx, 0x16483
pop ebx
jmp 0x504ca3
push ebx
and ebx, 0x2ff8
sub ebx, 0x105f5
and ebx, 0x14337
pop ebx
push esi
push ebx
add esp, 4
jmp 0x50540a
jmp 0x50540f
sub esi, 0x32b1
and esi, 0xa133
pop esi
mov ecx, dword [ebp - 0x2d4]
mov edx, dword [ebp - 0x2d0]
mov dword [ebp - 0x1f0c], ecx
mov dword [ebp - 0x1f08], edx
lea eax, [ebp - 0x1f0c]
mov dword [ebp - 0x1db0], eax
mov ecx, dword [ebp - 0x1db0]
mov dword [ebp - 0xa74], ecx
push ecx
push ebx
add esp, 4
jmp 0x50545a
pop ecx
push ecx
push eax
add esp, 4
call 0x50546e
add byte [ebx], bh
dec esi
dec ebp
aas
dec ecx
cmp cl, byte [ebx + edi - 0x7d]
les eax, [ecx + eax*4]
sar dword [ebp + eax*8 - 0x3e7f0000], 0xd7
lds eax, [eax]
add byte [ecx - 0x75], bl
xchg ebp, eax
invalid
add ebx, 0x7af9
sub ebx, 0x17a2d
or ebx, 0xaf42
xor ebx, 0xf47b
pop ebx
push edx
xor edx, 0xd6d6
and edx, 0x12968
or edx, 0x1892
pop edx
push eax
or eax, 0xbf73
pop eax
push edi
sub edi, 0x178ed
or edi, 0x7e4d
pop edi
push ecx
and ecx, 0x9d26
and ecx, 0x12299
add ecx, 0xa51f
jmp 0x50649e
pop ecx
mov eax, dword [ebp - 0x14]
add eax, 0x138
imul ecx, dword [ebp - 0x10], 0x138
add ecx, 0x44f3644b
imul edx, dword [ebp - 0x10], 0x138
sub ecx, edx
xor eax, ecx
imul eax, dword [ebp - 0x10]
mov dword [ebp - 0x1e44], eax
mov eax, dword [ebp - 0x1e44]
mov dword [ebp - 0x1e48], eax
mov ecx, dword [ebp - 0x1e48]
sub ecx, 0xbb8
mov dword [ebp - 0x1e4c], ecx
mov dword [ebp - 0xfec], 1
push esi
push ecx
add esp, 4
and esi, 0x172c
pop esi
push ecx
push esi
add esp, 4
sub ecx, 0x17986
jmp 0x50650e
jmp 0x506516
pop ecx
push ecx
push edx
add esp, 4
xor ecx, 0x9298
pop ecx
imul edx, dword [ebp - 0xfec], 0x138
add edx, 0x44f3644b
imul eax, dword [ebp - 0xfec], 0x138
sub edx, eax
xor edx, dword [ebp - 0x1e4c]
imul edx, dword [ebp - 0xfec]
imul ecx, dword [ebp - 0xfec], 0x138
sub edx, ecx
mov dword [ebp - 0xff0], edx
mov edx, dword [ebp - 0xff0]
mov eax, dword [ebp - 0xfec]
mov dword [ebp - 0x14], edx
mov dword [ebp - 0x10], eax
push edi
sub edi, 0x767b
call 0x506584
add byte [0x46423647], bh
dec esp
inc esp
add esp, 4
and edi, 0x150e5
pop edi
push ecx
sub ecx, 0xe1ca
add ecx, 0x25ea
sub ecx, 0x5c7b
pop ecx
push eax
push edx
add esp, 4
add eax, 0x14a96
xor eax, 0xbee8
pop eax
push esi
push ebx
add esp, 4
add esi, 0x9e73
pop esi
push esi
sub esi, 0x13312
sub esi, 0x1432b
add esi, 0xd50f
pop esi
mov ecx, dword [ebp - 0x30]
add ecx, 0x138
imul edx, dword [ebp - 0x2c], 0x138
add edx, 0x44f3644b
imul eax, dword [ebp - 0x2c], 0x138
sub edx, eax
xor ecx, edx
imul ecx, dword [ebp - 0x2c]
mov dword [ebp - 0x1e50], ecx
mov ecx, dword [ebp - 0x1e50]
mov dword [ebp - 0x1e54], ecx
cmp dword [ebp - 0x1e54], 0x9e7
jne 0x5075af
push eax
jmp 0x506623
pop eax
push edx
call 0x506632
add byte [esi + edi], dh
xor al, 0x47
dec esp
aaa
add esp, 4
xor edx, 0xc378
call 0x506649
add byte [edi], bh
inc ecx
dec edx
dec edx
dec esi
dec ebx
dec ebx
add esp, 4
pop edx
push ecx
push edi
add esp, 4
sub ecx, 0x5641
pop ecx
push esi
xor esi, 0x2e4e
sub esi, 0x105e0
or esi, 0x588
pop esi
push ebx
push esi
add esp, 4
xor ebx, 0xe1f9
or ebx, 0x808a
pop ebx
mov edx, dword [ebp - 0x14]
add edx, 0x138
imul eax, dword [ebp - 0x10], 0x138
add eax, 0x44f3644b
imul ecx, dword [ebp - 0x10], 0x138
sub eax, ecx
xor edx, eax
imul edx, dword [ebp - 0x10]
mov dword [ebp - 0x1e58], edx
mov edx, dword [ebp - 0x1e58]
mov dword [ebp - 0x1e5c], edx
mov eax, dword [ebp - 0x1e5c]
sub eax, 0xec
mov dword [ebp - 0x1e60], eax
mov dword [ebp - 0xff4], 1
push eax
and eax, 0x5a20
or eax, 0x10a4e
pop eax
push eax
jmp 0x5066e7
xor eax, 0x17116
or eax, 0xfeb3
pop eax
push ebx
xor ebx, 0xb7f7
add ebx, 0x56b3
pop ebx
imul ecx, dword [ebp - 0xff4], 0x138
add ecx, 0x44f3644b
imul edx, dword [ebp - 0xff4], 0x138
sub ecx, edx
xor ecx, dword [ebp - 0x1e60]
imul ecx, dword [ebp - 0xff4]
imul eax, dword [ebp - 0xff4], 0x138
sub ecx, eax
mov dword [ebp - 0xff8], ecx
mov ecx, dword [ebp - 0xff8]
mov edx, dword [ebp - 0xff4]
mov dword [ebp - 0x14], ecx
mov dword [ebp - 0x10], edx
push edx
push edi
add esp, 4
jmp 0x50675c
pop edx
push ecx
push eax
add esp, 4
jmp 0x506768
pop ecx
push esi
push esi
add esp, 4
and esi, 0xe74
sub esi, 0x126bd
xor esi, 0x5677
pop esi
mov eax, dword [ebp - 0x14]
add eax, 0x138
imul ecx, dword [ebp - 0x10], 0x138
add ecx, 0x44f3644b
imul edx, dword [ebp - 0x10], 0x138
sub ecx, edx
xor eax, ecx
imul eax, dword [ebp - 0x10]
mov dword [ebp - 0x1e64], eax
mov eax, dword [ebp - 0x1e64]
mov dword [ebp - 0x1ed0], eax
lea ecx, [ebp - 0x938]
mov dword [ebp - 0x3b8], ecx
mov edx, dword [ebp - 0x3b8]
mov dword [edx + 4], 1
push edi
push edx
add esp, 4
or edi, 0xd2c0
and edi, 0x127ad
xor edi, 0x2f20
jmp 0x5067ed
pop edi
push ebx
or ebx, 0x14702
pop ebx
push esi
push edi
add esp, 4
or esi, 0xb828
pop esi
mov eax, dword [ebp - 0x3b8]
imul ecx, dword [eax + 4], 0x138
add ecx, 0x44f3644b
mov edx, dword [ebp - 0x3b8]
imul eax, dword [edx + 4], 0x138
sub ecx, eax
xor ecx, 0x14b
mov edx, dword [ebp - 0x3b8]
imul ecx, dword [edx + 4]
mov eax, dword [ebp - 0x3b8]
imul edx, dword [eax + 4], 0x138
sub ecx, edx
mov eax, dword [ebp - 0x3b8]
mov dword [eax], ecx
mov ecx, dword [ebp - 0x3b8]
mov dword [ebp - 0x1f88], ecx
push edx
push eax
add esp, 4
and edx, 0x10542
pop edx
push edi
push edi
add esp, 4
and edi, 0x85c5
and edi, 0xbadc
pop edi
push ebx
push edi
add esp, 4
add ebx, 0xbc65
pop ebx
push esi
or esi, 0xd51a
pop esi
mov dword [ebp - 0x14b4], 1
push eax
push ecx
add esp, 4
xor eax, 0x81cc
jmp 0x5068a6
and eax, 0x4b9f
pop eax
push esi
push ebx
add esp, 4
or esi, 0x15154
or esi, 0x93fb
and esi, 0xb7c5
pop esi
mov dword [ebp - 0x1f8c], 0x38
mov dword [ebp - 0x1f90], 0xe6
mov dword [ebp - 0x1f94], 0x6e
mov dword [ebp - 0x1f98], 0x6e
mov dword [ebp - 0x1f9c], 0x78
mov dword [ebp - 0x1550], 1
push edi
jmp 0x506907
loopne 0x5068c9
invalid
invalid
pop edi
push ecx
push edx
add esp, 4
and ecx, 0x6e54
call 0x506920
add byte [esi + 0x4e], al
dec ebp
inc edi
dec edx
cmp al, 0x83
les eax, [ecx + eax*4]
leave
jp 0x5068c8
add byte [eax], al
jmp 0x506932
pop ecx
imul edx, dword [ebp - 0x1550], 0x138
add edx, 0x44f3644b
imul eax, dword [ebp - 0x1550], 0x138
sub edx, eax
xor edx, 0xe6
imul edx, dword [ebp - 0x1550]
imul ecx, dword [ebp - 0x1550], 0x138
sub edx, ecx
mov dword [ebp - 0x1554], edx
push ecx
push esi
add esp, 4
sub ecx, 0x24b2
sub ecx, 0x4014
or ecx, 0x513f
pop ecx
push ebx
and ebx, 0x16826
xor ebx, 0x127f1
add ebx, 0x6299
or ebx, 0x17119
pop ebx
push eax
sub eax, 0x110db
pop eax
push ebx
push edx
add esp, 4
call 0x5069b9
add byte [edx + 0x4c], al
cmp dword [eax + 0x41], eax
inc edx
add esp, 4
or ebx, 0x46d8
jmp 0x5069cb
and ebx, 0x4715
pop ebx
mov edx, dword [ebp - 0x938]
add edx, 0x138
imul eax, dword [ebp - 0x934], 0x138
add eax, 0x44f3644b
imul ecx, dword [ebp - 0x934], 0x138
sub eax, ecx
xor edx, eax
imul edx, dword [ebp - 0x934]
mov dword [ebp - 0x1e68], edx
mov edx, dword [ebp - 0x1e68]
mov dword [ebp - 0x1e6c], edx
mov eax, dword [ebp - 0x1e6c]
sub eax, 0x6e
mov dword [ebp - 0x1e70], eax
mov dword [ebp - 0xa28], 1
push edx
sub edx, 0x154f3
xor edx, 0x34f4
sub edx, 0x1272c
pop edx
push ecx
push eax
add esp, 4
xor ecx, 0xfb6d
add ecx, 0x6ff2
xor ecx, 0xf4b1
xor ecx, 0x144de
pop ecx
imul ecx, dword [ebp - 0xa28], 0x138
add ecx, 0x44f3644b
imul edx, dword [ebp - 0xa28], 0x138
sub ecx, edx
xor ecx, dword [ebp - 0x1e70]
imul ecx, dword [ebp - 0xa28]
imul eax, dword [ebp - 0xa28], 0x138
sub ecx, eax
mov dword [ebp - 0xa2c], ecx
push edx
xor edx, 0x51fe
xor edx, 0x1138c
pop edx
push edx
push ecx
add esp, 4
sub edx, 0x38ce
call 0x506ac2
add byte [esi], bh
inc edx
inc esp
cmp al, 0x4d
cmp eax, 0x83384649
les eax, [ecx + eax*4]
int 0x3a
add byte [eax], al
pop edx
mov ecx, dword [ebp - 0x938]
add ecx, 0x138
imul edx, dword [ebp - 0x934], 0x138
add edx, 0x44f3644b
imul eax, dword [ebp - 0x934], 0x138
sub edx, eax
xor ecx, edx
imul ecx, dword [ebp - 0x934]
mov dword [ebp - 0x1e74], ecx
mov ecx, dword [ebp - 0x1e74]
mov dword [ebp - 0x1e78], ecx
mov edx, dword [ebp - 0x1e78]
add edx, 0x38
mov dword [ebp - 0x1e7c], edx
mov dword [ebp - 0xa30], 1
push eax
push eax
add esp, 4
and eax, 0x6e1f
or eax, 0xdceb
xor eax, 0xd442
pop eax
push esi
jmp 0x506b46
jmp 0x506b4d
pop esi
push edx
push esi
add esp, 4
and edx, 0x1fb6
pop edx
imul eax, dword [ebp - 0xa30], 0x138
add eax, 0x44f3644b
imul ecx, dword [ebp - 0xa30], 0x138
sub eax, ecx
xor eax, dword [ebp - 0x1e7c]
imul eax, dword [ebp - 0xa30]
imul edx, dword [ebp - 0xa30], 0x138
sub eax, edx
mov dword [ebp - 0xa34], eax
push esi
push ebx
add esp, 4
or esi, 0x360c
add esi, 0xa03
pop esi
push ecx
push ecx
add esp, 4
xor ecx, 0x5e93
and ecx, 0x17cd9
add ecx, 0x835
pop ecx
push eax
and eax, 0x10900
pop eax
push edi
or edi, 0x356e
xor edi, 0x1510b
and edi, 0x43c8
pop edi
push esi
push eax
add esp, 4
add esi, 0xbd21
and esi, 0x13ee2
xor esi, 0xb7a1
xor esi, 0xd8eb
pop esi
mov dword [ebp - 0x2c0], 1
push esi
call 0x506c10
add byte [esi + 0x3a], al
xor bh, byte [ecx + ecx*2]
push eax
inc esp
add esp, 4
and esi, 0x11406
add esi, 0x1862f
sub esi, 0x10ed6
pop esi
push esi
and esi, 0x14af9
add esi, 0x7a43
pop esi
imul eax, dword [ebp - 0x2c0], 0x138
add eax, 0x44f3644b
imul ecx, dword [ebp - 0x2c0], 0x138
sub eax, ecx
xor eax, 2
imul eax, dword [ebp - 0x2c0]
imul edx, dword [ebp - 0x2c0], 0x138
sub eax, edx
mov dword [ebp - 0x2c4], eax
push ebx
push edi
add esp, 4
xor ebx, 0x1b0f
call 0x506c85
add byte [ecx + ecx*2 + 0x50], cl
inc edi
aaa
cmp al, 0x42
aas
add esp, 4
sub ebx, 0xbfc8
pop ebx
push edx
add edx, 0x167e4
add edx, 0x6b99
pop edx
mov eax, dword [ebp - 0x938]
mov ecx, dword [ebp - 0x934]
mov dword [ebp - 0x244], eax
mov dword [ebp - 0x240], ecx
jmp 0x506e8b
push edx
call 0x506e99
add byte [ecx + 0x4f], al
inc edi
cmp eax, 0x83484a49
les eax, [edx + ebx*2]
push esi
push esi
add esp, 4
add esi, 0x93dc
pop esi
push edx
and edx, 0x6733
sub edx, 0x1247
xor edx, 0x17477
pop edx
mov ecx, dword [ebp - 0x244]
add ecx, 0x138
imul edx, dword [ebp - 0x240], 0x138
add edx, 0x44f3644b
imul eax, dword [ebp - 0x240], 0x138
sub edx, eax
xor ecx, edx
imul ecx, dword [ebp - 0x240]
mov dword [ebp - 0x1e88], ecx
mov ecx, dword [ebp - 0x1e88]
mov dword [ebp - 0x1e8c], ecx
cmp dword [ebp - 0x1e8c], 0
jbe 0x507401
push eax
jmp 0x506f17
pop eax
push ecx
push ebx
add esp, 4
xor ecx, 0xc676
and ecx, 0xf2b3
call 0x506f35
add byte [eax + 0x35], cl
aas
cmp al, 0x4e
add esp, 4
or ecx, 0x353d
pop ecx
mov edx, dword [ebp - 0x244]
add edx, 0x138
imul eax, dword [ebp - 0x240], 0x138
add eax, 0x44f3644b
imul ecx, dword [ebp - 0x240], 0x138
sub eax, ecx
xor edx, eax
imul edx, dword [ebp - 0x240]
mov dword [ebp - 0x1e90], edx
mov edx, dword [ebp - 0x1e90]
mov dword [ebp - 0x1e9c], edx
push edi
push esi
add esp, 4
add edi, 0x36dd
call 0x506f98
add byte [edx + 0x3c], cl
dec edi
dec esi
inc eax
dec eax
add esp, 4
call 0x506fa9
add byte [ebx], dh
aaa
inc eax
dec esp
cmp eax, 0x833d393d
les eax, [ecx + eax*4]
out dx, eax
dec ecx
test dword [ecx], eax
add byte [edi - 0x75], bl
test esp, edx
cmc
invalid
push esi
push esi
add esp, 4
sub esi, 0x171b5
pop esi
push edx
and edx, 0xa4bb
sub edx, 0x4b1e
pop edx
push ecx
push eax
add esp, 4
xor ecx, 0xff45
add ecx, 0xf91a
or ecx, 0xdf64
pop ecx
mov ecx, dword [ebp - 0x2c4]
mov edx, dword [ebp - 0x2c0]
mov dword [ebp - 0x1f04], ecx
mov dword [ebp - 0x1f00], edx
lea eax, [ebp - 0x1f04]
mov dword [ebp - 0x1ec8], eax
mov ecx, dword [ebp - 0x1ec8]
mov dword [ebp - 0xa6c], ecx
push edx
push edx
add esp, 4
call 0x507474
add byte [ebx], bh
aaa
inc esp
cmp eax, 0xc4834e3f
add al, 0x81
ljmp 0xf281
jmp 0x504250
mov dword [ebp - 0x3c0], 0
call 0x5075c3
mov eax, 0x13379797