Function at 0x40f850
Capabilities:
Contain obfuscated stackstrings
Encode data using base64
Enumerate pe sections
Parse pe header
Resolve function by parsing pe exports

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x418
and dword [ebp - 0xc], 0
movzx eax, byte [ebp + 0x1c]
test eax, eax
je 0x410912
lea eax, [ebp + 0x18]
mov dword [ebp - 0x1ec], eax
mov eax, dword [ebp + 0x20]
mov dword [ebp - 0x204], eax
mov eax, dword [ebp + 0x28]
mov dword [ebp - 0x20c], eax
mov eax, dword [ebp - 0x1ec]
movzx eax, byte [eax]
test eax, eax
je 0x4108e3
mov eax, dword [ebp - 0x20c]
mov dword [ebp - 0x14], eax
mov eax, dword [ebp - 0x14]
mov dword [ebp - 0x178], eax
mov eax, dword [ebp - 0x178]
movzx eax, word [eax]
cmp eax, 0x5a4d
je 0x40f8bc
jmp 0x4113d8
mov eax, dword [ebp - 0x178]
mov ecx, dword [ebp - 0x14]
add ecx, dword [eax + 0x3c]
mov dword [ebp - 0x48], ecx
mov eax, dword [ebp - 0x48]
cmp dword [eax], 0x4550
je 0x40f8db
jmp 0x4113d8
push 8
pop eax
imul eax, eax, 0
mov ecx, dword [ebp - 0x48]
lea eax, [ecx + eax + 0x78]
mov dword [ebp - 0x28], eax
mov eax, dword [ebp - 0x28]
cmp dword [eax + 4], 0
jne 0x40f8f9
jmp 0x4113d8
and dword [ebp - 0x10], 0
mov eax, dword [ebp - 0x48]
movzx eax, word [eax + 0x14]
mov ecx, dword [ebp - 0x48]
lea eax, [ecx + eax + 0x18]
mov dword [ebp - 0x50], eax
and dword [ebp - 0x14c], 0
jmp 0x40f92d
mov eax, dword [ebp - 0x14c]
inc eax
mov dword [ebp - 0x14c], eax
mov eax, dword [ebp - 0x50]
add eax, 0x28
mov dword [ebp - 0x50], eax
mov eax, dword [ebp - 0x48]
movzx eax, word [eax + 6]
cmp dword [ebp - 0x14c], eax
jge 0x40f9b2
mov eax, dword [ebp - 0x50]
mov eax, dword [eax + 0xc]
mov dword [ebp - 0x1a8], eax
mov eax, dword [ebp - 0x28]
mov eax, dword [eax]
cmp eax, dword [ebp - 0x1a8]
jb 0x40f9ad
mov eax, dword [ebp - 0x48]
push dword [eax + 0x38]
mov eax, dword [ebp - 0x50]
push dword [eax + 8]
call fcn.0040e210
pop ecx
pop ecx
add eax, dword [ebp - 0x1a8]
mov dword [ebp - 0x214], eax
mov eax, dword [ebp - 0x28]
mov eax, dword [eax]
cmp eax, dword [ebp - 0x214]
jae 0x40f9ad
push 0x5b7a
push 0x3e3f
push 0xd64
push 0
push 1
lea eax, [ebp - 0x50]
push eax
push 0
push 0x3b99
lea eax, [ebp - 0x10]
push eax
call fcn.0040f850
add esp, 0x24
jmp 0x40f9b2
jmp 0x40f917
cmp dword [ebp - 0x10], 0
jne 0x40f9bd
jmp 0x4113d8
mov eax, dword [ebp - 0x28]
mov ecx, dword [ebp - 0x10]
add ecx, dword [eax]
add ecx, dword [ebp - 0x14]
mov dword [ebp - 8], ecx
xor ecx, ecx
call fcn.0040179d
push eax
call fcn.004a3c35
pop ecx
mov byte [ebp - 0x8c], 1
mov byte [ebp - 0x8b], 0xe4
mov byte [ebp - 0x8a], 6
mov byte [ebp - 0x89], 4
mov byte [ebp - 0x88], 5
mov byte [ebp - 0x87], 0xdd
mov byte [ebp - 0x86], 0x43
mov byte [ebp - 0x85], 0x8e
mov byte [ebp - 0x84], 0x3c
mov byte [ebp - 0x83], 0x3c
mov byte [ebp - 0x82], 5
mov byte [ebp - 0x81], 0
mov byte [ebp - 0x80], 0
mov byte [ebp - 0x7f], 0
mov byte [ebp - 0x7e], 3
mov byte [ebp - 0x7d], 6
mov byte [ebp - 0x7c], 2
mov byte [ebp - 0x7b], 0
mov byte [ebp - 0x7a], 9
mov byte [ebp - 0x79], 7
mov byte [ebp - 0x78], 4
mov byte [ebp - 0x77], 8
mov byte [ebp - 0x76], 7
mov byte [ebp - 0x75], 0xe
mov byte [ebp - 0x74], 8
mov byte [ebp - 0x73], 6
xor eax, eax
inc eax
shl eax, 0
movzx eax, byte [ebp + eax - 0x8c]
or eax, 0xd1
xor ecx, ecx
inc ecx
shl ecx, 0
movzx ecx, byte [ebp + ecx - 0x8c]
and ecx, 0xd1
sub eax, ecx
xor ecx, ecx
inc ecx
imul ecx, ecx, 0
movzx ecx, byte [ebp + ecx - 0x8c]
mov byte [ebp + ecx - 0x1cc], al
mov dword [ebp - 0x20], 2
and dword [ebp - 0xf4], 0
jmp 0x40fabb
mov eax, dword [ebp - 0x20]
inc eax
inc eax
mov dword [ebp - 0x20], eax
cmp dword [ebp - 0x20], 0x1a
jae 0x40fb71
xor eax, eax
inc eax
imul eax, eax, 0
movzx eax, byte [ebp + eax - 0x8c]
lea eax, [eax + eax + 2]
cmp dword [ebp - 0x20], eax
jne 0x40fb05
mov eax, dword [ebp - 0x20]
movzx eax, byte [ebp + eax - 0x8c]
inc eax
mov dword [ebp - 0xf4], eax
mov eax, dword [ebp - 0x20]
movzx eax, byte [ebp + eax - 0x8c]
mov ecx, dword [ebp - 0x20]
lea eax, [ecx + eax - 1]
mov dword [ebp - 0x20], eax
jmp 0x40fab3
mov eax, dword [ebp - 0x20]
movzx eax, byte [ebp + eax - 0x8b]
mov ecx, dword [ebp - 0x20]
sub ecx, dword [ebp - 0xf4]
movzx ecx, byte [ebp + ecx - 0x8e]
movsx ecx, byte [ebp + ecx - 0x1cc]
or eax, ecx
mov ecx, dword [ebp - 0x20]
movzx ecx, byte [ebp + ecx - 0x8b]
mov edx, dword [ebp - 0x20]
sub edx, dword [ebp - 0xf4]
movzx edx, byte [ebp + edx - 0x8e]
movsx edx, byte [ebp + edx - 0x1cc]
and ecx, edx
sub eax, ecx
mov ecx, dword [ebp - 0x20]
movzx ecx, byte [ebp + ecx - 0x8c]
mov byte [ebp + ecx - 0x1cc], al
and dword [ebp - 0xf4], 0
jmp 0x40fab3
xor eax, eax
inc eax
imul eax, eax, 0xa
mov byte [ebp + eax - 0x1cc], 0
push 0xa
lea eax, [ebp - 0x1cc]
push eax
lea ecx, [ebp - 0x400]
call fcn.00412932
xor edx, edx
mov ecx, eax
call fcn.00401762
pop ecx
mov dword [ebp - 0x248], eax
lea ecx, [ebp - 0x400]
call fcn.004129ba
and dword [ebp - 0xd8], 0
jmp 0x40fbc4
mov eax, dword [ebp - 0xd8]
inc eax
mov dword [ebp - 0xd8], eax
cmp dword [ebp - 0xd8], 0xb
jae 0x40fbdd
mov eax, dword [ebp - 0xd8]
mov byte [ebp + eax - 0x1cc], 0
jmp 0x40fbb7
mov byte [ebp - 0xbc], 6
mov byte [ebp - 0xbb], 0xbf
mov byte [ebp - 0xba], 0
mov byte [ebp - 0xb9], 8
mov byte [ebp - 0xb8], 9
mov byte [ebp - 0xb7], 1
mov byte [ebp - 0xb6], 4
mov byte [ebp - 0xb5], 4
mov byte [ebp - 0xb4], 2
mov byte [ebp - 0xb3], 3
mov byte [ebp - 0xb2], 3
mov byte [ebp - 0xb1], 5
mov byte [ebp - 0xb0], 1
mov byte [ebp - 0xaf], 4
mov byte [ebp - 0xae], 0x10
mov byte [ebp - 0xad], 0x3c
mov byte [ebp - 0xac], 0x58
mov byte [ebp - 0xab], 0x9e
mov byte [ebp - 0xaa], 0x32
mov byte [ebp - 0xa9], 0xe6
mov byte [ebp - 0xa8], 0x61
mov byte [ebp - 0xa7], 0x39
mov byte [ebp - 0xa6], 0xee
mov byte [ebp - 0xa5], 0xa0
mov byte [ebp - 0xa4], 0xae
mov byte [ebp - 0xa3], 0x93
mov byte [ebp - 0xa2], 0x11
mov byte [ebp - 0xa1], 0x3f
mov byte [ebp - 0xa0], 0xfa
mov byte [ebp - 0x9f], 0xfe
mov byte [ebp - 0x9e], 0xec
mov byte [ebp - 0x9d], 5
mov byte [ebp - 0x9c], 7
mov byte [ebp - 0x9b], 8
mov byte [ebp - 0x9a], 1
mov byte [ebp - 0x99], 7
mov byte [ebp - 0x98], 6
xor eax, eax
inc eax
shl eax, 0
movzx eax, byte [ebp + eax - 0xbc]
or eax, 0x86
xor ecx, ecx
inc ecx
shl ecx, 0
movzx ecx, byte [ebp + ecx - 0xbc]
and ecx, 0x86
sub eax, ecx
xor ecx, ecx
inc ecx
imul ecx, ecx, 0
movzx ecx, byte [ebp + ecx - 0xbc]
mov byte [ebp + ecx - 0x1d8], al
mov dword [ebp - 0x24], 2
and dword [ebp - 0xd4], 0
jmp 0x40fd36
mov eax, dword [ebp - 0x24]
inc eax
inc eax
mov dword [ebp - 0x24], eax
cmp dword [ebp - 0x24], 0x25
jae 0x40fdec
xor eax, eax
inc eax
imul eax, eax, 0
movzx eax, byte [ebp + eax - 0xbc]
lea eax, [eax + eax + 2]
cmp dword [ebp - 0x24], eax
jne 0x40fd80
mov eax, dword [ebp - 0x24]
movzx eax, byte [ebp + eax - 0xbc]
inc eax
mov dword [ebp - 0xd4], eax
mov eax, dword [ebp - 0x24]
movzx eax, byte [ebp + eax - 0xbc]
mov ecx, dword [ebp - 0x24]
lea eax, [ecx + eax - 1]
mov dword [ebp - 0x24], eax
jmp 0x40fd2e
mov eax, dword [ebp - 0x24]
movzx eax, byte [ebp + eax - 0xbb]
mov ecx, dword [ebp - 0x24]
sub ecx, dword [ebp - 0xd4]
movzx ecx, byte [ebp + ecx - 0xbe]
movsx ecx, byte [ebp + ecx - 0x1d8]
or eax, ecx
mov ecx, dword [ebp - 0x24]
movzx ecx, byte [ebp + ecx - 0xbb]
mov edx, dword [ebp - 0x24]
sub edx, dword [ebp - 0xd4]
movzx edx, byte [ebp + edx - 0xbe]
movsx edx, byte [ebp + edx - 0x1d8]
and ecx, edx
sub eax, ecx
mov ecx, dword [ebp - 0x24]
movzx ecx, byte [ebp + ecx - 0xbc]
mov byte [ebp + ecx - 0x1d8], al
and dword [ebp - 0xd4], 0
jmp 0x40fd2e
xor eax, eax
inc eax
imul eax, eax, 0xa
mov byte [ebp + eax - 0x1d8], 0
push 0xa
lea eax, [ebp - 0x1d8]
push eax
lea ecx, [ebp - 0x3e8]
call fcn.00412932
xor edx, edx
mov ecx, eax
call fcn.00401762
pop ecx
mov dword [ebp - 0x21c], eax
lea ecx, [ebp - 0x3e8]
call fcn.004129ba
and dword [ebp - 0xcc], 0
jmp 0x40fe3f
mov eax, dword [ebp - 0xcc]
inc eax
mov dword [ebp - 0xcc], eax
cmp dword [ebp - 0xcc], 0xb
jae 0x40fe58
mov eax, dword [ebp - 0xcc]
mov byte [ebp + eax - 0x1d8], 0
jmp 0x40fe32
push dword [ebp - 0x21c]
push dword [ebp - 0x248]
call fcn.0040b9bb
pop ecx
pop ecx
mov dword [ebp - 0x1c0], eax
push 0xe9
push 0x6ff2
push 0x1337
push 0x2326
lea eax, [ebp - 0x48]
push eax
push 0
push 0xd5d
push 0x583c
lea eax, [ebp - 0x1c0]
push eax
push 1
push 0x6f2c
push 0x1ed9
push 0x5484
call fcn.0040f3be
add esp, 0x34
push 0x324a
lea eax, [ebp - 0x1c0]
push eax
push 0x219c
push 0
push 1
push 0x5b6d
push 1
lea eax, [ebp - 8]
push eax
push 0x3f3b
call fcn.0040f850
add esp, 0x24
and dword [ebp - 0x60], 0
mov eax, dword [ebp - 8]
cmp dword [eax + 0x18], 0
jbe 0x40ff0d
lea eax, [ebp - 0x60]
push eax
push 0x4f60
push 0
push 0x2555
push 1
lea eax, [ebp - 8]
push eax
call fcn.0040e2b9
add esp, 0x18
mov eax, dword [ebp - 8]
mov eax, dword [eax + 0x1c]
mov dword [ebp - 4], eax
mov eax, dword [ebp - 8]
mov eax, dword [eax + 0x14]
sub eax, dword [ebp - 0x60]
mov dword [ebp - 0x54], eax
and dword [ebp - 0xdc], 0
jmp 0x40ff38
mov eax, dword [ebp - 0xdc]
inc eax
mov dword [ebp - 0xdc], eax
mov eax, dword [ebp - 0xdc]
cmp eax, dword [ebp - 0x54]
jge 0x40ffc1
push 0x3bbf
lea eax, [ebp - 8]
push eax
push 0x15de
lea eax, [ebp - 0x50]
push eax
push 0x6ce5
lea eax, [ebp - 0x244]
push eax
push 0x3ed8
lea eax, [ebp - 0x14]
push eax
push 0x3845
lea eax, [ebp - 0x10]
push eax
lea eax, [ebp - 0xdc]
push eax
push 0
push 0
push 0x361a
call fcn.0040f232
add esp, 0x38
mov eax, dword [ebp - 0x10]
add eax, dword [ebp - 4]
mov ecx, dword [ebp - 0x14]
mov edx, dword [ebp - 0x244]
mov dword [ecx + eax], edx
push 0x62c9
lea eax, [ebp - 4]
push eax
push 1
push 0x1be4
push 1
push 0x5da9
call fcn.0040e2b9
add esp, 0x18
jmp 0x40ff2b
push 1
push 0x1233
push 0xf98
push 0x5d24
push 0x2132
push 0x4b0
push 0
lea eax, [ebp - 8]
push eax
lea eax, [ebp - 0x60]
push eax
push 0x2f0a
push 0
push 0xadb
push 0x5420
call fcn.0040f501
add esp, 0x34
mov eax, dword [ebp - 8]
mov eax, dword [eax + 0x18]
sub eax, dword [ebp - 0x60]
mov dword [ebp - 0x54], eax
push 0x48c5
lea eax, [ebp - 0x54]
push eax
push 0x2189
push 1
push 0x6fd7
push 0x78f4
lea eax, [ebp - 4]
push eax
push 0x6e6b
push 0x769c
push 0x684b
lea eax, [ebp - 0x14]
push eax
push 1
lea eax, [ebp - 0x10]
push eax
call fcn.0040efc5
add esp, 0x34
mov eax, dword [ebp - 0x54]
shl eax, 2
mov ecx, dword [ebp - 4]
sub ecx, eax
mov eax, dword [ebp - 8]
mov dword [eax + 0x20], ecx
lea eax, [ebp - 8]
push eax
push 0x387f
push 0x61a9
push 0x2785
push 0x4869
push 0x51b0
push 0x2eaf
push 0x2f2a
lea eax, [ebp - 0x60]
push eax
push 1
push 0
call fcn.0040f0cd
add esp, 0x2c
and dword [ebp - 0xc0], 0
jmp 0x4100a8
mov eax, dword [ebp - 0xc0]
inc eax
mov dword [ebp - 0xc0], eax
mov eax, dword [ebp - 0xc0]
cmp eax, dword [ebp - 0x54]
jge 0x410117
push 0x4fe4
lea eax, [ebp - 0x10]
push eax
push 0x785e
push 0x5b5a
lea eax, [ebp - 0x14]
push eax
lea eax, [ebp - 4]
push eax
lea eax, [ebp - 8]
push eax
lea eax, [ebp - 0xc0]
push eax
push 0x174d
push 1
push 1
call fcn.0040f0cd
add esp, 0x2c
push 0x260
push 0x5ba8
lea eax, [ebp - 4]
push eax
push 1
push 0
push 0x5704
push 1
push 0x2727
push 0xe59
call fcn.0040f850
add esp, 0x24
jmp 0x41009b
push 0
lea eax, [ebp - 4]
push eax
push 0x5392
push 0x1855
lea eax, [ebp - 0x54]
push eax
lea eax, [ebp - 8]
push eax
push 1
push 0x6343
push 0x7a82
push 0x1517
push 1
push 0x3a27
push 0x3df0
call fcn.0040f501
add esp, 0x34
mov eax, dword [ebp - 8]
mov ecx, dword [ebp - 0x10]
add ecx, dword [eax + 0xc]
add ecx, dword [ebp - 0x14]
push ecx
lea ecx, [ebp - 0x344]
call fcn.00412932
lea ecx, [ebp - 0x344]
call fcn.004129e0
mov dword [ebp - 0x1b4], eax
push dword [ebp - 0x1b4]
mov eax, dword [ebp - 0x1b4]
shr eax, 1
push eax
call fcn.0040b9bb
pop ecx
pop ecx
mov dword [ebp - 0x68], eax
mov byte [ebp - 0x144], 3
mov byte [ebp - 0x143], 0xad
mov byte [ebp - 0x142], 2
mov byte [ebp - 0x141], 0
mov byte [ebp - 0x140], 1
mov byte [ebp - 0x13f], 8
mov byte [ebp - 0x13e], 0
mov byte [ebp - 0x13d], 0x4a
mov byte [ebp - 0x13c], 0x40
mov byte [ebp - 0x13b], 0x63
mov byte [ebp - 0x13a], 0x3b
mov byte [ebp - 0x139], 0x37
mov byte [ebp - 0x138], 0x61
mov byte [ebp - 0x137], 0x52
mov byte [ebp - 0x136], 0x8b
mov byte [ebp - 0x135], 0x67
mov byte [ebp - 0x134], 0xea
mov byte [ebp - 0x133], 0xdf
mov byte [ebp - 0x132], 0x77
mov byte [ebp - 0x131], 0xae
mov byte [ebp - 0x130], 0xac
mov byte [ebp - 0x12f], 0x32
mov byte [ebp - 0x12e], 0x21
mov byte [ebp - 0x12d], 0x13
mov byte [ebp - 0x12c], 2
mov byte [ebp - 0x12b], 0xaf
mov byte [ebp - 0x12a], 0xaa
mov byte [ebp - 0x129], 0x7a
mov byte [ebp - 0x128], 0xa4
mov byte [ebp - 0x127], 0x22
mov byte [ebp - 0x126], 0x96
mov byte [ebp - 0x125], 0x7f
mov byte [ebp - 0x124], 3
mov byte [ebp - 0x123], 0xc2
mov byte [ebp - 0x122], 0x6a
mov byte [ebp - 0x121], 0x3a
mov byte [ebp - 0x120], 0x3a
mov byte [ebp - 0x11f], 0x57
mov byte [ebp - 0x11e], 0xb3
mov byte [ebp - 0x11d], 0xa5
mov byte [ebp - 0x11c], 0x25
mov byte [ebp - 0x11b], 0x1f
mov byte [ebp - 0x11a], 0x8a
mov byte [ebp - 0x119], 0x2c
mov byte [ebp - 0x118], 0x96
mov byte [ebp - 0x117], 0xad
mov byte [ebp - 0x116], 0x57
mov byte [ebp - 0x115], 0xfb
mov byte [ebp - 0x114], 0xaa
mov byte [ebp - 0x113], 0x86
mov byte [ebp - 0x112], 0x48
mov byte [ebp - 0x111], 0x99
mov byte [ebp - 0x110], 0x50
mov byte [ebp - 0x10f], 0xc
mov byte [ebp - 0x10e], 0x57
mov byte [ebp - 0x10d], 0x75
mov byte [ebp - 0x10c], 0xf5
mov byte [ebp - 0x10b], 0x99
mov byte [ebp - 0x10a], 0x4e
mov byte [ebp - 0x109], 0xd7
mov byte [ebp - 0x108], 0xed
mov byte [ebp - 0x107], 0x55
mov byte [ebp - 0x106], 0xa0
mov byte [ebp - 0x105], 0x82
mov byte [ebp - 0x104], 0xfe
mov byte [ebp - 0x103], 0x96
mov byte [ebp - 0x102], 6
mov byte [ebp - 0x101], 0xd1
mov byte [ebp - 0x100], 0x3d
mov byte [ebp - 0xff], 0xea
mov byte [ebp - 0xfe], 0x36
mov byte [ebp - 0xfd], 0x2c
mov byte [ebp - 0xfc], 0xa
xor eax, eax
inc eax
shl eax, 0
movzx eax, byte [ebp + eax - 0x144]
or eax, 0xc1
xor ecx, ecx
inc ecx
shl ecx, 0
movzx ecx, byte [ebp + ecx - 0x144]
and ecx, 0xc1
sub eax, ecx
xor ecx, ecx
inc ecx
imul ecx, ecx, 0
movzx ecx, byte [ebp + ecx - 0x144]
mov byte [ebp + ecx - 0x94], al
mov dword [ebp - 0x1c], 2
and dword [ebp - 0xe4], 0
jmp 0x4103eb
mov eax, dword [ebp - 0x1c]
inc eax
inc eax
mov dword [ebp - 0x1c], eax
cmp dword [ebp - 0x1c], 0x49
jae 0x4104a1
xor eax, eax
inc eax
imul eax, eax, 0
movzx eax, byte [ebp + eax - 0x144]
lea eax, [eax + eax + 2]
cmp dword [ebp - 0x1c], eax
jne 0x410435
mov eax, dword [ebp - 0x1c]
movzx eax, byte [ebp + eax - 0x144]
inc eax
mov dword [ebp - 0xe4], eax
mov eax, dword [ebp - 0x1c]
movzx eax, byte [ebp + eax - 0x144]
mov ecx, dword [ebp - 0x1c]
lea eax, [ecx + eax - 1]
mov dword [ebp - 0x1c], eax
jmp 0x4103e3
mov eax, dword [ebp - 0x1c]
movzx eax, byte [ebp + eax - 0x143]
mov ecx, dword [ebp - 0x1c]
sub ecx, dword [ebp - 0xe4]
movzx ecx, byte [ebp + ecx - 0x146]
movsx ecx, byte [ebp + ecx - 0x94]
or eax, ecx
mov ecx, dword [ebp - 0x1c]
movzx ecx, byte [ebp + ecx - 0x143]
mov edx, dword [ebp - 0x1c]
sub edx, dword [ebp - 0xe4]
movzx edx, byte [ebp + edx - 0x146]
movsx edx, byte [ebp + edx - 0x94]
and ecx, edx
sub eax, ecx
mov ecx, dword [ebp - 0x1c]
movzx ecx, byte [ebp + ecx - 0x144]
mov byte [ebp + ecx - 0x94], al
and dword [ebp - 0xe4], 0
jmp 0x4103e3
xor eax, eax
inc eax
shl eax, 2
mov byte [ebp + eax - 0x94], 0
cmp dword [ebp - 0x68], 4
jle 0x4104ff
or dword [ebp - 0xc], 1
or dword [ebp - 0xc], 2
or dword [ebp - 0xc], 4
lea eax, [ebp - 0x94]
push eax
lea ecx, [ebp - 0x3ac]
call fcn.00412932
push eax
mov eax, dword [ebp - 0x68]
sub eax, 4
push eax
lea eax, [ebp - 0x3d0]
push eax
call fcn.0040c9f6
pop ecx
pop ecx
mov edx, eax
lea ecx, [ebp - 0x394]
call fcn.004139cf
pop ecx
mov dword [ebp - 0x164], eax
jmp 0x41051a
or dword [ebp - 0xc], 8
push dword [ebp - 0x68]
lea eax, [ebp - 0x418]
push eax
call fcn.0040c9f6
pop ecx
pop ecx
mov dword [ebp - 0x164], eax
mov eax, dword [ebp - 0x164]
mov dword [ebp - 0x238], eax
push dword [ebp - 0x238]
lea ecx, [ebp - 0x35c]
call fcn.00412961
mov eax, dword [ebp - 0xc]
and eax, 8
je 0x41054e
and dword [ebp - 0xc], 0xfffffff7
lea ecx, [ebp - 0x418]
call fcn.004129ba
mov eax, dword [ebp - 0xc]
and eax, 4
je 0x410565
and dword [ebp - 0xc], 0xfffffffb
lea ecx, [ebp - 0x394]
call fcn.004129ba
mov eax, dword [ebp - 0xc]
and eax, 2
je 0x41057c
and dword [ebp - 0xc], 0xfffffffd
lea ecx, [ebp - 0x3d0]
call fcn.004129ba
mov eax, dword [ebp - 0xc]
and eax, 1
je 0x410593
and dword [ebp - 0xc], 0xfffffffe
lea ecx, [ebp - 0x3ac]
call fcn.004129ba
and dword [ebp - 0xf8], 0
jmp 0x4105a9
mov eax, dword [ebp - 0xf8]
inc eax
mov dword [ebp - 0xf8], eax
cmp dword [ebp - 0xf8], 5
jae 0x4105c2
mov eax, dword [ebp - 0xf8]
mov byte [ebp + eax - 0x94], 0
jmp 0x41059c
mov eax, dword [ebp - 8]
mov ecx, dword [ebp - 4]
mov dword [eax + 0xc], ecx
push 0
push dword [ebp - 0x68]
mov eax, dword [ebp - 8]
mov ecx, dword [ebp - 0x10]
add ecx, dword [eax + 0xc]
add ecx, dword [ebp - 0x14]
push ecx
lea ecx, [ebp - 0x35c]
call fcn.004129e4
push 1
push 0x1d00
push 0x3625
push 0x3790
push 0x7d82
push 0x5bd3
push 1
push 0x1fe6
push 0x5f51
lea eax, [ebp - 4]
push eax
push 0
push 0x4fe4
lea eax, [ebp - 0x68]
push eax
call fcn.0040f501
add esp, 0x34
mov eax, dword [ebp - 0x10]
add eax, dword [ebp - 4]
mov ecx, dword [ebp - 0x14]
mov byte [ecx + eax], 0
push 0x74e0
push 0x2d2d
push 0xfdc
push 0x67a9
push 0x1c28
push 0x5b7d
lea eax, [ebp - 4]
push eax
push 0x5904
push 0x474f
push 0x5b3a
push 0x7990
push 1
push 0
push 0x19f5
call fcn.0040f232
add esp, 0x38
mov eax, dword [ebp - 8]
cmp dword [eax + 0x18], 0
jbe 0x4106d8
mov eax, dword [ebp - 0x28]
mov ecx, dword [ebp - 4]
sub ecx, dword [eax]
mov eax, dword [ebp - 0x28]
mov eax, dword [eax + 4]
sub eax, ecx
mov ecx, dword [ebp - 8]
xor edx, edx
div dword [ecx + 0x18]
cmp eax, 0xc
jbe 0x4106ac
mov dword [ebp - 0x1a0], 0xc
jmp 0x4106ca
mov eax, dword [ebp - 0x28]
mov ecx, dword [ebp - 4]
sub ecx, dword [eax]
mov eax, dword [ebp - 0x28]
mov eax, dword [eax + 4]
sub eax, ecx
mov ecx, dword [ebp - 8]
xor edx, edx
div dword [ecx + 0x18]
mov dword [ebp - 0x1a0], eax
mov eax, dword [ebp - 0x1a0]
mov dword [ebp - 0x1b0], eax
jmp 0x4106df
and dword [ebp - 0x1b0], 0
mov eax, dword [ebp - 0x1b0]
mov dword [ebp - 0x16c], eax
and dword [ebp - 0xe0], 0
jmp 0x410701
mov eax, dword [ebp - 0xe0]
inc eax
mov dword [ebp - 0xe0], eax
mov eax, dword [ebp - 8]
mov ecx, dword [ebp - 0xe0]
cmp ecx, dword [eax + 0x18]
jae 0x41083e
push dword [ebp - 0x16c]
mov eax, dword [ebp - 0x16c]
cdq
sub eax, edx
sar eax, 1
push eax
call fcn.0040b9bb
pop ecx
pop ecx
mov dword [ebp - 0x150], eax
push dword [ebp - 0x150]
lea eax, [ebp - 0x374]
push eax
call fcn.0040c9f6
pop ecx
pop ecx
push 0
lea eax, [ebp - 0x10]
push eax
lea eax, [ebp - 0xe0]
push eax
lea eax, [ebp - 4]
push eax
push 0x2c3
push 0x13cb
lea eax, [ebp - 0x14]
push eax
push 1
lea eax, [ebp - 8]
push eax
call fcn.0040f66a
add esp, 0x24
lea eax, [ebp - 0x150]
push eax
lea eax, [ebp - 0x10]
push eax
lea eax, [ebp - 4]
push eax
push 0x432d
push 0x487d
push 1
push 0x4abb
push 0x7828
push 0x4026
push 1
lea eax, [ebp - 0x374]
push eax
push 0x749e
lea eax, [ebp - 0x14]
push eax
call fcn.0040f3be
add esp, 0x34
mov eax, dword [ebp - 4]
add eax, dword [ebp - 0x150]
mov dword [ebp - 4], eax
push 1
push 0x2701
lea eax, [ebp - 0x14]
push eax
lea eax, [ebp - 0x10]
push eax
push 0x742d
push 0x6001
push 1
push 0xc1d
push 0x3675
push 0x16e7
push 1
lea eax, [ebp - 4]
push eax
push 0x6bc9
call fcn.0040f501
add esp, 0x34
push 1
push 0x770a
push 0x6e5f
push 0x6115
lea eax, [ebp - 4]
push eax
push 0x6218
push 0x2d87
push 1
push 0x4a4a
call fcn.0040f66a
add esp, 0x24
lea ecx, [ebp - 0x374]
call fcn.004129ba
jmp 0x4106f4
and dword [ebp - 0x70], 0
jmp 0x41084b
mov eax, dword [ebp - 0x70]
inc eax
mov dword [ebp - 0x70], eax
mov eax, dword [ebp - 0x28]
mov ecx, dword [ebp - 4]
sub ecx, dword [eax]
mov eax, dword [ebp - 0x28]
mov eax, dword [eax + 4]
sub eax, ecx
cmp dword [ebp - 0x70], eax
jae 0x410894
lea eax, [ebp - 0x10]
push eax
push 0x7f
push 0
push 0x4d71
lea eax, [ebp - 0x70]
push eax
lea eax, [ebp - 0x14]
push eax
push 0x39d4
push 0x321f
push 1
lea eax, [ebp - 4]
push eax
push 0x190
call fcn.0040f759
add esp, 0x2c
jmp 0x410844
push 0x6e94
lea eax, [ebp - 0x28]
push eax
push 1
push 0x1acf
push 0x5115
push 0x73c2
push 0x29ba
lea eax, [ebp - 0x70]
push eax
push 1
push 0x143e
push 0x29d1
call fcn.0040f759
add esp, 0x2c
lea ecx, [ebp - 0x35c]
call fcn.004129ba
lea ecx, [ebp - 0x344]
call fcn.004129ba
jmp 0x41090d
mov eax, dword [ebp - 0x204]
mov dword [ebp - 0x1e8], eax
mov eax, dword [ebp - 0x1e8]
mov dword [ebp - 0x19c], eax
mov eax, dword [ebp - 0x19c]
mov eax, dword [eax]
inc eax
inc eax
mov ecx, dword [ebp - 0x19c]
mov dword [ecx], eax
jmp 0x4113d8
mov eax, dword [ebp + 0xc]
mov dword [ebp - 0x1f0], eax
mov eax, dword [ebp + 0x14]
mov dword [ebp - 0x220], eax
lea eax, [ebp + 0x10]
mov dword [ebp - 0x240], eax
mov eax, dword [ebp + 8]
mov dword [ebp - 0x210], eax
mov eax, dword [ebp + 0x24]
mov dword [ebp - 0x22c], eax
mov dword [ebp - 0xf0], 0xc68ec0ae
mov byte [ebp - 0x3d], 0
movzx eax, byte [ebp - 0x3d]
test eax, eax
je 0x410962
push 0
push 0x10b0
call dword [0xabc1c0]
mov dword [ebp - 0xf0], 0xffffffe9
jmp 0x41097b
mov eax, dword [ebp - 0xf0]
inc eax
mov dword [ebp - 0xf0], eax
cmp dword [ebp - 0xf0], 0xffffffef
jne 0x4109aa
mov byte [ebp - 0x3a], 0
movzx eax, byte [ebp - 0x3a]
test eax, eax
je 0x4109a8
push 0x694
push 0
push 0
push 0
push 0
push 0xbf0
call dword [0xabc1b8]
jmp 0x41096e
mov eax, dword [ebp - 0x240]
movzx eax, byte [eax]
test eax, eax
je 0x410da5
mov eax, dword [ebp - 0x1f0]
mov dword [ebp - 0x23c], eax
mov eax, dword [ebp - 0x22c]
mov dword [ebp - 0x200], eax
mov dword [ebp - 0x4c], 0x7e2799ac
mov dword [ebp - 0x4c], 0
jmp 0x4109ea
mov eax, dword [ebp - 0x4c]
dec eax
mov dword [ebp - 0x4c], eax
cmp dword [ebp - 0x4c], 0xfffffff2
je 0x410b05
push 4
lea ecx, [ebp - 0x308]
call fcn.00412a53
mov dword [ebp - 0xe8], 0x9cc14173
mov dword [ebp - 0x30], 0
jmp 0x410a1b
mov eax, dword [ebp - 0x30]
inc eax
mov dword [ebp - 0x30], eax
cmp dword [ebp - 0x30], 4
jge 0x410a37
push dword [ebp - 0x30]
lea ecx, [ebp - 0x308]
call fcn.00412b44
mov dword [eax], 0xfffffffd
jmp 0x410a14
mov dword [ebp - 0x30], 0
jmp 0x410a47
mov eax, dword [ebp - 0x30]
inc eax
mov dword [ebp - 0x30], eax
cmp dword [ebp - 0x30], 4
jge 0x410a5d
mov eax, dword [ebp - 0x30]
mov dword [ebp + eax*4 - 0x2b4], 0x2edc7555
jmp 0x410a40
push 4
pop eax
imul eax, eax, 3
mov dword [ebp + eax - 0x2b4], 0
jmp 0x410a8b
push 4
pop eax
imul eax, eax, 3
mov eax, dword [ebp + eax - 0x2b4]
inc eax
push 4
pop ecx
imul ecx, ecx, 3
mov dword [ebp + ecx - 0x2b4], eax
push 4
pop eax
imul eax, eax, 3
cmp dword [ebp + eax - 0x2b4], 3
jg 0x410ab8
mov byte [ebp - 0x3f], 0
movzx eax, byte [ebp - 0x3f]
test eax, eax
je 0x410ab6
push 0
push 0x1819
push 0
call dword [section..idata]
jmp 0x410a70
mov dword [ebp - 0xe8], 9
jmp 0x410ad1
mov eax, dword [ebp - 0xe8]
dec eax
mov dword [ebp - 0xe8], eax
cmp dword [ebp - 0xe8], 1
jge 0x410af5
mov byte [ebp - 0x3b], 0
movzx eax, byte [ebp - 0x3b]
test eax, eax
je 0x410af3
push 0
push 0x21e9
call dword [0xabc040]
jmp 0x410ac4
lea ecx, [ebp - 0x308]
call fcn.00412b28
jmp 0x4109e3
mov eax, dword [ebp - 0x4c]
mov dword [ebp - 0x4c], eax
mov dword [ebp - 0xc8], 0
mov dword [ebp - 0x1f8], 1
mov dword [ebp - 0xc4], 0
jmp 0x410b38
mov eax, dword [ebp - 0xc4]
inc eax
mov dword [ebp - 0xc4], eax
cmp dword [ebp - 0xc4], 3
jge 0x410b54
mov eax, dword [ebp - 0xc4]
mov dword [ebp + eax*4 - 0x3b8], 0xfffffffe
jmp 0x410b2b
mov dword [ebp - 0xc8], 0
jmp 0x410b6d
mov eax, dword [ebp - 0xc8]
inc eax
mov dword [ebp - 0xc8], eax
cmp dword [ebp - 0xc8], 2
jg 0x410b8f
mov dword [ebp - 0x174], 1
mov eax, dword [ebp - 0x174]
inc eax
mov dword [ebp - 0x174], eax
jmp 0x410b60
mov dword [ebp - 0x1f8], 0xfffffffc
mov eax, dword [ebp - 0x23c]
mov dword [ebp - 0x208], eax
mov eax, dword [ebp - 0x200]
mov dword [ebp - 0x234], eax
mov dword [ebp - 0x31c], 0xfffffff7
mov dword [ebp - 0x2fc], 0xffb871c7
mov dword [ebp - 0x30c], 3
mov dword [ebp - 0x2e8], 1
push 3
lea ecx, [ebp - 0x2e4]
call fcn.00412a53
mov dword [ebp - 0x310], 0x7d0b
mov dword [ebp - 0x2f8], 0
mov dword [ebp - 0x320], 0x52a28486
mov dword [ebp - 0x2bc], 0xfffffff7
mov dword [ebp - 0x2c0], 0x8bee6da
mov dword [ebp - 0x64], 0xbe72f236
push 2
lea ecx, [ebp - 0x298]
call fcn.00412a53
mov dword [ebp - 0x2cc], 0x8f60
mov dword [ebp - 0x278], 0xffff
mov dword [ebp - 0x274], 0xffff
mov dword [ebp - 0x270], 0xffff
mov dword [ebp - 0x26c], 0xffff
lea ecx, [ebp - 0x145]
call fcn.004017a5
push eax
lea eax, [ebp - 0x268]
push eax
lea eax, [ebp - 0x278]
push eax
lea ecx, [ebp - 0x37c]
call fcn.00412b53
push dword [eax + 4]
push dword [eax]
lea ecx, [ebp - 0x2d8]
call fcn.00412b02
mov dword [ebp - 0x18], 0
jmp 0x410ca3
mov eax, dword [ebp - 0x18]
inc eax
mov dword [ebp - 0x18], eax
cmp dword [ebp - 0x18], 3
jge 0x410cbf
push dword [ebp - 0x18]
lea ecx, [ebp - 0x2e4]
call fcn.00412b44
mov dword [eax], 0xfffffffc
jmp 0x410c9c
mov dword [ebp - 0x18], 0
jmp 0x410ccf
mov eax, dword [ebp - 0x18]
inc eax
mov dword [ebp - 0x18], eax
cmp dword [ebp - 0x18], 1
jge 0x410ce5
mov eax, dword [ebp - 0x18]
mov dword [ebp + eax*4 - 0x314], 0xa12535b5
jmp 0x410cc8
mov dword [ebp - 0x18], 0
jmp 0x410cf5
mov eax, dword [ebp - 0x18]
inc eax
mov dword [ebp - 0x18], eax
cmp dword [ebp - 0x18], 2
jge 0x410d11
push dword [ebp - 0x18]
lea ecx, [ebp - 0x298]
call fcn.00412b44
mov dword [eax], 0xf2fea276
jmp 0x410cee
push 1
lea ecx, [ebp - 0x2d8]
call fcn.00412b44
mov dword [ebp - 0x1b8], eax
mov eax, dword [ebp - 0x1b8]
mov eax, dword [eax]
inc eax
mov ecx, dword [ebp - 0x1b8]
mov dword [ecx], eax
mov dword [ebp - 0x64], 0
jmp 0x410d45
mov eax, dword [ebp - 0x64]
inc eax
mov dword [ebp - 0x64], eax
cmp dword [ebp - 0x64], 2
jge 0x410d61
push dword [ebp - 0x64]
lea ecx, [ebp - 0x298]
call fcn.00412b44
mov dword [eax], 0x11e3584f
jmp 0x410d3e
lea ecx, [ebp - 0x2d8]
call fcn.00412b28
lea ecx, [ebp - 0x298]
call fcn.00412b28
lea ecx, [ebp - 0x2e4]
call fcn.00412b28
push 0xf
push 5
call fcn.0040b9bb
pop ecx
pop ecx
mov ecx, dword [ebp - 0x234]
add eax, dword [ecx]
mov ecx, dword [ebp - 0x208]
mov ecx, dword [ecx]
mov dword [ecx + 4], eax
jmp 0x4113d8
push 2
lea ecx, [ebp - 0x2a4]
call fcn.00412a53
mov dword [ebp - 0x224], 0xeede0b40
mov dword [ebp - 0xd0], 0
jmp 0x410dd5
mov eax, dword [ebp - 0xd0]
inc eax
mov dword [ebp - 0xd0], eax
cmp dword [ebp - 0xd0], 2
jge 0x410df7
push dword [ebp - 0xd0]
lea ecx, [ebp - 0x2a4]
call fcn.00412b44
mov dword [eax], 0xf43b7c7c
jmp 0x410dc8
mov byte [ebp - 0x39], 0
movzx eax, byte [ebp - 0x39]
test eax, eax
je 0x410e12
push 0
push 0x221
push 0
call dword [0xabc0c0]
push 0
lea ecx, [ebp - 0x2a4]
call fcn.00412b44
mov eax, dword [eax]
mov dword [ebp - 0x224], eax
lea ecx, [ebp - 0x2a4]
call fcn.00412b28
mov eax, dword [ebp - 0x210]
mov dword [ebp - 0x1dc], eax
mov dword [ebp - 0x5c], 0x3fcb50bf
mov dword [ebp - 0x58], 0xf6cc9ca3
mov dword [ebp - 0x6c], 0xfffffff7
push 1
lea ecx, [ebp - 0x2f4]
call fcn.00412a53
mov dword [ebp - 0x34], 0
jmp 0x410e70
mov eax, dword [ebp - 0x34]
inc eax
mov dword [ebp - 0x34], eax
cmp dword [ebp - 0x34], 4
jge 0x410e86
mov eax, dword [ebp - 0x34]
mov dword [ebp + eax*4 - 0x264], 0xa8eac8b
jmp 0x410e69
mov dword [ebp - 0x34], 0
jmp 0x410e96
mov eax, dword [ebp - 0x34]
inc eax
mov dword [ebp - 0x34], eax
cmp dword [ebp - 0x34], 1
jge 0x410eaf
push dword [ebp - 0x34]
lea ecx, [ebp - 0x2f4]
call fcn.00412b44
or dword [eax], 0xffffffff
jmp 0x410e8f
mov dword [ebp - 0x5c], 3
jmp 0x410ebf
mov eax, dword [ebp - 0x5c]
dec eax
mov dword [ebp - 0x5c], eax
cmp dword [ebp - 0x5c], 0
jl 0x4110b0
mov dword [ebp - 0x17c], 5
mov dword [ebp - 0x158], 0x23d4
mov dword [ebp - 0x17c], 0x6942a1e9
push 4
pop eax
imul eax, eax, 3
mov eax, dword [ebp + eax - 0x264]
mov dword [ebp - 0x2b8], eax
push 4
pop eax
shl eax, 1
mov ecx, dword [ebp - 0x158]
cmp dword [ebp + eax - 0x264], ecx
jge 0x410f23
mov eax, 0xcf04
test eax, eax
je 0x410f23
mov dword [ebp - 0x1a4], 1
jmp 0x410f2a
and dword [ebp - 0x1a4], 0
mov eax, dword [ebp - 0x17c]
mov dword [ebp - 0x58], eax
mov eax, dword [ebp - 0x5c]
imul eax, dword [ebp - 0x58]
cmp eax, dword [ebp - 0x1a4]
je 0x410f4e
mov dword [ebp - 0x184], 1
jmp 0x410f55
and dword [ebp - 0x184], 0
cmp dword [ebp - 0x184], 0xd0c1
jle 0x410f83
push 4
pop eax
imul eax, eax, 3
cmp dword [ebp + eax - 0x264], 0
jne 0x410f83
mov eax, 0xd2668451
test eax, eax
jne 0x410f83
and dword [ebp - 0x228], 0
jmp 0x410f8d
mov dword [ebp - 0x228], 1
mov eax, dword [ebp - 0x5c]
imul eax, dword [ebp - 0x158]
push 4
pop ecx
imul ecx, ecx, 0
cmp eax, dword [ebp + ecx - 0x264]
jle 0x410fb2
mov dword [ebp - 0x1bc], 1
jmp 0x410fb9
and dword [ebp - 0x1bc], 0
cmp dword [ebp - 0x1bc], 0x13ca4d9a
jge 0x410fd1
mov dword [ebp - 0x18c], 1
jmp 0x410fd8
and dword [ebp - 0x18c], 0
mov eax, dword [ebp - 0x158]
add eax, dword [ebp - 0x18c]
cmp eax, 0x3a7ef23e
jge 0x410ff7
mov dword [ebp - 0x1ac], 1
jmp 0x410ffe
and dword [ebp - 0x1ac], 0
push 4
pop eax
shl eax, 0
mov eax, dword [ebp + eax - 0x264]
cmp dword [ebp - 0x1ac], eax
jle 0x41101f
mov dword [ebp - 0x194], 1
jmp 0x411026
and dword [ebp - 0x194], 0
mov eax, dword [ebp - 0x194]
mov dword [ebp - 0x6c], eax
mov dword [ebp - 0x6c], 3
jmp 0x41103f
mov eax, dword [ebp - 0x6c]
dec eax
mov dword [ebp - 0x6c], eax
cmp dword [ebp - 0x6c], 0
jl 0x4110ab
mov dword [ebp - 0x218], 0x2a1e
mov dword [ebp - 0x58], 3
jmp 0x41105f
mov eax, dword [ebp - 0x58]
dec eax
mov dword [ebp - 0x58], eax
cmp dword [ebp - 0x58], 0
jl 0x411086
mov dword [ebp - 0x230], 0x8694a219
cmp dword [ebp - 0x218], 0
je 0x41107a
jmp 0x411086
mov dword [ebp - 0x230], 0x782ecc90
jmp 0x411058
mov byte [ebp - 0x41], 0
movzx eax, byte [ebp - 0x41]
test eax, eax
je 0x4110a9
push 0
push 0x892
push 0x1cc2
push 0xcf8
call dword [0xabc034]
jmp 0x411038
jmp 0x410eb8
mov byte [ebp - 0x42], 0
movzx eax, byte [ebp - 0x42]
test eax, eax
je 0x4110cd
push 0
push 0
push 0x17df
push 0
call dword [0xabc098]
lea ecx, [ebp - 0x2f4]
call fcn.00412b28
mov eax, dword [ebp - 0x220]
mov dword [ebp - 0x1f4], eax
mov dword [ebp - 0x2c], 0x8d327cb3
mov dword [ebp - 0x38], 0xdb959c45
mov byte [ebp - 0x3c], 0
movzx eax, byte [ebp - 0x3c]
test eax, eax
je 0x411117
push 0
push 0x86b
push 0x7b
push 0x2337
push 0xb88
call dword [0xabc1d4]
cmp dword [ebp - 0x2c], 0
je 0x411210
mov dword [ebp - 0x168], 0xc2fdcba8
mov dword [ebp - 0x1e0], 1
mov eax, dword [ebp - 0x2c]
mov dword [ebp - 0x2c], eax
cmp dword [ebp - 0x168], 0
je 0x411159
mov eax, 0xa47c
test eax, eax
je 0x411159
mov dword [ebp - 0x160], 1
jmp 0x411160
and dword [ebp - 0x160], 0
cmp dword [ebp - 0x160], 0x5fac1226
jge 0x411178
mov dword [ebp - 0x170], 1
jmp 0x41117f
and dword [ebp - 0x170], 0
mov eax, dword [ebp - 0x168]
cmp dword [ebp - 0x170], eax
jle 0x4111a2
mov eax, 0x831e
test eax, eax
je 0x4111a2
mov dword [ebp - 0x15c], 1
jmp 0x4111a9
and dword [ebp - 0x15c], 0
mov eax, dword [ebp - 0x2c]
cmp eax, dword [ebp - 0x15c]
jg 0x4111c0
mov dword [ebp - 0x180], 1
jmp 0x4111c7
and dword [ebp - 0x180], 0
mov eax, dword [ebp - 0x180]
mov dword [ebp - 0x1e0], eax
mov dword [ebp - 0x38], 0xa8b35eda
mov byte [ebp - 0x40], 0
movzx eax, byte [ebp - 0x40]
test eax, eax
je 0x41120b
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0x1466
push 0x792
push 0x260
push 0
call dword [0xabc008]
jmp 0x4113a2
mov dword [ebp - 0x28c], 0x29694d2b
mov dword [ebp - 0x288], 0x29694d2b
mov dword [ebp - 0x284], 0x29694d2b
mov dword [ebp - 0x280], 0x29694d2b
lea ecx, [ebp - 0x151]
call fcn.004017a5
push eax
lea eax, [ebp - 0x27c]
push eax
lea eax, [ebp - 0x28c]
push eax
lea ecx, [ebp - 0x32c]
call fcn.00412b53
push dword [eax + 4]
push dword [eax]
lea ecx, [ebp - 0x254]
call fcn.00412b02
mov dword [ebp - 0xec], 0
jmp 0x411286
mov eax, dword [ebp - 0xec]
inc eax
mov dword [ebp - 0xec], eax
cmp dword [ebp - 0xec], 2
jge 0x4112a2
mov eax, dword [ebp - 0xec]
mov dword [ebp + eax*4 - 0x2c8], 0xd8d955a6
jmp 0x411279
mov dword [ebp - 0x38], 1
push 1
lea ecx, [ebp - 0x254]
call fcn.00412b44
cmp dword [eax], 0
je 0x411350
mov dword [ebp - 0x1e4], 0xe91b76e1
mov dword [ebp - 0x188], 3
mov dword [ebp - 0x38], 0
jmp 0x4112e3
mov eax, dword [ebp - 0x38]
inc eax
mov dword [ebp - 0x38], eax
cmp dword [ebp - 0x38], 4
jge 0x4112ff
push dword [ebp - 0x38]
lea ecx, [ebp - 0x254]
call fcn.00412b44
mov dword [eax], 5
jmp 0x4112dc
mov dword [ebp - 0x2c], 0xf
jmp 0x41130f
mov eax, dword [ebp - 0x2c]
inc eax
mov dword [ebp - 0x2c], eax
cmp dword [ebp - 0x2c], 0x16
je 0x41134e
mov eax, dword [ebp - 0x2c]
mov dword [ebp - 0x324], eax
mov eax, dword [ebp - 0x2c]
mov dword [ebp - 0x318], eax
imul eax, dword [ebp - 0x1e4], 0xfffffff9
sub eax, 0xffff
mov dword [ebp - 0x188], eax
push 4
pop eax
imul eax, eax, 0
mov ecx, dword [ebp - 0x188]
mov dword [ebp + eax - 0x2c8], ecx
jmp 0x411308
jmp 0x411397
xor eax, eax
inc eax
je 0x411373
push 3
lea ecx, [ebp - 0x254]
call fcn.00412b44
cmp dword [eax], 0
je 0x411373
mov dword [ebp - 0x190], 1
jmp 0x41137a
and dword [ebp - 0x190], 0
mov eax, dword [ebp - 0x190]
mov dword [ebp - 0x38], eax
mov byte [ebp - 0x3e], 0
movzx eax, byte [ebp - 0x3e]
test eax, eax
je 0x411397
push 0
call dword [0xabc0b8]
lea ecx, [ebp - 0x254]
call fcn.00412b28
mov eax, dword [ebp - 0x1dc]
mov dword [ebp - 0x1fc], eax
mov eax, dword [ebp - 0x1f4]
mov dword [ebp - 0x198], eax
mov eax, dword [ebp - 0x198]
mov eax, dword [eax]
mov ecx, dword [ebp - 0x198]
mov ecx, dword [ecx]
mov eax, dword [eax + 0x14]
sub eax, dword [ecx + 0xc]
mov ecx, dword [ebp - 0x1fc]
mov dword [ecx], eax
mov esp, ebp
pop ebp
ret