Function at 0x1001f664
Capabilities:
Contain obfuscated stackstrings
Enumerate pe sections
Parse pe header
Resolve function by parsing pe exports

Disassembly:
push ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x100727c3
mov eax, dword fs:[0]
push eax
mov dword fs:[0], esp
sub esp, 0x3d0
and dword [ebp - 0x14], 0
movzx eax, byte [ebp + 0x44]
test eax, eax
je 0x10020eab
mov eax, dword [ebp + 8]
mov dword [ebp - 0x250], eax
mov eax, dword [ebp + 0x2c]
mov dword [ebp - 0x29c], eax
mov eax, dword [ebp + 0xc]
mov dword [ebp - 0x2dc], eax
mov eax, dword [ebp + 0x30]
mov dword [ebp - 0x2b0], eax
lea eax, [ebp + 0x3c]
mov dword [ebp - 0x2b8], eax
mov eax, dword [ebp + 0x20]
mov dword [ebp - 0x2d4], eax
mov eax, dword [ebp + 0x38]
mov dword [ebp - 0x258], eax
mov eax, dword [ebp - 0x2b8]
movzx eax, byte [eax]
test eax, eax
je 0x10020dfd
mov eax, dword [ebp - 0x29c]
mov dword [ebp - 0x20], eax
mov eax, dword [ebp - 0x20]
mov dword [ebp - 0x1e8], eax
mov eax, dword [ebp - 0x1e8]
movzx eax, word [eax]
cmp eax, 0x5a4d
je 0x1001f709
jmp 0x100211ef
mov eax, dword [ebp - 0x1e8]
mov ecx, dword [ebp - 0x20]
add ecx, dword [eax + 0x3c]
mov dword [ebp - 0x3c], ecx
mov eax, dword [ebp - 0x3c]
cmp dword [eax], 0x4550
je 0x1001f95b
mov dword [ebp - 0x2a4], 0x1eba
cmp dword [ebp - 0x2a4], 0x1268
jge 0x1001f956
lea ecx, [ebp - 0x304]
call fcn.100109b8
and dword [ebp - 4], 0
mov dword [ebp - 0x180], 1
jmp 0x1001f769
mov eax, dword [ebp - 0x180]
inc eax
mov dword [ebp - 0x180], eax
lea edx, [ebp - 0x304]
mov ecx, 0x10662d10
call fcn.10023fa8
mov dword [ebp - 0x1cc], eax
mov eax, dword [ebp - 0x1cc]
mov eax, dword [eax]
mov ecx, dword [ebp - 0x1cc]
add ecx, dword [eax + 4]
call fcn.1000f851
movzx eax, al
test eax, eax
je 0x1001f947
mov edx, 0x1000dec8
lea ecx, [ebp - 0x304]
call fcn.10023fad
movzx eax, al
test eax, eax
je 0x1001f947
push dword [ebp - 0x180]
mov edx, 0x1000decc
mov ecx, 0x10662c58
call fcn.10014630
mov ecx, eax
call fcn.10010c1d
mov edx, 0x1000daa8
mov ecx, eax
call fcn.10014630
mov edx, 0x1000ded4
lea ecx, [ebp - 0x304]
call fcn.10023f4a
movzx eax, al
test eax, eax
je 0x1001f81a
push fcn.100145fe
mov edx, 0x1000dedc
mov ecx, 0x10662c58
call fcn.10014630
mov ecx, eax
call fcn.10010c11
jmp 0x1001f942
mov edx, 0x1000dee4
lea ecx, [ebp - 0x304]
call fcn.10023f4a
movzx eax, al
test eax, eax
je 0x1001f851
push fcn.100145fe
mov edx, 0x1000deec
mov ecx, 0x10662c58
call fcn.10014630
mov ecx, eax
call fcn.10010c11
jmp 0x1001f942
mov edx, 0x1000def4
lea ecx, [ebp - 0x304]
call fcn.10023f4a
movzx eax, al
test eax, eax
je 0x1001f888
push fcn.100145fe
mov edx, 0x1000defc
mov ecx, 0x10662c58
call fcn.10014630
mov ecx, eax
call fcn.10010c11
jmp 0x1001f942
mov edx, 0x1000df04
lea ecx, [ebp - 0x304]
call fcn.10023f4a
movzx eax, al
test eax, eax
je 0x1001f8bf
push fcn.100145fe
mov edx, 0x1000df0c
mov ecx, 0x10662c58
call fcn.10014630
mov ecx, eax
call fcn.10010c11
jmp 0x1001f942
mov edx, 0x1000df14
lea ecx, [ebp - 0x304]
call fcn.10023f4a
movzx eax, al
test eax, eax
je 0x1001f8f3
push fcn.100145fe
mov edx, 0x1000df1c
mov ecx, 0x10662c58
call fcn.10014630
mov ecx, eax
call fcn.10010c11
jmp 0x1001f942
mov edx, 0x1000df24
lea ecx, [ebp - 0x304]
call fcn.10023f4a
movzx eax, al
test eax, eax
je 0x1001f927
push fcn.100145fe
mov edx, 0x1000df34
mov ecx, 0x10662c58
call fcn.10014630
mov ecx, eax
call fcn.10010c11
jmp 0x1001f942
push fcn.100145fe
mov edx, 0x1000df3c
mov ecx, 0x10662c58
call fcn.10014630
mov ecx, eax
call fcn.10010c11
jmp 0x1001f75c
or dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0x304]
call fcn.100109f8
jmp 0x100211ef
push 8
pop eax
imul eax, eax, 0
mov ecx, dword [ebp - 0x3c]
lea eax, [ecx + eax + 0x78]
mov dword [ebp - 0x30], eax
mov eax, dword [ebp - 0x30]
cmp dword [eax + 4], 0
jne 0x1001f979
jmp 0x100211ef
and dword [ebp - 0x24], 0
mov eax, dword [ebp - 0x3c]
movzx eax, word [eax + 0x14]
mov ecx, dword [ebp - 0x3c]
lea eax, [ecx + eax + 0x18]
mov dword [ebp - 0x44], eax
and dword [ebp - 0x188], 0
jmp 0x1001f9ad
mov eax, dword [ebp - 0x188]
inc eax
mov dword [ebp - 0x188], eax
mov eax, dword [ebp - 0x44]
add eax, 0x28
mov dword [ebp - 0x44], eax
mov eax, dword [ebp - 0x3c]
movzx eax, word [eax + 6]
cmp dword [ebp - 0x188], eax
jge 0x1001fa3a
mov eax, dword [ebp - 0x44]
mov eax, dword [eax + 0xc]
mov dword [ebp - 0x1d4], eax
mov eax, dword [ebp - 0x30]
mov eax, dword [eax]
cmp eax, dword [ebp - 0x1d4]
jb 0x1001fa35
mov eax, dword [ebp - 0x3c]
push dword [eax + 0x38]
mov eax, dword [ebp - 0x44]
push dword [eax + 8]
call fcn.1001ebd9
pop ecx
pop ecx
add eax, dword [ebp - 0x1d4]
mov dword [ebp - 0x2ac], eax
mov eax, dword [ebp - 0x30]
mov eax, dword [eax]
cmp eax, dword [ebp - 0x2ac]
jae 0x1001fa35
lea eax, [ebp - 0x24]
push eax
push 0x48c7
push 0x3c00
push 0x3d53
lea eax, [ebp - 0x44]
push eax
push 0x195e
push 0x7e2b
push 0x3df4
push 0
push 0
call fcn.1001f32c
add esp, 0x28
jmp 0x1001fa3a
jmp 0x1001f997
cmp dword [ebp - 0x24], 0
jne 0x1001fa45
jmp 0x100211ef
mov eax, dword [ebp - 0x30]
mov ecx, dword [ebp - 0x24]
add ecx, dword [eax]
add ecx, dword [ebp - 0x20]
mov dword [ebp - 0x18], ecx
xor ecx, ecx
call fcn.10015470
push eax
call fcn.10059559
pop ecx
mov byte [ebp - 0xf0], 8
mov byte [ebp - 0xef], 0xec
mov byte [ebp - 0xee], 1
mov byte [ebp - 0xed], 5
mov byte [ebp - 0xec], 5
mov byte [ebp - 0xeb], 4
mov byte [ebp - 0xea], 6
mov byte [ebp - 0xe9], 0
mov byte [ebp - 0xe8], 7
mov byte [ebp - 0xe7], 7
mov byte [ebp - 0xe6], 0
mov byte [ebp - 0xe5], 7
mov byte [ebp - 0xe4], 9
mov byte [ebp - 0xe3], 1
mov byte [ebp - 0xe2], 3
mov byte [ebp - 0xe1], 7
mov byte [ebp - 0xe0], 4
mov byte [ebp - 0xdf], 0xf
mov byte [ebp - 0xde], 0x2c
mov byte [ebp - 0xdd], 0xf9
mov byte [ebp - 0xdc], 0x42
mov byte [ebp - 0xdb], 0x46
mov byte [ebp - 0xda], 0x31
mov byte [ebp - 0xd9], 0x1f
mov byte [ebp - 0xd8], 0x46
mov byte [ebp - 0xd7], 0xb7
mov byte [ebp - 0xd6], 0x45
mov byte [ebp - 0xd5], 3
mov byte [ebp - 0xd4], 0xb4
mov byte [ebp - 0xd3], 0xc9
mov byte [ebp - 0xd2], 0x11
mov byte [ebp - 0xd1], 0x60
mov byte [ebp - 0xd0], 0x27
mov byte [ebp - 0xcf], 0x78
mov byte [ebp - 0xce], 0xfe
mov byte [ebp - 0xcd], 4
mov byte [ebp - 0xcc], 0x47
mov byte [ebp - 0xcb], 0x63
mov byte [ebp - 0xca], 0x1a
mov byte [ebp - 0xc9], 0xe5
mov byte [ebp - 0xc8], 0xbf
mov byte [ebp - 0xc7], 0x8e
mov byte [ebp - 0xc6], 0x8b
mov byte [ebp - 0xc5], 0x9c
mov byte [ebp - 0xc4], 0xb9
mov byte [ebp - 0xc3], 0xf5
mov byte [ebp - 0xc2], 0xb9
mov byte [ebp - 0xc1], 0x32
mov byte [ebp - 0xc0], 0xb0
mov byte [ebp - 0xbf], 0x27
mov byte [ebp - 0xbe], 0x44
mov byte [ebp - 0xbd], 0xae
mov byte [ebp - 0xbc], 0x17
mov byte [ebp - 0xbb], 0x56
mov byte [ebp - 0xba], 0x14
mov byte [ebp - 0xb9], 0xf3
mov byte [ebp - 0xb8], 0x22
mov byte [ebp - 0xb7], 0x24
mov byte [ebp - 0xb6], 0xe9
mov byte [ebp - 0xb5], 0x37
mov byte [ebp - 0xb4], 0x24
mov byte [ebp - 0xb3], 0xfb
mov byte [ebp - 0xb2], 0x76
mov byte [ebp - 0xb1], 2
mov byte [ebp - 0xb0], 0xf
xor eax, eax
inc eax
shl eax, 0
movzx eax, byte [ebp + eax - 0xf0]
or eax, 0xdc
xor ecx, ecx
inc ecx
shl ecx, 0
movzx ecx, byte [ebp + ecx - 0xf0]
and ecx, 0xdc
sub eax, ecx
xor ecx, ecx
inc ecx
imul ecx, ecx, 0
movzx ecx, byte [ebp + ecx - 0xf0]
mov byte [ebp + ecx - 0x1f8], al
mov dword [ebp - 0x1c], 2
and dword [ebp - 0x4c], 0
jmp 0x1001fc7b
mov eax, dword [ebp - 0x1c]
inc eax
inc eax
mov dword [ebp - 0x1c], eax
cmp dword [ebp - 0x1c], 0x41
jae 0x1001fd6a
xor eax, eax
inc eax
imul eax, eax, 0
movzx eax, byte [ebp + eax - 0xf0]
lea eax, [eax + eax + 2]
cmp dword [ebp - 0x1c], eax
jne 0x1001fcc2
mov eax, dword [ebp - 0x1c]
movzx eax, byte [ebp + eax - 0xf0]
inc eax
mov dword [ebp - 0x4c], eax
mov eax, dword [ebp - 0x1c]
movzx eax, byte [ebp + eax - 0xf0]
mov ecx, dword [ebp - 0x1c]
lea eax, [ecx + eax - 1]
mov dword [ebp - 0x1c], eax
jmp 0x1001fc73
mov eax, dword [ebp - 0x1c]
movzx eax, byte [ebp + eax - 0xef]
mov ecx, dword [ebp - 0x1c]
sub ecx, dword [ebp - 0x4c]
movzx ecx, byte [ebp + ecx - 0xf2]
movsx ecx, byte [ebp + ecx - 0x1f8]
add eax, ecx
mov ecx, dword [ebp - 0x1c]
movzx ecx, byte [ebp + ecx - 0xef]
mov edx, dword [ebp - 0x1c]
sub edx, dword [ebp - 0x4c]
movzx edx, byte [ebp + edx - 0xf2]
movsx edx, byte [ebp + edx - 0x1f8]
and ecx, edx
sub eax, ecx
mov ecx, dword [ebp - 0x1c]
movzx ecx, byte [ebp + ecx - 0xef]
mov edx, dword [ebp - 0x1c]
sub edx, dword [ebp - 0x4c]
movzx edx, byte [ebp + edx - 0xf2]
movsx edx, byte [ebp + edx - 0x1f8]
and ecx, edx
sub eax, ecx
mov ecx, dword [ebp - 0x1c]
movzx ecx, byte [ebp + ecx - 0xf0]
mov byte [ebp + ecx - 0x1f8], al
push 0x7b9b
push 0x471e
push 0x207
push 1
push 0x5a4b
push 0
lea eax, [ebp - 0x4c]
push eax
call fcn.1001f565
add esp, 0x1c
jmp 0x1001fc73
xor eax, eax
inc eax
imul eax, eax, 0xa
mov byte [ebp + eax - 0x1f8], 0
lea eax, [ebp - 0x1f8]
push eax
lea ecx, [ebp - 0x394]
call fcn.10022af4
mov dword [ebp - 0x2e4], eax
mov eax, dword [ebp - 0x2e4]
mov dword [ebp - 0x2ec], eax
mov dword [ebp - 4], 1
push 0xa
xor edx, edx
mov ecx, dword [ebp - 0x2ec]
call fcn.10015435
pop ecx
mov dword [ebp - 0x218], eax
or dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0x394]
call fcn.10022b7c
and dword [ebp - 0x98], 0
jmp 0x1001fdde
mov eax, dword [ebp - 0x98]
inc eax
mov dword [ebp - 0x98], eax
cmp dword [ebp - 0x98], 0xb
jae 0x1001fdf7
mov eax, dword [ebp - 0x98]
mov byte [ebp + eax - 0x1f8], 0
jmp 0x1001fdd1
mov byte [ebp - 0x168], 5
mov byte [ebp - 0x167], 5
mov byte [ebp - 0x166], 6
mov byte [ebp - 0x165], 8
mov byte [ebp - 0x164], 4
mov byte [ebp - 0x163], 0xd
mov byte [ebp - 0x162], 8
mov byte [ebp - 0x161], 4
mov byte [ebp - 0x160], 3
mov byte [ebp - 0x15f], 2
mov byte [ebp - 0x15e], 0
mov byte [ebp - 0x15d], 3
mov byte [ebp - 0x15c], 0x61
mov byte [ebp - 0x15b], 0x94
mov byte [ebp - 0x15a], 0x6c
mov byte [ebp - 0x159], 0xc0
mov byte [ebp - 0x158], 0x9c
mov byte [ebp - 0x157], 0xfa
mov byte [ebp - 0x156], 0xcb
mov byte [ebp - 0x155], 0x1e
mov byte [ebp - 0x154], 0xb
mov byte [ebp - 0x153], 0xcb
mov byte [ebp - 0x152], 8
mov byte [ebp - 0x151], 0x4a
mov byte [ebp - 0x150], 0x7c
mov byte [ebp - 0x14f], 0x18
mov byte [ebp - 0x14e], 0x18
mov byte [ebp - 0x14d], 0x35
mov byte [ebp - 0x14c], 0x83
mov byte [ebp - 0x14b], 0x60
mov byte [ebp - 0x14a], 0x18
mov byte [ebp - 0x149], 0x6d
mov byte [ebp - 0x148], 0xb
mov byte [ebp - 0x147], 0xd3
mov byte [ebp - 0x146], 0xdf
mov byte [ebp - 0x145], 0xea
mov byte [ebp - 0x144], 0x54
mov byte [ebp - 0x143], 0x6d
mov byte [ebp - 0x142], 0x81
mov byte [ebp - 0x141], 0xb7
mov byte [ebp - 0x140], 0xcc
mov byte [ebp - 0x13f], 7
mov byte [ebp - 0x13e], 0x5f
mov byte [ebp - 0x13d], 0xb0
mov byte [ebp - 0x13c], 0x9b
mov byte [ebp - 0x13b], 0x2e
mov byte [ebp - 0x13a], 0x6b
mov byte [ebp - 0x139], 0xcc
mov byte [ebp - 0x138], 0x98
mov byte [ebp - 0x137], 0xdf
mov byte [ebp - 0x136], 0xde
mov byte [ebp - 0x135], 0x26
mov byte [ebp - 0x134], 8
mov byte [ebp - 0x133], 0xed
mov byte [ebp - 0x132], 0x4b
mov byte [ebp - 0x131], 0xb2
mov byte [ebp - 0x130], 0x32
mov byte [ebp - 0x12f], 0xa6
mov byte [ebp - 0x12e], 0xef
mov byte [ebp - 0x12d], 0x68
mov byte [ebp - 0x12c], 0xdb
mov byte [ebp - 0x12b], 0x1c
mov byte [ebp - 0x12a], 0xc3
mov byte [ebp - 0x129], 0x32
mov byte [ebp - 0x128], 0x24
mov byte [ebp - 0x127], 0xf
mov byte [ebp - 0x126], 0xef
mov byte [ebp - 0x125], 0xfc
mov byte [ebp - 0x124], 0xb5
mov byte [ebp - 0x123], 0x61
mov byte [ebp - 0x122], 0x5a
mov byte [ebp - 0x121], 0x40
mov byte [ebp - 0x120], 0xfa
mov byte [ebp - 0x11f], 0x18
mov byte [ebp - 0x11e], 0x62
mov byte [ebp - 0x11d], 0xc3
mov byte [ebp - 0x11c], 0xa8
mov byte [ebp - 0x11b], 0xca
mov byte [ebp - 0x11a], 0xf3
mov byte [ebp - 0x119], 0x83
mov byte [ebp - 0x118], 0xc9
mov byte [ebp - 0x117], 0x85
mov byte [ebp - 0x116], 0x99
mov byte [ebp - 0x115], 0x82
mov byte [ebp - 0x114], 0xb2
mov byte [ebp - 0x113], 6
mov byte [ebp - 0x112], 0xa6
mov byte [ebp - 0x111], 0x5e
mov byte [ebp - 0x110], 0xfd
mov byte [ebp - 0x10f], 0xd8
mov byte [ebp - 0x10e], 0x2e
mov byte [ebp - 0x10d], 0xf7
mov byte [ebp - 0x10c], 0xf1
mov byte [ebp - 0x10b], 0x2b
mov byte [ebp - 0x10a], 0x59
mov byte [ebp - 0x109], 0x8d
mov byte [ebp - 0x108], 0x7f
mov byte [ebp - 0x107], 0x6e
mov byte [ebp - 0x106], 0x4c
mov byte [ebp - 0x105], 0x84
mov byte [ebp - 0x104], 0x30
mov byte [ebp - 0x103], 0x96
mov byte [ebp - 0x102], 0xb7
mov byte [ebp - 0x101], 0x57
mov byte [ebp - 0x100], 0xac
mov byte [ebp - 0xff], 0x95
mov byte [ebp - 0xfe], 0xc3
mov byte [ebp - 0xfd], 0x5c
mov byte [ebp - 0xfc], 0xc5
mov byte [ebp - 0xfb], 0xd2
mov byte [ebp - 0xfa], 7
mov byte [ebp - 0xf9], 7
mov byte [ebp - 0xf8], 1
mov byte [ebp - 0xf7], 0
mov byte [ebp - 0xf6], 9
mov byte [ebp - 0xf5], 6
mov byte [ebp - 0xf4], 2
mov byte [ebp - 0xf3], 7
xor eax, eax
inc eax
shl eax, 0
movzx eax, byte [ebp + eax - 0x168]
or eax, 0x34
xor ecx, ecx
inc ecx
shl ecx, 0
movzx ecx, byte [ebp + ecx - 0x168]
and ecx, 0x34
sub eax, ecx
xor ecx, ecx
inc ecx
imul ecx, ecx, 0
movzx ecx, byte [ebp + ecx - 0x168]
mov byte [ebp + ecx - 0x204], al
mov dword [ebp - 0x28], 2
and dword [ebp - 0xa8], 0
jmp 0x10020182
mov eax, dword [ebp - 0x28]
inc eax
inc eax
mov dword [ebp - 0x28], eax
cmp dword [ebp - 0x28], 0x76
jae 0x1002025d
xor eax, eax
inc eax
imul eax, eax, 0
movzx eax, byte [ebp + eax - 0x168]
lea eax, [eax + eax + 2]
cmp dword [ebp - 0x28], eax
jne 0x100201cc
mov eax, dword [ebp - 0x28]
movzx eax, byte [ebp + eax - 0x168]
inc eax
mov dword [ebp - 0xa8], eax
mov eax, dword [ebp - 0x28]
movzx eax, byte [ebp + eax - 0x168]
mov ecx, dword [ebp - 0x28]
lea eax, [ecx + eax - 1]
mov dword [ebp - 0x28], eax
jmp 0x1002017a
mov eax, dword [ebp - 0x28]
movzx eax, byte [ebp + eax - 0x167]
mov ecx, dword [ebp - 0x28]
sub ecx, dword [ebp - 0xa8]
movzx ecx, byte [ebp + ecx - 0x16a]
movsx ecx, byte [ebp + ecx - 0x204]
or eax, ecx
mov ecx, dword [ebp - 0x28]
movzx ecx, byte [ebp + ecx - 0x167]
mov edx, dword [ebp - 0x28]
sub edx, dword [ebp - 0xa8]
movzx edx, byte [ebp + edx - 0x16a]
movsx edx, byte [ebp + edx - 0x204]
and ecx, edx
sub eax, ecx
mov ecx, dword [ebp - 0x28]
movzx ecx, byte [ebp + ecx - 0x168]
mov byte [ebp + ecx - 0x204], al
push 0x7d67
push 1
push 0x78c3
lea eax, [ebp - 0xa8]
push eax
push 0
push 0x1bb
push 0x331c
push 0x3e39
call fcn.1001f287
add esp, 0x20
jmp 0x1002017a
xor eax, eax
inc eax
imul eax, eax, 0xa
mov byte [ebp + eax - 0x204], 0
lea eax, [ebp - 0x204]
push eax
lea ecx, [ebp - 0x37c]
call fcn.10022af4
mov dword [ebp - 0x208], eax
mov eax, dword [ebp - 0x208]
mov dword [ebp - 0x210], eax
mov dword [ebp - 4], 2
push 0xa
xor edx, edx
mov ecx, dword [ebp - 0x210]
call fcn.10015435
pop ecx
mov dword [ebp - 0x2b4], eax
or dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0x37c]
call fcn.10022b7c
and dword [ebp - 0xac], 0
jmp 0x100202d1
mov eax, dword [ebp - 0xac]
inc eax
mov dword [ebp - 0xac], eax
cmp dword [ebp - 0xac], 0xb
jae 0x100202ea
mov eax, dword [ebp - 0xac]
mov byte [ebp + eax - 0x204], 0
jmp 0x100202c4
push dword [ebp - 0x2b4]
push dword [ebp - 0x218]
call fcn.1001ccae
pop ecx
pop ecx
mov dword [ebp - 0x1ec], eax
push 0x43f3
lea eax, [ebp - 0x3c]
push eax
push 0x232e
push 0x4e0e
push 0x34ec
push 0
push 1
push 0x1a7b
push 0x5f65
push 0x5988
push 0x1d14
push 1
push 0x1166
push 0x6c5f
lea eax, [ebp - 0x1ec]
push eax
push 0x6a55
call fcn.1001efd0
add esp, 0x40
push 0xf
push 5
call fcn.1001ccae
pop ecx
pop ecx
add eax, dword [ebp - 0x1ec]
mov ecx, dword [ebp - 0x18]
mov dword [ecx + 4], eax
and dword [ebp - 0x54], 0
mov eax, dword [ebp - 0x18]
cmp dword [eax + 0x18], 0
jbe 0x10020389
mov eax, dword [ebp - 0x18]
push dword [eax + 0x18]
push 0
call fcn.1001ccae
pop ecx
pop ecx
mov dword [ebp - 0x54], eax
mov eax, dword [ebp - 0x18]
mov eax, dword [eax + 0x1c]
mov dword [ebp - 0x10], eax
mov eax, dword [ebp - 0x18]
mov eax, dword [eax + 0x14]
sub eax, dword [ebp - 0x54]
mov dword [ebp - 0x48], eax
and dword [ebp - 0x90], 0
jmp 0x100203b4
mov eax, dword [ebp - 0x90]
inc eax
mov dword [ebp - 0x90], eax
mov eax, dword [ebp - 0x90]
cmp eax, dword [ebp - 0x48]
jge 0x1002044b
lea eax, [ebp - 0x24]
push eax
push 0
lea eax, [ebp - 0x44]
push eax
push 1
push 0x3c67
push 0x48e2
push 0x1603
push 0x352
lea eax, [ebp - 0x90]
push eax
push 0
push 0x683d
lea eax, [ebp - 0x298]
push eax
lea eax, [ebp - 0x18]
push eax
lea eax, [ebp - 0x20]
push eax
push 0x4b39
push 0x785e
push 0x6f3c
call fcn.1001f664
add esp, 0x44
mov eax, dword [ebp - 0x24]
add eax, dword [ebp - 0x10]
mov ecx, dword [ebp - 0x20]
mov edx, dword [ebp - 0x298]
mov dword [ecx + eax], edx
push 0x7071
lea eax, [ebp - 0x10]
push eax
push 0x67b2
push 0x68a9
push 0
call fcn.1001ec52
add esp, 0x14
jmp 0x100203a7
push 0x34c9
push 0
push 0x29c0
push 1
push 0x24b7
lea eax, [ebp - 0x54]
push eax
push 0x84f
push 0x17d8
push 0x38b3
push 1
push 0xc4f
push 0xa0d
push 0x5cb2
push 0x4a27
lea eax, [ebp - 0x18]
push eax
push 0x1d2a
push 0x5ace
call fcn.1001f664
add esp, 0x44
mov eax, dword [ebp - 0x18]
mov eax, dword [eax + 0x18]
sub eax, dword [ebp - 0x54]
mov dword [ebp - 0x48], eax
and dword [ebp - 0x190], 0
jmp 0x100204bf
mov eax, dword [ebp - 0x190]
inc eax
mov dword [ebp - 0x190], eax
mov eax, dword [ebp - 0x190]
cmp eax, dword [ebp - 0x48]
jge 0x10020506
push 1
lea eax, [ebp - 0x10]
push eax
lea eax, [ebp - 0x20]
push eax
push 0x6f78
push 0x5fd1
push 0x2ca6
push 0x740c
push 0
lea eax, [ebp - 0x24]
push eax
push 0x31b8
call fcn.1001ed2a
add esp, 0x28
mov eax, dword [ebp - 0x10]
add eax, 4
mov dword [ebp - 0x10], eax
jmp 0x100204b2
mov eax, dword [ebp - 0x48]
shl eax, 2
mov ecx, dword [ebp - 0x10]
sub ecx, eax
mov eax, dword [ebp - 0x18]
mov dword [eax + 0x20], ecx
push 0x2da4
push 0
push 1
push 0x1a09
push 0x6bba
lea eax, [ebp - 0x18]
push eax
push 0x68df
push 0x4593
push 0x2928
push 0x9ee
push 0x4885
push 0x4c65
lea eax, [ebp - 0x54]
push eax
push 0x73b0
call fcn.1001f424
add esp, 0x38
push 0x517d
push 0x5295
push 0x58d5
push 0x27aa
push 0x2398
push 1
push 0
lea eax, [ebp - 0x10]
push eax
lea eax, [ebp - 0x48]
push eax
lea eax, [ebp - 0x20]
push eax
lea eax, [ebp - 0x18]
push eax
push 1
push 0xf72
push 0x3b45
push 0x5aef
lea eax, [ebp - 0x24]
push eax
call fcn.1001efd0
add esp, 0x40
push 1
push 0x7935
push 0x401c
lea eax, [ebp - 0x10]
push eax
push 0x5d9c
push 0xb4b
lea eax, [ebp - 0x48]
push eax
push 1
push 0x679
lea eax, [ebp - 0x18]
push eax
call fcn.1001ed2a
add esp, 0x28
mov eax, dword [ebp - 0x18]
mov ecx, dword [ebp - 0x24]
add ecx, dword [eax + 0xc]
add ecx, dword [ebp - 0x20]
push ecx
lea ecx, [ebp - 0x334]
call fcn.10022af4
mov dword [ebp - 4], 3
lea ecx, [ebp - 0x334]
call fcn.100111e5
mov dword [ebp - 0x1e0], eax
push dword [ebp - 0x1e0]
mov eax, dword [ebp - 0x1e0]
shr eax, 1
push eax
call fcn.1001ccae
pop ecx
pop ecx
mov dword [ebp - 0x50], eax
mov byte [ebp - 0x84], 2
mov byte [ebp - 0x83], 0xfe
mov byte [ebp - 0x82], 1
mov byte [ebp - 0x81], 8
mov byte [ebp - 0x80], 0
mov byte [ebp - 0x7f], 0x4a
mov byte [ebp - 0x7e], 0x1f
mov byte [ebp - 0x7d], 0x4e
mov byte [ebp - 0x7c], 0x54
mov byte [ebp - 0x7b], 0x50
mov byte [ebp - 0x7a], 0x54
mov byte [ebp - 0x79], 0x26
mov byte [ebp - 0x78], 0xf6
mov byte [ebp - 0x77], 0x50
mov byte [ebp - 0x76], 0xc9
mov byte [ebp - 0x75], 0x5c
mov byte [ebp - 0x74], 0x43
mov byte [ebp - 0x73], 0xad
mov byte [ebp - 0x72], 0x61
mov byte [ebp - 0x71], 0x28
mov byte [ebp - 0x70], 0xb1
mov byte [ebp - 0x6f], 0x41
mov byte [ebp - 0x6e], 3
mov byte [ebp - 0x6d], 0x4d
mov byte [ebp - 0x6c], 0xd0
mov byte [ebp - 0x6b], 0x9f
mov byte [ebp - 0x6a], 0x6f
mov byte [ebp - 0x69], 0xc5
mov byte [ebp - 0x68], 0x47
mov byte [ebp - 0x67], 0x5c
mov byte [ebp - 0x66], 0x8d
mov byte [ebp - 0x65], 0x24
mov byte [ebp - 0x64], 0x3a
mov byte [ebp - 0x63], 0x2f
mov byte [ebp - 0x62], 0x1e
mov byte [ebp - 0x61], 0x54
mov byte [ebp - 0x60], 0xa4
mov byte [ebp - 0x5f], 0xab
mov byte [ebp - 0x5e], 3
mov byte [ebp - 0x5d], 0x42
xor eax, eax
inc eax
shl eax, 0
movzx eax, byte [ebp + eax - 0x84]
or eax, 0x92
xor ecx, ecx
inc ecx
shl ecx, 0
movzx ecx, byte [ebp + ecx - 0x84]
and ecx, 0x92
sub eax, ecx
xor ecx, ecx
inc ecx
imul ecx, ecx, 0
movzx ecx, byte [ebp + ecx - 0x84]
mov byte [ebp + ecx - 0x5c], al
mov dword [ebp - 0x2c], 2
and dword [ebp - 0xa4], 0
jmp 0x10020720
mov eax, dword [ebp - 0x2c]
inc eax
inc eax
mov dword [ebp - 0x2c], eax
cmp dword [ebp - 0x2c], 0x28
jae 0x100207fc
xor eax, eax
inc eax
imul eax, eax, 0
movzx eax, byte [ebp + eax - 0x84]
lea eax, [eax + eax + 2]
cmp dword [ebp - 0x2c], eax
jne 0x1002076a
mov eax, dword [ebp - 0x2c]
movzx eax, byte [ebp + eax - 0x84]
inc eax
mov dword [ebp - 0xa4], eax
mov eax, dword [ebp - 0x2c]
movzx eax, byte [ebp + eax - 0x84]
mov ecx, dword [ebp - 0x2c]
lea eax, [ecx + eax - 1]
mov dword [ebp - 0x2c], eax
jmp 0x10020718
mov eax, dword [ebp - 0x2c]
movzx eax, byte [ebp + eax - 0x83]
mov ecx, dword [ebp - 0x2c]
sub ecx, dword [ebp - 0xa4]
movzx ecx, byte [ebp + ecx - 0x86]
movsx ecx, byte [ebp + ecx - 0x5c]
or eax, ecx
mov ecx, dword [ebp - 0x2c]
movzx ecx, byte [ebp + ecx - 0x83]
mov edx, dword [ebp - 0x2c]
sub edx, dword [ebp - 0xa4]
movzx edx, byte [ebp + edx - 0x86]
movsx edx, byte [ebp + edx - 0x5c]
and ecx, edx
sub eax, ecx
mov ecx, dword [ebp - 0x2c]
movzx ecx, byte [ebp + ecx - 0x84]
mov byte [ebp + ecx - 0x5c], al
push 0x45a5
push 0x60b5
lea eax, [ebp - 0xa4]
push eax
push 0x529a
push 0x1fdc
push 0x7385
push 0x56e7
push 0x7f61
push 1
push 0
call fcn.1001f32c
add esp, 0x28
jmp 0x10020718
xor eax, eax
inc eax
shl eax, 2
mov byte [ebp + eax - 0x5c], 0
cmp dword [ebp - 0x50], 4
jle 0x100208be
lea eax, [ebp - 0x5c]
push eax
lea ecx, [ebp - 0x3c4]
call fcn.10022af4
mov dword [ebp - 0x220], eax
mov eax, dword [ebp - 0x220]
mov dword [ebp - 0x228], eax
mov byte [ebp - 4], 4
mov eax, dword [ebp - 0x14]
or eax, 1
mov dword [ebp - 0x14], eax
mov eax, dword [ebp - 0x50]
sub eax, 4
push eax
lea eax, [ebp - 0x364]
push eax
call fcn.1001d0b6
pop ecx
pop ecx
mov dword [ebp - 0x2bc], eax
mov eax, dword [ebp - 0x2bc]
mov dword [ebp - 0x2a0], eax
mov dword [ebp - 4], 5
mov eax, dword [ebp - 0x14]
or eax, 2
mov dword [ebp - 0x14], eax
push dword [ebp - 0x228]
mov edx, dword [ebp - 0x2a0]
lea ecx, [ebp - 0x3dc]
call fcn.10023fbc
pop ecx
mov dword [ebp - 0x230], eax
mov eax, dword [ebp - 0x230]
mov dword [ebp - 0x2c4], eax
mov dword [ebp - 4], 6
mov eax, dword [ebp - 0x14]
or eax, 4
mov dword [ebp - 0x14], eax
mov eax, dword [ebp - 0x2c4]
mov dword [ebp - 0x1e4], eax
jmp 0x100208ea
push dword [ebp - 0x50]
lea eax, [ebp - 0x3ac]
push eax
call fcn.1001d0b6
pop ecx
pop ecx
mov dword [ebp - 0x238], eax
mov eax, dword [ebp - 0x14]
or eax, 8
mov dword [ebp - 0x14], eax
mov eax, dword [ebp - 0x238]
mov dword [ebp - 0x1e4], eax
mov eax, dword [ebp - 0x1e4]
mov dword [ebp - 0x2a8], eax
push dword [ebp - 0x2a8]
lea ecx, [ebp - 0x34c]
call fcn.10022b23
mov dword [ebp - 4], 7
mov eax, dword [ebp - 0x14]
and eax, 8
je 0x10020925
and dword [ebp - 0x14], 0xfffffff7
lea ecx, [ebp - 0x3ac]
call fcn.10022b7c
mov byte [ebp - 4], 8
mov eax, dword [ebp - 0x14]
and eax, 4
je 0x10020940
and dword [ebp - 0x14], 0xfffffffb
lea ecx, [ebp - 0x3dc]
call fcn.10022b7c
mov byte [ebp - 4], 9
mov eax, dword [ebp - 0x14]
and eax, 2
je 0x1002095b
and dword [ebp - 0x14], 0xfffffffd
lea ecx, [ebp - 0x364]
call fcn.10022b7c
mov byte [ebp - 4], 0xa
mov eax, dword [ebp - 0x14]
and eax, 1
je 0x10020976
and dword [ebp - 0x14], 0xfffffffe
lea ecx, [ebp - 0x3c4]
call fcn.10022b7c
and dword [ebp - 0x88], 0
jmp 0x1002098c
mov eax, dword [ebp - 0x88]
inc eax
mov dword [ebp - 0x88], eax
cmp dword [ebp - 0x88], 5
jae 0x100209a2
mov eax, dword [ebp - 0x88]
mov byte [ebp + eax - 0x5c], 0
jmp 0x1002097f
mov eax, dword [ebp - 0x18]
mov ecx, dword [ebp - 0x10]
mov dword [eax + 0xc], ecx
lea eax, [ebp - 0x24]
push eax
push 0xd92
lea eax, [ebp - 0x20]
push eax
push 0x1e6e
push 0x1f44
lea eax, [ebp - 0x50]
push eax
push 0x39c1
lea eax, [ebp - 0x34c]
push eax
lea eax, [ebp - 0x18]
push eax
push 0x6853
push 1
push 0x157b
push 0x4897
push 1
call fcn.1001ee5e
add esp, 0x38
mov eax, dword [ebp - 0x10]
add eax, dword [ebp - 0x50]
mov dword [ebp - 0x10], eax
mov eax, dword [ebp - 0x24]
add eax, dword [ebp - 0x10]
mov ecx, dword [ebp - 0x20]
mov byte [ecx + eax], 0
mov eax, dword [ebp - 0x10]
inc eax
mov dword [ebp - 0x10], eax
mov eax, dword [ebp - 0x18]
cmp dword [eax + 0x18], 0
jbe 0x10020a6c
mov eax, dword [ebp - 0x30]
mov ecx, dword [ebp - 0x10]
sub ecx, dword [eax]
mov eax, dword [ebp - 0x30]
mov eax, dword [eax + 4]
sub eax, ecx
mov ecx, dword [ebp - 0x18]
xor edx, edx
div dword [ecx + 0x18]
cmp eax, 0xc
jbe 0x10020a40
mov dword [ebp - 0x1a8], 0xc
jmp 0x10020a5e
mov eax, dword [ebp - 0x30]
mov ecx, dword [ebp - 0x10]
sub ecx, dword [eax]
mov eax, dword [ebp - 0x30]
mov eax, dword [eax + 4]
sub eax, ecx
mov ecx, dword [ebp - 0x18]
xor edx, edx
div dword [ecx + 0x18]
mov dword [ebp - 0x1a8], eax
mov eax, dword [ebp - 0x1a8]
mov dword [ebp - 0x1d0], eax
jmp 0x10020a73
and dword [ebp - 0x1d0], 0
mov eax, dword [ebp - 0x1d0]
mov dword [ebp - 0x1b0], eax
and dword [ebp - 0x9c], 0
jmp 0x10020a95
mov eax, dword [ebp - 0x9c]
inc eax
mov dword [ebp - 0x9c], eax
mov eax, dword [ebp - 0x18]
mov ecx, dword [ebp - 0x9c]
cmp ecx, dword [eax + 0x18]
jae 0x10020bd3
push dword [ebp - 0x1b0]
mov eax, dword [ebp - 0x1b0]
cdq
sub eax, edx
sar eax, 1
push eax
call fcn.1001ccae
pop ecx
pop ecx
mov dword [ebp - 0x198], eax
push dword [ebp - 0x198]
lea eax, [ebp - 0x31c]
push eax
call fcn.1001d0b6
pop ecx
pop ecx
mov byte [ebp - 4], 0xb
push 0x24ee
push 1
push 0x1a7c
push 0
lea eax, [ebp - 0x9c]
push eax
push 0x4af7
lea eax, [ebp - 0x20]
push eax
push 0x326f
push 0x1d1a
push 1
lea eax, [ebp - 0x18]
push eax
push 0x7183
push 0xe90
push 0x2509
push 0x44b0
lea eax, [ebp - 0x10]
push eax
lea eax, [ebp - 0x24]
push eax
call fcn.1001f664
add esp, 0x44
lea eax, [ebp - 0x10]
push eax
push 0x10d2
lea eax, [ebp - 0x20]
push eax
lea eax, [ebp - 0x24]
push eax
push 0x1ae1
push 1
push 1
push 0x39d3
push 0x6c89
push 0x1643
push 0x15de
push 1
lea eax, [ebp - 0x198]
push eax
lea eax, [ebp - 0x31c]
push eax
push 0x7119
push 0xb68
call fcn.1001efd0
add esp, 0x40
lea eax, [ebp - 0x198]
push eax
push 1
push 0xafa
push 0x55aa
push 1
push 0x44b9
lea eax, [ebp - 0x10]
push eax
push 0x367
call fcn.1001f287
add esp, 0x20
mov eax, dword [ebp - 0x24]
add eax, dword [ebp - 0x10]
mov ecx, dword [ebp - 0x20]
mov byte [ecx + eax], 0
mov eax, dword [ebp - 0x10]
inc eax
mov dword [ebp - 0x10], eax
mov byte [ebp - 4], 0xa
lea ecx, [ebp - 0x31c]
call fcn.10022b7c
jmp 0x10020a88
and dword [ebp - 0x19c], 0
lea eax, [ebp - 0x10]
push eax
push 1
push 1
lea eax, [ebp - 0x24]
push eax
push 0x17da
push 0x485a
lea eax, [ebp - 0x20]
push eax
lea eax, [ebp - 0x19c]
push eax
push 0x85a
lea eax, [ebp - 0x30]
push eax
push 0x63f1
push 0x360c
push 0x36d8
push 0xe16
call fcn.1001f424
add esp, 0x38
push 0x6093
push 0x37a7
lea eax, [ebp - 0x19c]
push eax
push 1
lea eax, [ebp - 0x30]
push eax
push 1
push 0x1c2c
call fcn.1001f565
add esp, 0x1c
mov dword [ebp - 0x240], 0x15a4
cmp dword [ebp - 0x240], 0x458
jge 0x10020dda
lea eax, [ebp - 0x8c]
push eax
push 0x1000ddc0
call fcn.10058fc2
pop ecx
pop ecx
mov eax, dword [ebp - 0x8c]
inc eax
xor ecx, ecx
push 4
pop edx
mul edx
seto cl
neg ecx
or ecx, eax
push ecx
call fcn.10052a51
pop ecx
mov dword [ebp - 0x2cc], eax
mov eax, dword [ebp - 0x2cc]
mov dword [ebp - 0x38], eax
mov dword [ebp - 0xa0], 1
jmp 0x10020cb7
mov eax, dword [ebp - 0xa0]
inc eax
mov dword [ebp - 0xa0], eax
mov eax, dword [ebp - 0xa0]
cmp eax, dword [ebp - 0x8c]
jg 0x10020ce0
mov eax, dword [ebp - 0xa0]
mov ecx, dword [ebp - 0x38]
lea eax, [ecx + eax*4]
push eax
push 0x1000ddc0
call fcn.10058fc2
pop ecx
pop ecx
jmp 0x10020caa
lea eax, [ebp - 0x174]
push eax
push 0x1000ddc0
call fcn.10058fc2
pop ecx
pop ecx
and dword [ebp - 0x34], 0
and dword [ebp - 0x16c], 0
mov eax, dword [ebp - 0x174]
mov dword [ebp - 0x248], eax
mov eax, dword [ebp - 0x174]
dec eax
mov dword [ebp - 0x174], eax
cmp dword [ebp - 0x248], 0
je 0x10020d99
lea eax, [ebp - 0x16c]
push eax
lea eax, [ebp - 0x34]
push eax
push 0x1000ddc8
call fcn.10058fc2
add esp, 0xc
cmp dword [ebp - 0x34], 1
jle 0x10020d5c
mov eax, dword [ebp - 0x34]
mov ecx, dword [ebp - 0x38]
mov eax, dword [ecx + eax*4 - 4]
mov ecx, dword [ebp - 0x16c]
lea eax, [ecx + eax - 1]
mov ecx, dword [ebp - 0x34]
mov edx, dword [ebp - 0x38]
mov dword [edx + ecx*4 - 4], eax
mov eax, dword [ebp - 0x34]
cmp eax, dword [ebp - 0x8c]
jge 0x10020d8a
mov eax, dword [ebp - 0x34]
mov ecx, dword [ebp - 0x38]
mov eax, dword [ecx + eax*4]
sub eax, dword [ebp - 0x16c]
mov ecx, dword [ebp - 0x34]
mov edx, dword [ebp - 0x38]
add eax, dword [edx + ecx*4 + 4]
mov ecx, dword [ebp - 0x34]
mov edx, dword [ebp - 0x38]
mov dword [edx + ecx*4 + 4], eax
mov eax, dword [ebp - 0x34]
mov ecx, dword [ebp - 0x38]
and dword [ecx + eax*4], 0
jmp 0x10020cfe
mov dword [ebp - 0x94], 1
jmp 0x10020db2
mov eax, dword [ebp - 0x94]
inc eax
mov dword [ebp - 0x94], eax
mov eax, dword [ebp - 0x94]
cmp eax, dword [ebp - 0x8c]
jg 0x10020dda
mov eax, dword [ebp - 0x94]
mov ecx, dword [ebp - 0x38]
push dword [ecx + eax*4]
push 0x1000ddd0
call fcn.10057526
pop ecx
pop ecx
jmp 0x10020da5
mov byte [ebp - 4], 3
lea ecx, [ebp - 0x34c]
call fcn.10022b7c
or dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0x334]
call fcn.10022b7c
jmp 0x10020ea6
mov eax, dword [ebp - 0x2b0]
mov dword [ebp - 0x260], eax
mov eax, dword [ebp - 0x250]
mov dword [ebp - 0x2e0], eax
mov eax, dword [ebp - 0x2d4]
mov dword [ebp - 0x268], eax
mov eax, dword [ebp - 0x258]
mov dword [ebp - 0x2c0], eax
mov eax, dword [ebp - 0x2dc]
mov dword [ebp - 0x270], eax
mov eax, dword [ebp - 0x260]
mov dword [ebp - 0x280], eax
mov eax, dword [ebp - 0x2e0]
mov dword [ebp - 0x278], eax
mov eax, dword [ebp - 0x268]
mov dword [ebp - 0x2d8], eax
mov eax, dword [ebp - 0x2c0]
mov dword [ebp - 0x2c8], eax
mov eax, dword [ebp - 0x270]
mov dword [ebp - 0x2e8], eax
mov eax, dword [ebp - 0x2d8]
mov eax, dword [eax]
mov ecx, dword [ebp - 0x278]
mov ecx, dword [ecx]
add ecx, dword [eax + 0x20]
mov eax, dword [ebp - 0x2c8]
mov eax, dword [eax]
lea eax, [ecx + eax*4]
mov ecx, dword [ebp - 0x280]
mov ecx, dword [ecx]
mov edx, dword [ebp - 0x2e8]
mov edx, dword [edx]
mov dword [ecx + eax], edx
jmp 0x100211ef
mov eax, dword [ebp + 0x40]
mov dword [ebp - 0x24c], eax
mov eax, dword [ebp + 0x18]
mov dword [ebp - 0x22c], eax
mov eax, dword [ebp + 0x14]
mov dword [ebp - 0x23c], eax
mov eax, dword [ebp + 0x10]
mov dword [ebp - 0x2d0], eax
mov eax, dword [ebp + 0x34]
mov dword [ebp - 0x290], eax
mov eax, dword [ebp + 0x28]
mov dword [ebp - 0x224], eax
lea eax, [ebp + 0x24]
mov dword [ebp - 0x288], eax
mov eax, dword [ebp + 0x48]
mov dword [ebp - 0x244], eax
mov eax, dword [ebp + 0x1c]
mov dword [ebp - 0x234], eax
mov eax, dword [ebp - 0x288]
movzx eax, byte [eax]
test eax, eax
je 0x10020f5c
mov eax, dword [ebp - 0x2d0]
mov dword [ebp - 0x20c], eax
mov eax, dword [ebp - 0x290]
mov dword [ebp - 0x214], eax
mov eax, dword [ebp - 0x20c]
mov dword [ebp - 0x1b8], eax
mov eax, dword [ebp - 0x214]
mov dword [ebp - 0x21c], eax
mov eax, dword [ebp - 0x1b8]
mov eax, dword [eax]
mov ecx, dword [ebp - 0x21c]
mov eax, dword [eax + 0x14]
sub eax, dword [ecx]
mov ecx, dword [ebp - 0x1b8]
mov ecx, dword [ecx]
mov dword [ecx + 0x14], eax
jmp 0x100211ef
mov eax, dword [ebp - 0x224]
mov dword [ebp - 0x254], eax
mov eax, dword [ebp - 0x22c]
mov dword [ebp - 0x25c], eax
mov eax, dword [ebp - 0x234]
mov dword [ebp - 0x264], eax
mov eax, dword [ebp - 0x23c]
mov dword [ebp - 0x26c], eax
mov eax, dword [ebp - 0x244]
mov dword [ebp - 0x274], eax
mov eax, dword [ebp - 0x24c]
mov dword [ebp - 0x284], eax
mov eax, dword [ebp - 0x254]
mov dword [ebp - 0x1bc], eax
mov eax, dword [ebp - 0x25c]
mov dword [ebp - 0x170], eax
mov eax, dword [ebp - 0x264]
mov dword [ebp - 0x1c4], eax
mov eax, dword [ebp - 0x26c]
mov dword [ebp - 0x294], eax
mov eax, dword [ebp - 0x274]
mov dword [ebp - 0x28c], eax
mov dword [ebp - 0x27c], 0x2239
cmp dword [ebp - 0x27c], 0x6e2
jge 0x1002115f
lea eax, [ebp - 0x184]
push eax
lea eax, [ebp - 0x17c]
push eax
lea eax, [ebp - 0x18c]
push eax
lea eax, [ebp - 0x194]
push eax
push 0x1000df44
call fcn.10058fc2
add esp, 0x14
lea eax, [ebp - 0x1a4]
push eax
lea eax, [ebp - 0x1c8]
push eax
push 0x1000dde8
call fcn.10058fc2
add esp, 0xc
mov eax, dword [ebp - 0x17c]
cmp eax, dword [ebp - 0x194]
jle 0x10021060
mov eax, dword [ebp - 0x17c]
sub eax, dword [ebp - 0x194]
mov dword [ebp - 0x1d8], eax
jmp 0x10021072
mov eax, dword [ebp - 0x194]
sub eax, dword [ebp - 0x17c]
mov dword [ebp - 0x1d8], eax
mov eax, dword [ebp - 0x1d8]
mov dword [ebp - 0x1dc], eax
mov eax, dword [ebp - 0x184]
cmp eax, dword [ebp - 0x18c]
jle 0x100210a0
mov eax, dword [ebp - 0x184]
sub eax, dword [ebp - 0x18c]
mov dword [ebp - 0x1c0], eax
jmp 0x100210b2
mov eax, dword [ebp - 0x18c]
sub eax, dword [ebp - 0x184]
mov dword [ebp - 0x1c0], eax
mov eax, dword [ebp - 0x1c0]
mov dword [ebp - 0x1a0], eax
mov eax, dword [ebp - 0x1dc]
cdq
idiv dword [ebp - 0x1c8]
test edx, edx
jne 0x10021125
mov eax, dword [ebp - 0x1a0]
cdq
idiv dword [ebp - 0x1a4]
test edx, edx
jne 0x10021125
mov eax, dword [ebp - 0x1dc]
cdq
idiv dword [ebp - 0x1c8]
mov ecx, eax
and ecx, 0x80000001
jns 0x100210fc
dec ecx
or ecx, 0xfffffffe
inc ecx
mov eax, dword [ebp - 0x1a0]
cdq
idiv dword [ebp - 0x1a4]
and eax, 0x80000001
jns 0x10021115
dec eax
or eax, 0xfffffffe
inc eax
cmp ecx, eax
jne 0x10021125
mov dword [ebp - 0x1ac], 1
jmp 0x1002112c
and dword [ebp - 0x1ac], 0
mov al, byte [ebp - 0x1ac]
mov byte [ebp - 0x3d], al
movzx eax, byte [ebp - 0x3d]
test eax, eax
je 0x10021149
mov dword [ebp - 0x1b4], 0x1000de90
jmp 0x10021153
mov dword [ebp - 0x1b4], 0x1000de94
push dword [ebp - 0x1b4]
call fcn.10059662
pop ecx
mov eax, dword [ebp - 0x284]
mov dword [ebp - 0x178], eax
mov eax, dword [ebp - 0x170]
mov eax, dword [eax]
mov ecx, dword [ebp - 0x170]
mov ecx, dword [ecx]
mov eax, dword [eax + 0x14]
sub eax, dword [ecx + 0x18]
mov ecx, dword [ebp - 0x1bc]
cmp dword [ecx], eax
jae 0x100211be
mov eax, dword [ebp - 0x170]
mov eax, dword [eax]
mov ecx, dword [ebp - 0x28c]
mov ecx, dword [ecx]
add ecx, dword [eax + 0x1c]
mov eax, dword [ebp - 0x1bc]
mov eax, dword [eax]
lea eax, [ecx + eax*4]
mov ecx, dword [ebp - 0x294]
mov ecx, dword [ecx]
mov edx, dword [ebp - 0x1c4]
mov eax, dword [ecx + eax]
mov dword [edx], eax
jmp 0x100211ef
mov eax, dword [ebp - 0x178]
mov eax, dword [eax]
mov ecx, dword [ebp - 0x178]
mov ecx, dword [ecx]
mov eax, dword [eax + 0x14]
add eax, dword [ecx + 0x10]
push eax
mov eax, dword [ebp - 0x178]
mov eax, dword [eax]
push dword [eax + 0x14]
call fcn.1001ccae
pop ecx
pop ecx
mov ecx, dword [ebp - 0x1c4]
mov dword [ecx], eax
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
mov esp, ebp
pop ebp
ret