Function at 0x10028289
Capabilities:
Parse pe header

Disassembly:
push ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x10068160
mov eax, dword fs:[0]
push eax
mov dword fs:[0], esp
sub esp, 0x8b0
push esi
push edi
mov dword [ebp - 0x1c], 0xfffffff7
mov dword [ebp - 0x2c], 7
mov dword [ebp - 0x31c], 0x40c
mov dword [ebp - 0x50], 0xaf90
mov dword [ebp - 0xa0], 0
jmp 0x100282e1
mov eax, dword [ebp - 0xa0]
inc eax
mov dword [ebp - 0xa0], eax
cmp dword [ebp - 0xa0], 2
jge 0x100282fd
mov eax, dword [ebp - 0xa0]
mov dword [ebp + eax*4 - 0x2a8], 7
jmp 0x100282d4
mov eax, dword [ebp - 0x1c]
mov dword [ebp - 0x490], eax
mov eax, dword [ebp - 0x1c]
add eax, dword [ebp - 0x1c]
jne 0x10028322
imul eax, dword [ebp - 0x1c], 0x3582
test eax, eax
jne 0x10028322
and dword [ebp - 0x244], 0
jmp 0x1002832c
mov dword [ebp - 0x244], 1
mov eax, dword [ebp - 0x2c]
cmp dword [ebp - 0x244], eax
jle 0x10028346
cmp dword [ebp - 0x2c], 0
jne 0x10028346
and dword [ebp - 0x26c], 0
jmp 0x10028350
mov dword [ebp - 0x26c], 1
cmp dword [ebp - 0x26c], 0
je 0x10028365
mov dword [ebp - 0x274], 1
jmp 0x1002836c
and dword [ebp - 0x274], 0
cmp dword [ebp - 0x274], 1
je 0x10028381
mov dword [ebp - 0x27c], 1
jmp 0x10028388
and dword [ebp - 0x27c], 0
mov eax, dword [ebp - 0x2c]
cmp dword [ebp - 0x27c], eax
je 0x1002839f
mov dword [ebp - 0x284], 1
jmp 0x100283a6
and dword [ebp - 0x284], 0
mov eax, dword [ebp - 0x1c]
cmp dword [ebp - 0x284], eax
jge 0x100283c3
cmp dword [ebp - 0x2c], 0
je 0x100283c3
mov dword [ebp - 0x158], 1
jmp 0x100283ca
and dword [ebp - 0x158], 0
mov eax, dword [ebp - 0x158]
inc eax
je 0x10028433
mov dword [ebp - 0x384], 0xd7af2c9a
mov dword [ebp - 0x38c], 0xffffffff
lea eax, [ebp - 0x31c]
push eax
lea eax, [ebp - 0x1c]
push eax
lea eax, [ebp - 0x384]
push eax
lea eax, [ebp - 0x2c]
push eax
lea eax, [ebp - 0x38c]
push eax
call fcn.10027793
add esp, 0x14
mov byte [ebp - 0x47], 0
push 1
lea eax, [ebp - 0x47]
push eax
push 0xc38
push 0x25df
push 1
push 0xcb2
push 0
call fcn.10025b13
add esp, 0x1c
jmp 0x1002843a
mov dword [ebp - 0x50], 0xbcabebf3
mov dword [ebp - 0x2c], 0xffffffe8
jmp 0x1002844a
mov eax, dword [ebp - 0x2c]
inc eax
mov dword [ebp - 0x2c], eax
cmp dword [ebp - 0x2c], 0x19
jne 0x100285c6
mov dword [ebp - 0xd0], 7
call fcn.10027853
mov dword [ebp - 0x50], 0
jmp 0x10028473
mov eax, dword [ebp - 0x50]
inc eax
mov dword [ebp - 0x50], eax
cmp dword [ebp - 0x50], 1
jg 0x100285c1
mov dword [ebp - 0x39c], 0x1f20
mov eax, dword [ebp - 0xd0]
mov ecx, dword [ebp - 0x50]
add eax, dword [ebp + ecx*4 - 0x2a8]
jne 0x100284a5
mov dword [ebp - 0x394], 1
jmp 0x100284ac
and dword [ebp - 0x394], 0
mov eax, dword [ebp - 0xd0]
mov dword [ebp - 0x4ac], eax
mov eax, dword [ebp - 0x1c]
mov dword [ebp - 0x524], eax
mov eax, dword [ebp - 0x50]
mov eax, dword [ebp + eax*4 - 0x2a8]
mov dword [ebp - 0x51c], eax
mov eax, dword [ebp - 0xd0]
mov dword [ebp - 0x470], eax
push 4
pop eax
imul eax, eax, 0
mov eax, dword [ebp + eax - 0x2a8]
mov dword [ebp - 0x478], eax
cmp dword [ebp - 0x39c], 0xa898cbdb
jae 0x10028508
mov dword [ebp - 0x264], 1
jmp 0x1002850f
and dword [ebp - 0x264], 0
push 4
pop eax
shl eax, 0
mov ecx, dword [ebp - 0x264]
mov dword [ebp + eax - 0x2a8], ecx
mov dword [ebp - 0x3a4], 0x1f41
cmp dword [ebp - 0x3a4], 0xa34
jge 0x10028596
push 0x1000a908
lea ecx, [ebp - 0x594]
call fcn.1002af06
and dword [ebp - 4], 0
and dword [ebp - 0x15c], 0
lea eax, [ebp - 0x15c]
push eax
push 0x1000a6cc
call fcn.1004f9db
pop ecx
pop ecx
push dword [ebp - 0x15c]
lea ecx, [ebp - 0x594]
call fcn.1002af87
movsx eax, byte [eax]
push eax
push 0x1000a90c
call fcn.1004fea2
pop ecx
pop ecx
or dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0x594]
call fcn.1002af7d
mov dword [ebp - 0x1c], 0
jmp 0x100285a6
mov eax, dword [ebp - 0x1c]
inc eax
mov dword [ebp - 0x1c], eax
cmp dword [ebp - 0x1c], 0xd
jne 0x100285bc
mov byte [ebp - 0x59], 0
lea eax, [ebp - 0x59]
push eax
call fcn.100278a0
pop ecx
jmp 0x1002859f
jmp 0x1002846c
jmp 0x10028443
and dword [ebp - 0x24], 0
mov dword [ebp - 0x480], 0
mov dword [ebp - 0x488], 5
mov dword [ebp - 0x46c], 0xfda0e60f
mov dword [ebp - 0x3ac], 0x8708ef6b
mov dword [ebp - 0xb8], 0
jmp 0x1002860b
mov eax, dword [ebp - 0xb8]
inc eax
mov dword [ebp - 0xb8], eax
cmp dword [ebp - 0xb8], 3
jge 0x10028627
mov eax, dword [ebp - 0xb8]
mov dword [ebp + eax*4 - 0x5a8], 7
jmp 0x100285fe
push 0xe2b
push 0
push 0x7a14
lea eax, [ebp - 0x3ac]
push eax
push 1
push 1
call fcn.100268b9
add esp, 0x18
call fcn.100278fd
mov dword [ebp - 0x2cc], 0x565e08cc
mov dword [ebp - 0x154], 0
mov dword [ebp - 0x2d0], 0x1c587c7a
mov dword [ebp - 0x2c4], 0xf928d9ba
mov dword [ebp - 0x84], 0xa01c77dc
mov dword [ebp - 0x3b4], 0x174d
cmp dword [ebp - 0x3b4], 0x91e
jge 0x10028793
lea eax, [ebp - 0xe0]
push eax
push 0x1000a6cc
call fcn.1004f9db
pop ecx
pop ecx
mov eax, dword [ebp - 0xe0]
mov dword [ebp - 0x3bc], eax
mov eax, dword [ebp - 0xe0]
dec eax
mov dword [ebp - 0xe0], eax
cmp dword [ebp - 0x3bc], 0
je 0x10028793
push 0x314
push 0
lea eax, [ebp - 0x8bc]
push eax
call fcn.100426e5
add esp, 0xc
lea eax, [ebp - 0x350]
push eax
push 0x1000a6cc
call fcn.1004f9db
pop ecx
pop ecx
and dword [ebp - 0xe8], 0
and dword [ebp - 0x100], 0
jmp 0x10028716
mov eax, dword [ebp - 0x100]
inc eax
mov dword [ebp - 0x100], eax
mov eax, dword [ebp - 0x100]
cmp eax, dword [ebp - 0x350]
jge 0x1002877c
lea eax, [ebp - 0xa8]
push eax
push 0x1000a6cc
call fcn.1004f9db
pop ecx
pop ecx
mov eax, dword [ebp - 0xa8]
mov eax, dword [ebp + eax*4 - 0x8bc]
inc eax
mov ecx, dword [ebp - 0xa8]
mov dword [ebp + ecx*4 - 0x8bc], eax
mov eax, dword [ebp - 0xa8]
mov eax, dword [ebp + eax*4 - 0x8bc]
cmp eax, dword [ebp - 0xe8]
jle 0x1002877a
mov eax, dword [ebp - 0xa8]
mov eax, dword [ebp + eax*4 - 0x8bc]
mov dword [ebp - 0xe8], eax
jmp 0x10028709
push dword [ebp - 0xe8]
push 0x1000a754
call fcn.1004fea2
pop ecx
pop ecx
jmp 0x100286aa
mov dword [ebp - 0x35c], 0x3997b09b
mov dword [ebp - 0x3a8], 0x1fcc8af9
push 4
lea ecx, [ebp - 0x40c]
call fcn.1002b976
mov dword [ebp - 4], 1
mov dword [ebp - 0x37c], 0xfffffff8
lea eax, [ebp - 0x40c]
push eax
lea eax, [ebp - 0x498]
push eax
call fcn.10027938
pop ecx
pop ecx
lea eax, [ebp - 0x37c]
push eax
lea eax, [ebp - 0x2d0]
push eax
push 0x14b2
push 0xbe3
lea eax, [ebp - 0x40c]
push eax
push 0x38f9
push 0x114a
lea eax, [ebp - 0x2c4]
push eax
lea eax, [ebp - 0x84]
push eax
lea eax, [ebp - 0x35c]
push eax
push 1
lea eax, [ebp - 0x154]
push eax
lea eax, [ebp - 0x2cc]
push eax
push 1
push 1
lea eax, [ebp - 0x3a8]
push eax
call fcn.1001c917
add esp, 0x40
mov dword [ebp - 0x84], 0xfffffff7
jmp 0x10028854
mov eax, dword [ebp - 0x84]
dec eax
mov dword [ebp - 0x84], eax
cmp dword [ebp - 0x84], 0xffffffe3
jg 0x10028874
lea eax, [ebp - 0x40c]
push eax
lea eax, [ebp - 0x154]
push eax
call fcn.10027980
pop ecx
pop ecx
jmp 0x10028847
or dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0x40c]
call fcn.1002ba4d
push 1
lea ecx, [ebp - 0x4e4]
call fcn.1002b976
mov dword [ebp - 4], 2
mov dword [ebp - 0x2d4], 0
lea eax, [ebp - 0x4e4]
push eax
lea eax, [ebp - 0x4a0]
push eax
push 0x1f8
push 1
push 0x6360
push 0x4f9a
push 1
push 0x237e
push 0x666f
push 0x5575
call fcn.1001cd4a
add esp, 0x28
lea eax, [ebp - 0x2d4]
push eax
call fcn.100279d1
pop ecx
or dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0x4e4]
call fcn.1002ba4d
push 1
push 0x1678
push 0x1d71
lea eax, [ebp - 0xdc]
push eax
push 0
lea eax, [ebp + 8]
push eax
call fcn.10027718
add esp, 0x18
mov eax, dword [ebp - 0xdc]
movzx eax, word [eax]
cmp eax, 0x5a4d
je 0x10028d73
push 2
lea ecx, [ebp - 0x144]
call fcn.1002b976
mov dword [ebp - 4], 3
mov dword [ebp - 0x358], 1
mov dword [ebp - 0x208], 0x30e0e3ce
lea eax, [ebp - 0x144]
push eax
lea eax, [ebp - 0x4a8]
push eax
call fcn.10027a66
pop ecx
pop ecx
push 1
lea ecx, [ebp - 0x144]
call fcn.1002ba5b
and dword [eax], 0
jmp 0x1002899d
push 1
lea ecx, [ebp - 0x144]
call fcn.1002ba5b
mov dword [ebp - 0x1f0], eax
mov eax, dword [ebp - 0x1f0]
mov eax, dword [eax]
dec eax
mov ecx, dword [ebp - 0x1f0]
mov dword [ecx], eax
push 1
lea ecx, [ebp - 0x144]
call fcn.1002ba5b
cmp dword [eax], 0xffffffe6
jle 0x10028d5d
mov dword [ebp - 0x30], 1
mov dword [ebp - 0x114], 0xfffffffb
mov dword [ebp - 0x30], 0xfffffff7
jmp 0x100289d4
mov eax, dword [ebp - 0x30]
inc eax
mov dword [ebp - 0x30], eax
cmp dword [ebp - 0x30], 0x1d
jl 0x10028d58
push 2
lea ecx, [ebp - 0x12c]
call fcn.1002b976
mov byte [ebp - 4], 4
mov dword [ebp - 0x3c], 0
mov dword [ebp - 0xc8], 0xfffffffc
mov dword [ebp - 0x390], 0xffffffff
push 0x19c5
push 1
lea eax, [ebp - 0x12c]
push eax
lea eax, [ebp - 0x4b0]
push eax
push 0
push 0xa11
call fcn.100267f5
add esp, 0x18
mov dword [ebp - 0x3c], 1
jmp 0x10028a3e
mov eax, dword [ebp - 0x3c]
dec eax
mov dword [ebp - 0x3c], eax
cmp dword [ebp - 0x3c], 0
jl 0x10028d23
mov dword [ebp - 0x34], 0xbe8f2100
mov dword [ebp - 0x34], 1
jmp 0x10028a5f
mov eax, dword [ebp - 0x34]
dec eax
mov dword [ebp - 0x34], eax
cmp dword [ebp - 0x34], 0
jl 0x10028d03
mov eax, dword [ebp - 0x30]
mov dword [ebp - 0x4bc], eax
mov eax, dword [ebp - 0x30]
mov dword [ebp - 0x4c4], eax
push dword [ebp - 0x3c]
lea ecx, [ebp - 0x12c]
call fcn.1002ba5b
mov eax, 0xffff
imul eax, eax, 0
shl eax, 2
test eax, eax
jne 0x10028a9e
cmp dword [ebp - 0x34], 0
je 0x10028abc
push 1
lea ecx, [ebp - 0x144]
call fcn.1002ba5b
cmp dword [eax], 0
je 0x10028abc
mov dword [ebp - 0x160], 1
jmp 0x10028ac3
and dword [ebp - 0x160], 0
mov eax, dword [ebp - 0x30]
cmp dword [ebp - 0x34], 0x51ad
jle 0x10028adb
mov dword [ebp - 0x260], 1
jmp 0x10028ae2
and dword [ebp - 0x260], 0
mov eax, dword [ebp - 0x30]
cmp dword [ebp - 0x260], eax
jg 0x10028af9
mov dword [ebp - 0x168], 1
jmp 0x10028b00
and dword [ebp - 0x168], 0
push 1
lea ecx, [ebp - 0x144]
call fcn.1002ba5b
mov ecx, dword [ebp - 0x168]
cmp ecx, dword [eax]
jge 0x10028b23
mov dword [ebp - 0x1f8], 1
jmp 0x10028b2a
and dword [ebp - 0x1f8], 0
push 1
lea ecx, [ebp - 0x144]
call fcn.1002ba5b
mov ecx, dword [ebp - 0x1f8]
cmp ecx, dword [eax]
jl 0x10028b4d
mov dword [ebp - 0x170], 1
jmp 0x10028b54
and dword [ebp - 0x170], 0
mov eax, dword [ebp - 0x34]
cmp dword [ebp - 0x170], eax
jle 0x10028b6b
mov dword [ebp - 0x240], 1
jmp 0x10028b72
and dword [ebp - 0x240], 0
cmp dword [ebp - 0x240], 0xfffffffc
jne 0x10028b87
mov dword [ebp - 0x178], 1
jmp 0x10028b8e
and dword [ebp - 0x178], 0
push dword [ebp - 0x34]
lea ecx, [ebp - 0x12c]
call fcn.1002ba5b
mov eax, dword [eax]
cmp eax, dword [ebp - 0x178]
jge 0x10028bc2
push dword [ebp - 0x3c]
lea ecx, [ebp - 0x12c]
call fcn.1002ba5b
cmp dword [eax], 0
jne 0x10028bc2
and dword [ebp - 0x200], 0
jmp 0x10028bcc
mov dword [ebp - 0x200], 1
mov eax, dword [ebp - 0x30]
cmp dword [ebp - 0x200], eax
jg 0x10028be3
mov dword [ebp - 0x180], 1
jmp 0x10028bea
and dword [ebp - 0x180], 0
mov eax, dword [ebp - 0x180]
mov dword [ebp - 0xc8], eax
mov esi, dword [ebp - 0xc8]
push dword [ebp - 0x3c]
lea ecx, [ebp - 0x12c]
call fcn.1002ba5b
add esi, dword [eax]
cmp esi, dword [ebp - 0x114]
je 0x10028c20
mov dword [ebp - 0x280], 1
jmp 0x10028c27
and dword [ebp - 0x280], 0
push dword [ebp - 0x3c]
lea ecx, [ebp - 0x12c]
call fcn.1002ba5b
mov eax, dword [eax]
cmp eax, dword [ebp - 0x280]
je 0x10028c54
mov eax, 0xed863780
test eax, eax
je 0x10028c54
mov dword [ebp - 0x188], 1
jmp 0x10028c5b
and dword [ebp - 0x188], 0
cmp dword [ebp - 0x188], 7
jl 0x10028c6d
mov eax, 0xbab6ea13
test eax, eax
je 0x10028c84
lea eax, [ebp - 0x114]
push eax
lea eax, [ebp - 0xc8]
push eax
call fcn.10027aae
pop ecx
pop ecx
jmp 0x10028cfe
mov dword [ebp - 0x2dc], 5
push 0x5ba6
lea eax, [ebp - 0x12c]
push eax
lea eax, [ebp - 0x114]
push eax
push 0x58f9
push 1
lea eax, [ebp - 0x358]
push eax
push 0x4530
push 1
push 0x79e6
push 0x3712
lea eax, [ebp - 0x208]
push eax
push 0x1080
lea eax, [ebp - 0x2dc]
push eax
lea eax, [ebp - 0x34]
push eax
push 0x821
lea eax, [ebp - 0x390]
push eax
push 0x3d79
push 1
push 0x1f93
lea eax, [ebp - 0x144]
push eax
call fcn.1001cef1
add esp, 0x50
jmp 0x10028a58
push 0x631
push 0xfb7
push 0
push 0
push 0x98f
call fcn.10027162
add esp, 0x14
jmp 0x10028a37
lea eax, [ebp - 0xc8]
push eax
lea eax, [ebp - 0x208]
push eax
push 1
push 0
lea eax, [ebp - 0x12c]
push eax
call fcn.10027162
add esp, 0x14
mov byte [ebp - 4], 3
lea ecx, [ebp - 0x12c]
call fcn.1002ba4d
jmp 0x100289cd
jmp 0x10028979
or dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0x144]
call fcn.1002ba4d
xor eax, eax
jmp 0x1002a9b9
lea eax, [ebp - 0xdc]
push eax
lea eax, [ebp + 8]
push eax
lea eax, [ebp - 0x78]
push eax
call fcn.10027aed
add esp, 0xc
push 1
lea ecx, [ebp - 0x120]
call fcn.1002b976
mov dword [ebp - 4], 5
mov dword [ebp - 0x10], 0xffffffff
mov dword [ebp - 0x7c], 0xa7ad11e7
mov dword [ebp - 0xb0], 0
jmp 0x10028dc5
mov eax, dword [ebp - 0xb0]
inc eax
mov dword [ebp - 0xb0], eax
cmp dword [ebp - 0xb0], 1
jge 0x10028de7
push dword [ebp - 0xb0]
lea ecx, [ebp - 0x120]
call fcn.1002ba5b
mov dword [eax], 0x2062
jmp 0x10028db8
mov dword [ebp - 0x10], 0
jmp 0x10028df7
mov eax, dword [ebp - 0x10]
dec eax
mov dword [ebp - 0x10], eax
cmp dword [ebp - 0x10], 0
jl 0x100290b1
mov dword [ebp - 0x110], 0x5849968c
mov dword [ebp - 0xf0], 0
mov eax, dword [ebp - 0x10]
mov dword [ebp - 0x4cc], eax
push dword [ebp - 0x10]
lea ecx, [ebp - 0x120]
call fcn.1002ba5b
push dword [ebp - 0x10]
lea ecx, [ebp - 0x120]
call fcn.1002ba5b
cmp dword [eax], 0xfff9
jne 0x10028e4e
mov dword [ebp - 0x2e4], 1
jmp 0x10028e55
and dword [ebp - 0x2e4], 0
push dword [ebp - 0x10]
lea ecx, [ebp - 0x120]
call fcn.1002ba5b
mov eax, dword [ebp - 0x10]
mov dword [ebp - 0x4d4], eax
push 0
lea ecx, [ebp - 0x120]
call fcn.1002ba5b
push 0
lea ecx, [ebp - 0x120]
call fcn.1002ba5b
mov eax, dword [eax]
mov dword [ebp - 0x110], eax
mov esi, dword [ebp - 0x110]
push dword [ebp - 0x10]
lea ecx, [ebp - 0x120]
call fcn.1002ba5b
cmp esi, dword [eax]
jl 0x10028eb2
mov dword [ebp - 0x190], 1
jmp 0x10028eb9
and dword [ebp - 0x190], 0
push dword [ebp - 0x10]
lea ecx, [ebp - 0x120]
call fcn.1002ba5b
mov eax, dword [eax]
cmp eax, dword [ebp - 0x190]
jle 0x10028edd
mov dword [ebp - 0x248], 1
jmp 0x10028ee4
and dword [ebp - 0x248], 0
cmp dword [ebp - 0x248], 0xe0cd
jne 0x10028efc
mov dword [ebp - 0x198], 1
jmp 0x10028f03
and dword [ebp - 0x198], 0
mov eax, dword [ebp - 0x10]
cmp dword [ebp - 0x198], eax
jl 0x10028f1a
mov dword [ebp - 0x210], 1
jmp 0x10028f21
and dword [ebp - 0x210], 0
cmp dword [ebp - 0x210], 0x34cb
je 0x10028f39
mov dword [ebp - 0x1a0], 1
jmp 0x10028f40
and dword [ebp - 0x1a0], 0
cmp dword [ebp - 0x1a0], 0x7b5ca986
jl 0x10028f58
mov dword [ebp - 0x268], 1
jmp 0x10028f5f
and dword [ebp - 0x268], 0
mov eax, dword [ebp - 0xf0]
cmp dword [ebp - 0x268], eax
jge 0x10028f79
mov dword [ebp - 0x1a8], 1
jmp 0x10028f80
and dword [ebp - 0x1a8], 0
mov eax, dword [ebp - 0x10]
cmp dword [ebp - 0x1a8], eax
jne 0x10028f97
mov dword [ebp - 0x218], 1
jmp 0x10028f9e
and dword [ebp - 0x218], 0
mov eax, dword [ebp - 0x218]
dec eax
dec eax
je 0x100290a2
mov dword [ebp - 0x360], 0
mov dword [ebp - 0x2ec], 0x5925f8a4
cmp dword [ebp - 0xf0], 0
je 0x10029069
mov dword [ebp - 0x3b8], 0xcd17cd95
mov dword [ebp - 0x2f4], 0x243a5d8d
lea eax, [ebp - 0x360]
push eax
lea eax, [ebp - 0xf0]
push eax
push 0x64e6
lea eax, [ebp - 0x10]
push eax
lea eax, [ebp - 0x7c]
push eax
push 0xbb
push 0x2e20
push 0x1754
push 0x77c0
push 0x5956
push 1
push 0x4bd1
push 0x240c
lea eax, [ebp - 0x2ec]
push eax
push 0x4faa
lea eax, [ebp - 0x3b8]
push eax
push 1
push 0x470f
push 0x6eb6
push 1
push 0x4ee9
push 0x67c9
lea eax, [ebp - 0x120]
push eax
push 0x372e
lea eax, [ebp - 0x2f4]
push eax
call fcn.1001d35c
add esp, 0x64
jmp 0x10029092
mov byte [ebp - 0x5d], 0
movzx eax, byte [ebp - 0x5d]
test eax, eax
je 0x1002908d
push 0
push 0x1ebd
push 0x5318
push 1
push 1
call fcn.100262da
add esp, 0x14
call fcn.10027b1b
mov byte [ebp - 0x46], 0
lea eax, [ebp - 0x46]
push eax
call fcn.10027b4a
pop ecx
jmp 0x100290ac
mov dword [ebp - 0x110], 0xffffffff
jmp 0x10028df0
mov dword [ebp - 0x7c], 0
jmp 0x100290c1
mov eax, dword [ebp - 0x7c]
dec eax
mov dword [ebp - 0x7c], eax
cmp dword [ebp - 0x7c], 0xfffffff7
jge 0x100290d3
lea eax, [ebp - 0x10]
push eax
call fcn.10027b75
pop ecx
jmp 0x100290ba
or dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0x120]
call fcn.1002ba4d
mov eax, dword [ebp - 0x78]
cmp dword [eax], 0x4550
je 0x100291d7
mov dword [ebp - 0x98], 0xffffffff
push 1
lea ecx, [ebp - 0x440]
call fcn.1002b976
mov dword [ebp - 4], 6
lea eax, [ebp - 0x440]
push eax
lea eax, [ebp - 0x510]
push eax
call fcn.10027bbd
pop ecx
pop ecx
mov dword [ebp - 0x98], 0
jmp 0x1002913d
mov eax, dword [ebp - 0x98]
inc eax
mov dword [ebp - 0x98], eax
cmp dword [ebp - 0x98], 3
je 0x100291c1
push 2
lea ecx, [ebp - 0x44c]
call fcn.1002b976
mov byte [ebp - 4], 7
push 1
push 1
lea eax, [ebp - 0x518]
push eax
lea eax, [ebp - 0x44c]
push eax
call fcn.1001df2c
add esp, 0x10
lea eax, [ebp - 0x44c]
push eax
push 0x28d8
push 0x79aa
push 1
push 0x66d9
push 0x1838
lea eax, [ebp - 0x440]
push eax
push 1
call fcn.1001dfde
add esp, 0x20
mov byte [ebp - 0x48], 0
lea eax, [ebp - 0x48]
push eax
call fcn.10027c05
pop ecx
mov byte [ebp - 4], 6
lea ecx, [ebp - 0x44c]
call fcn.1002ba4d
jmp 0x10029130
or dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0x440]
call fcn.1002ba4d
xor eax, eax
jmp 0x1002a9b9
mov dword [ebp - 0x304], 0x565e08cc
mov dword [ebp - 0x1b0], 0
mov dword [ebp - 0x2fc], 0x1c587c7a
mov dword [ebp - 0x368], 0xf928d9ba
mov dword [ebp - 0x250], 0xa01c77dc
mov dword [ebp - 0x398], 0x3997b09b
mov dword [ebp - 0x370], 0x1fcc8af9
push 4
lea ecx, [ebp - 0x400]
call fcn.1002b976
mov dword [ebp - 4], 8
mov dword [ebp - 0x30c], 0xfffffff8
mov dword [ebp - 0x9c], 0
jmp 0x10029254
mov eax, dword [ebp - 0x9c]
inc eax
mov dword [ebp - 0x9c], eax
cmp dword [ebp - 0x9c], 4
jge 0x10029276
push dword [ebp - 0x9c]
lea ecx, [ebp - 0x400]
call fcn.1002ba5b
mov dword [eax], 4
jmp 0x10029247
lea eax, [ebp - 0x368]
push eax
lea eax, [ebp - 0x2fc]
push eax
lea eax, [ebp - 0x250]
push eax
lea eax, [ebp - 0x398]
push eax
lea eax, [ebp - 0x304]
push eax
lea eax, [ebp - 0x1b0]
push eax
lea eax, [ebp - 0x370]
push eax
lea eax, [ebp - 0x400]
push eax
lea eax, [ebp - 0x30c]
push eax
call fcn.10027c3a
add esp, 0x24
lea eax, [ebp - 0x400]
push eax
lea eax, [ebp - 0x1b0]
push eax
lea eax, [ebp - 0x250]
push eax
call fcn.10027e2b
add esp, 0xc
or dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0x400]
call fcn.1002ba4d
push 0x3be1
push 0x51ee
lea eax, [ebp - 0x94]
push eax
push 1
push dword [ebp - 0x78]
push 0x6ffb
push 1
call fcn.1001bdb3
add esp, 0x1c
cmp dword [ebp - 0x94], 0
jne 0x100294ec
mov dword [ebp - 0x64], 0xc64a6847
mov dword [ebp - 0xf8], 0
call fcn.10027ead
mov dword [ebp - 0x64], 0
jmp 0x10029341
mov eax, dword [ebp - 0x64]
dec eax
mov dword [ebp - 0x64], eax
cmp dword [ebp - 0x64], 0xffffffe5
jne 0x100294e5
mov dword [ebp - 0xd4], 0x62daab72
push 4
lea ecx, [ebp - 0x138]
call fcn.1002b976
mov dword [ebp - 4], 9
mov dword [ebp - 0x378], 0xc59c3f90
mov dword [ebp - 0xa4], 0
jmp 0x1002938c
mov eax, dword [ebp - 0xa4]
inc eax
mov dword [ebp - 0xa4], eax
cmp dword [ebp - 0xa4], 4
jge 0x100293ab
push dword [ebp - 0xa4]
lea ecx, [ebp - 0x138]
call fcn.1002ba5b
and dword [eax], 0
jmp 0x1002937f
cmp dword [ebp - 0xf8], 0
je 0x10029452
mov eax, dword [ebp - 0xd4]
mov dword [ebp - 0x520], eax
push 1
lea ecx, [ebp - 0x138]
call fcn.1002ba5b
mov esi, eax
push 1
lea ecx, [ebp - 0x138]
call fcn.1002ba5b
mov ecx, dword [esi]
cmp ecx, dword [eax]
jne 0x100293f2
mov dword [ebp - 0x3b0], 1
jmp 0x100293f9
and dword [ebp - 0x3b0], 0
push 1
lea ecx, [ebp - 0x138]
call fcn.1002ba5b
mov esi, dword [ebp - 0x64]
add esi, 0xc0e81d1
push 2
lea ecx, [ebp - 0x138]
call fcn.1002ba5b
mov ecx, dword [ebp - 0x64]
add ecx, dword [eax]
cmp esi, ecx
je 0x10029431
mov dword [ebp - 0x1b8], 1
jmp 0x10029438
and dword [ebp - 0x1b8], 0
mov eax, dword [ebp - 0xf8]
add eax, dword [ebp - 0x1b8]
je 0x10029452
mov dword [ebp - 0x220], 1
jmp 0x10029459
and dword [ebp - 0x220], 0
push 2
lea ecx, [ebp - 0x138]
call fcn.1002ba5b
mov ecx, dword [ebp - 0x220]
add ecx, dword [eax]
cmp ecx, 0x112d
jle 0x10029492
cmp dword [ebp - 0xd4], 0
je 0x10029490
or dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0x138]
call fcn.1002ba4d
jmp 0x100294e5
jmp 0x100294d1
mov dword [ebp - 0x53c], 0x8fdadf86
mov dword [ebp - 0x314], 0xa1434a93
lea eax, [ebp - 0xf8]
push eax
lea eax, [ebp - 0x314]
push eax
lea eax, [ebp - 0x378]
push eax
lea eax, [ebp - 0x138]
push eax
lea eax, [ebp - 0xd4]
push eax
call fcn.10027fee
add esp, 0x14
or dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0x138]
call fcn.1002ba4d
jmp 0x1002933a
xor eax, eax
jmp 0x1002a9b9
mov dword [ebp - 0x434], 0x351cdcb3
mov dword [ebp - 0x430], 0x351cdcb3
mov dword [ebp - 0x42c], 0x351cdcb3
mov dword [ebp - 0x428], 0x351cdcb3
lea ecx, [ebp - 0xd5]
call fcn.1002ba70
push eax
lea eax, [ebp - 0x424]
push eax
lea eax, [ebp - 0x434]
push eax
lea ecx, [ebp - 0x554]
call fcn.1002ba73
push dword [eax + 4]
push dword [eax]
lea ecx, [ebp - 0x508]
call fcn.1002ba27
mov dword [ebp - 4], 0xa
mov dword [ebp - 0x380], 0xefba1a4d
mov dword [ebp - 0x324], 0xffffffff
mov dword [ebp - 0x3a0], 0x989d221e
mov dword [ebp - 0x3c0], 0xffffffff
mov dword [ebp - 0x2b4], 1
mov dword [ebp - 0x420], 0x1208
mov dword [ebp - 0x41c], 0x1208
mov dword [ebp - 0x418], 0x1208
mov dword [ebp - 0x414], 0x1208
lea ecx, [ebp - 0xf9]
call fcn.1002ba70
push eax
lea eax, [ebp - 0x410]
push eax
lea eax, [ebp - 0x420]
push eax
lea ecx, [ebp - 0x564]
call fcn.1002ba73
push dword [eax + 4]
push dword [eax]
lea ecx, [ebp - 0x4f4]
call fcn.1002ba27
mov byte [ebp - 4], 0xb
mov dword [ebp - 0x32c], 0x25004
lea eax, [ebp - 0x2b4]
push eax
push 0x3b48
lea eax, [ebp - 0x3a0]
push eax
push 1
lea eax, [ebp - 0x324]
push eax
lea eax, [ebp - 0x380]
push eax
lea eax, [ebp - 0x32c]
push eax
push 1
push 0x13d8
push 0x47d8
push 0x70ee
lea eax, [ebp - 0x4f4]
push eax
lea eax, [ebp - 0x3c0]
push eax
lea eax, [ebp - 0x508]
push eax
call fcn.1001f29b
add esp, 0x38
mov byte [ebp - 4], 0xa
lea ecx, [ebp - 0x4f4]
call fcn.1002ba4d
or dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0x508]
call fcn.1002ba4d
push 0x2b6
push 0x7331
push dword [ebp - 0xdc]
push 0xd2
push 1
lea eax, [ebp - 0x474]
push eax
push dword [ebp - 0x78]
push 1
lea eax, [ebp - 0x94]
push eax
lea eax, [ebp - 0x24]
push eax
push 0x4f4c
push 1
call fcn.1001bfff
add esp, 0x30
push 0x55ed
push dword [ebp + 8]
push dword [ebp - 0x78]
push 0
push dword [ebp - 0x24]
push 0x4518
push 0
push 1
push 0x3476
call fcn.10012e76
add esp, 0x24
mov dword [ebp - 0x1c0], 8
mov dword [ebp - 0x388], 4
mov dword [ebp - 0x33c], 0x92bd42ca
mov dword [ebp - 0x344], 4
mov dword [ebp - 0x334], 0xfffffff7
mov dword [ebp - 0x34c], 1
lea eax, [ebp - 0x1c0]
push eax
call fcn.1002806e
pop ecx
push 1
lea eax, [ebp - 0x334]
push eax
lea eax, [ebp - 0x1c0]
push eax
push 1
push 0x3ffa
lea eax, [ebp - 0x388]
push eax
lea eax, [ebp - 0x33c]
push eax
push 1
push 0x74c6
push 0x46fc
lea eax, [ebp - 0x34c]
push eax
lea eax, [ebp - 0x344]
push eax
call fcn.10024e26
add esp, 0x30
lea eax, [ebp - 0x78]
push eax
push 0x598d
push 0x15a0
push 0x25ce
push 0x3aa4
lea eax, [ebp - 0x94]
push eax
push 1
push 0x4dc0
push 0x5648
push 0x77a2
push 0xcd8
push 0x1f3c
lea eax, [ebp - 0x354]
push eax
push 0x668f
push 0x3ef8
push 1
push 1
call fcn.100254f6
add esp, 0x44
push 1
push 0x2bd9
lea eax, [ebp - 0x24]
push eax
push 0x7b2d
push 1
lea eax, [ebp - 0x354]
push eax
push 1
call fcn.10025b13
add esp, 0x1c
mov dword [ebp - 0x20], 1
push 1
lea ecx, [ebp - 0x10c]
call fcn.1002b976
mov dword [ebp - 4], 0xc
mov dword [ebp - 0x238], 0
mov dword [ebp - 0x4c0], 0xc08a59c2
push 1
push 0x5734
lea eax, [ebp - 0x4c8]
push eax
push 0x18dd
push 1
push 0x48
push 1
lea eax, [ebp - 0x10c]
push eax
call fcn.10025d02
add esp, 0x20
mov dword [ebp - 0x20], 0
jmp 0x10029837
mov eax, dword [ebp - 0x20]
dec eax
mov dword [ebp - 0x20], eax
cmp dword [ebp - 0x20], 0xfffffff3
jg 0x10029b59
mov dword [ebp - 0x14], 1
mov dword [ebp - 0xac], 0
jmp 0x10029861
mov eax, dword [ebp - 0xac]
inc eax
mov dword [ebp - 0xac], eax
cmp dword [ebp - 0xac], 2
jge 0x1002987d
mov eax, dword [ebp - 0xac]
mov dword [ebp + eax*4 - 0x4b8], 1
jmp 0x10029854
push 0x4d3b
push 0x48ef
push 0x20d4
push 0x602b
push 0x697e
push 0
push 1
lea eax, [ebp - 0x10c]
push eax
lea eax, [ebp - 0x14]
push eax
call fcn.1002ab1d
add esp, 0x24
push 0
lea ecx, [ebp - 0x10c]
call fcn.1002ba5b
xor eax, eax
inc eax
je 0x10029911
push 0
lea ecx, [ebp - 0x10c]
call fcn.1002ba5b
cmp dword [eax], 0
jne 0x100298ec
push 0
lea ecx, [ebp - 0x10c]
call fcn.1002ba5b
cmp dword [eax], 0
jne 0x100298ec
and dword [ebp - 0x2bc], 0
jmp 0x100298f6
mov dword [ebp - 0x2bc], 1
mov eax, dword [ebp - 0x14]
mov dword [ebp - 0x47c], eax
cmp dword [ebp - 0x14], 0
je 0x10029911
mov dword [ebp - 0xe4], 1
jmp 0x10029918
and dword [ebp - 0xe4], 0
push 0
lea ecx, [ebp - 0x10c]
call fcn.1002ba5b
mov ecx, dword [ebp - 0xe4]
mov dword [eax], ecx
cmp dword [ebp - 0xe4], 0x9c1464f1
jae 0x10029945
mov dword [ebp - 0x278], 1
jmp 0x1002994c
and dword [ebp - 0x278], 0
mov eax, dword [ebp - 0x278]
sub eax, dword [ebp - 0x14]
cmp eax, dword [ebp - 0x20]
jl 0x1002999b
mov dword [ebp - 0x14], 0
jmp 0x1002996a
mov eax, dword [ebp - 0x14]
inc eax
mov dword [ebp - 0x14], eax
cmp dword [ebp - 0x14], 0
jg 0x10029996
mov dword [ebp - 0x2c0], 0
lea eax, [ebp - 0x10c]
push eax
lea eax, [ebp - 0x14]
push eax
lea eax, [ebp - 0x2c0]
push eax
call fcn.100280c5
add esp, 0xc
jmp 0x10029963
jmp 0x10029b54
mov dword [ebp - 0xb4], 1
mov eax, dword [ebp - 0x14]
cmp dword [ebp - 0x20], eax
jge 0x100299b9
mov dword [ebp - 0x1c8], 1
jmp 0x100299c0
and dword [ebp - 0x1c8], 0
mov eax, dword [ebp - 0x14]
imul eax, dword [ebp - 0x1c8]
cmp dword [ebp - 0x20], eax
jne 0x100299db
mov dword [ebp - 0x228], 1
jmp 0x100299e2
and dword [ebp - 0x228], 0
push 0
lea ecx, [ebp - 0x10c]
call fcn.1002ba5b
mov dword [eax], 8
cmp dword [ebp - 0x228], 8
jne 0x10029a1c
push 0
lea ecx, [ebp - 0x10c]
call fcn.1002ba5b
cmp dword [eax], 0
je 0x10029a1c
mov dword [ebp - 0x1d0], 1
jmp 0x10029a23
and dword [ebp - 0x1d0], 0
mov eax, dword [ebp - 0xb4]
cmp dword [ebp - 0x1d0], eax
jg 0x10029a4c
push 0
lea ecx, [ebp - 0x10c]
call fcn.1002ba5b
cmp dword [eax], 0
jne 0x10029a4c
and dword [ebp - 0x258], 0
jmp 0x10029a56
mov dword [ebp - 0x258], 1
cmp dword [ebp - 0x258], 0x4a2c
je 0x10029a6e
mov dword [ebp - 0x1d8], 1
jmp 0x10029a75
and dword [ebp - 0x1d8], 0
mov eax, dword [ebp - 0xb4]
cmp dword [ebp - 0x1d8], eax
jne 0x10029a8f
mov dword [ebp - 0x2c8], 1
jmp 0x10029a96
and dword [ebp - 0x2c8], 0
mov eax, dword [ebp - 0x14]
cmp dword [ebp - 0xb4], eax
jg 0x10029aad
mov dword [ebp - 0x230], 1
jmp 0x10029ab4
and dword [ebp - 0x230], 0
mov eax, dword [ebp - 0x14]
cmp dword [ebp - 0x230], eax
jg 0x10029acb
mov dword [ebp - 0x1e0], 1
jmp 0x10029ad2
and dword [ebp - 0x1e0], 0
cmp dword [ebp - 0x1e0], 0x8b5a
jl 0x10029aea
mov dword [ebp - 0x270], 1
jmp 0x10029af1
and dword [ebp - 0x270], 0
mov eax, dword [ebp - 0x270]
add eax, 8
imul eax, dword [ebp - 0x20]
add eax, dword [ebp - 0x20]
push 4
pop ecx
imul ecx, ecx, 0
cmp eax, dword [ebp + ecx - 0x4b8]
jne 0x10029b1c
mov dword [ebp - 0x1e8], 1
jmp 0x10029b23
and dword [ebp - 0x1e8], 0
mov eax, dword [ebp - 0xb4]
cmp dword [ebp - 0x1e8], eax
jg 0x10029b44
push 4
pop eax
test eax, eax
je 0x10029b44
mov dword [ebp - 0x2b8], 1
jmp 0x10029b4b
and dword [ebp - 0x2b8], 0
mov eax, dword [ebp - 0x20]
mov dword [ebp - 0x238], eax
jmp 0x10029830
push 1
lea eax, [ebp - 0x238]
push eax
push 0x59d0
push 1
push 1
call fcn.100262da
add esp, 0x14
or dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0x10c]
call fcn.1002ba4d
push dword [ebp - 0x24]
call fcn.1001a00b
pop ecx
test eax, eax
jne 0x10029bb3
mov dword [ebp - 0x50c], 0x5720e83c
mov byte [ebp - 0x5a], 0
lea eax, [ebp - 0x5a]
push eax
call fcn.10028136
pop ecx
call fcn.1002816e
xor eax, eax
jmp 0x1002a9b9
mov dword [ebp - 0x88], 0xc2a2
mov dword [ebp - 0xbc], 9
push 2
lea ecx, [ebp - 0x290]
call fcn.1002b976
mov dword [ebp - 4], 0xd
mov dword [ebp - 0x2e0], 0xfffffff9
mov dword [ebp - 0x2e8], 0x66896e60
mov dword [ebp - 0x468], 0xfffffffd
mov dword [ebp - 0x464], 0xfffffffd
mov dword [ebp - 0x460], 0xfffffffd
mov dword [ebp - 0x45c], 0xfffffffd
push 0x7d09
push 1
push 1
lea eax, [ebp - 0x80]
push eax
push 0x39be
lea eax, [ebp - 0x290]
push eax
call fcn.1002699b
add esp, 0x18
mov dword [ebp - 0x80], 0
jmp 0x10029c48
mov eax, dword [ebp - 0x80]
inc eax
mov dword [ebp - 0x80], eax
cmp dword [ebp - 0x80], 3
jge 0x10029c5e
mov eax, dword [ebp - 0x80]
mov dword [ebp + eax*4 - 0x3cc], 0x8ceffb91
jmp 0x10029c41
mov dword [ebp - 0x88], 0x4441
mov eax, dword [ebp - 0x88]
mov dword [ebp - 0xbc], eax
cmp dword [ebp - 0xbc], 0
je 0x10029ddf
push 0xfffffffffffffffb
pop eax
test eax, eax
je 0x10029d20
mov eax, dword [ebp - 0x88]
cmp dword [ebp - 0x88], eax
jle 0x10029ca6
mov dword [ebp - 0x150], 1
jmp 0x10029cad
and dword [ebp - 0x150], 0
cmp dword [ebp - 0x150], 0x481f3403
jl 0x10029cc5
mov dword [ebp - 0x14c], 1
jmp 0x10029ccc
and dword [ebp - 0x14c], 0
mov eax, dword [ebp - 0x88]
mov dword [ebp - 0xbc], eax
mov eax, dword [ebp - 0xbc]
cmp eax, dword [ebp - 0x14c]
je 0x10029cf2
mov dword [ebp - 0x2d8], 1
jmp 0x10029cf9
and dword [ebp - 0x2d8], 0
push 0
lea ecx, [ebp - 0x290]
call fcn.1002ba5b
push 1
lea ecx, [ebp - 0x290]
call fcn.1002ba5b
push 4
pop ecx
shl ecx, 0
mov ecx, dword [ebp + ecx - 0x3cc]
push 4
pop eax
shl eax, 0
cmp dword [ebp + eax - 0x3cc], 0xffffffff
jb 0x10029d4b
push 0
lea ecx, [ebp - 0x290]
call fcn.1002ba5b
cmp dword [eax], 0
jne 0x10029d4b
and dword [ebp - 0x164], 0
jmp 0x10029d55
mov dword [ebp - 0x164], 1
push 4
pop eax
shl eax, 1
mov eax, dword [ebp + eax - 0x3cc]
add eax, dword [ebp - 0x164]
je 0x10029d7e
mov eax, 0xc1b16eb2
test eax, eax
je 0x10029d7e
mov dword [ebp - 0x16c], 1
jmp 0x10029d85
and dword [ebp - 0x16c], 0
push 1
lea ecx, [ebp - 0x290]
call fcn.1002ba5b
mov esi, dword [ebp - 0x16c]
imul esi, dword [eax]
push 0
lea ecx, [ebp - 0x290]
call fcn.1002ba5b
add esi, dword [eax]
push 4
pop eax
shl eax, 0
cmp esi, dword [ebp + eax - 0x3cc]
je 0x10029dc5
mov dword [ebp - 0x174], 1
jmp 0x10029dcc
and dword [ebp - 0x174], 0
mov eax, dword [ebp - 0x174]
mov dword [ebp - 0x2e0], eax
imul eax, dword [ebp - 0x2e8], 0
push 4
pop eax
shl eax, 1
mov eax, dword [ebp + eax - 0x3cc]
sub eax, 0x1d5f
push 4
pop ecx
shl ecx, 0
mov dword [ebp + ecx - 0x468], eax
or dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0x290]
call fcn.1002ba4d
push 0
push 1
push 1
push dword [ebp - 0x24]
push 0x386e
push 0x66ad
push 0xebe
call fcn.10023add
add esp, 0x1c
mov eax, dword [ebp - 0x24]
mov eax, dword [eax]
cmp dword [eax + 0x28], 0
je 0x1002a5cc
mov dword [ebp - 0x44], 0xfffffffa
mov dword [ebp - 0x40], 0xfffffff7
mov dword [ebp - 0xec], 0xbc42206d
mov dword [ebp - 0x2f0], 0x2610
cmp dword [ebp - 0x2f0], 0xbb1
jge 0x1002a191
mov dword [ebp - 0x484], 0x5d
mov byte [ebp - 0x5c], 1
lea eax, [ebp - 0x5c]
push eax
push 0x5e
lea ecx, [ebp - 0x3dc]
call fcn.1002bb41
mov dword [ebp - 4], 0xe
push 0
push 1
lea eax, [ebp - 0x56c]
push eax
lea ecx, [ebp - 0x3dc]
call fcn.1002bbc2
mov ecx, eax
call fcn.1002bc09
push eax
push 0
lea eax, [ebp - 0x574]
push eax
lea ecx, [ebp - 0x3dc]
call fcn.1002bbc2
mov ecx, eax
call fcn.1002bbe1
and dword [ebp - 0x70], 0
jmp 0x10029ed9
mov eax, dword [ebp - 0x70]
inc eax
mov dword [ebp - 0x70], eax
cvtsi2sd xmm0, dword [ebp - 0x70]
push 0x5d
pop ecx
movsd qword [ebp - 0x4fc], xmm0
call fcn.100304c2
addsd xmm0, qword [0x1000ad08]
movsd xmm1, qword [ebp - 0x4fc]
comisd xmm0, xmm1
jb 0x10029f76
push dword [ebp - 0x70]
lea eax, [ebp - 0x54c]
push eax
lea ecx, [ebp - 0x3dc]
call fcn.1002bbc2
mov ecx, eax
call fcn.1002bc2e
movzx eax, al
test eax, eax
jne 0x10029f29
jmp 0x10029ed2
mov eax, dword [ebp - 0x70]
shl eax, 1
mov dword [ebp - 0xc4], eax
jmp 0x10029f45
mov eax, dword [ebp - 0xc4]
add eax, dword [ebp - 0x70]
mov dword [ebp - 0xc4], eax
cmp dword [ebp - 0xc4], 0x5d
jg 0x10029f71
push 0
push dword [ebp - 0xc4]
lea eax, [ebp - 0x55c]
push eax
lea ecx, [ebp - 0x3dc]
call fcn.1002bbc2
mov ecx, eax
call fcn.1002bc09
jmp 0x10029f36
jmp 0x10029ed2
and dword [ebp - 0x2f8], 0
lea eax, [ebp - 0x2f8]
push eax
push 0x5e
lea ecx, [ebp - 0x3f4]
call fcn.1002b9b2
mov byte [ebp - 4], 0xf
mov dword [ebp - 0x68], 1
jmp 0x10029fa5
mov eax, dword [ebp - 0x68]
inc eax
mov dword [ebp - 0x68], eax
cmp dword [ebp - 0x68], 0x5d
jg 0x10029ff0
mov eax, dword [ebp - 0x68]
dec eax
push eax
lea ecx, [ebp - 0x3f4]
call fcn.1002ba5b
mov esi, eax
push dword [ebp - 0x68]
lea eax, [ebp - 0x57c]
push eax
lea ecx, [ebp - 0x3dc]
call fcn.1002bbc2
mov ecx, eax
call fcn.1002bc2e
movzx edi, al
add edi, dword [esi]
push dword [ebp - 0x68]
lea ecx, [ebp - 0x3f4]
call fcn.1002ba5b
mov dword [eax], edi
jmp 0x10029f9e
mov byte [ebp - 0x49], 0
lea eax, [ebp - 0x49]
push eax
push 0x5e
lea ecx, [ebp - 0x534]
call fcn.1002bb41
mov byte [ebp - 4], 0x10
mov dword [ebp - 0x90], 1
jmp 0x1002a022
mov eax, dword [ebp - 0x90]
inc eax
mov dword [ebp - 0x90], eax
cmp dword [ebp - 0x90], 0x5d
jg 0x1002a05c
push dword [ebp - 0x90]
call fcn.10028196
pop ecx
movzx eax, al
push eax
push dword [ebp - 0x90]
lea eax, [ebp - 0x59c]
push eax
lea ecx, [ebp - 0x534]
call fcn.1002bbc2
mov ecx, eax
call fcn.1002bc09
jmp 0x1002a015
and dword [ebp - 0x300], 0
lea eax, [ebp - 0x300]
push eax
push 0x5e
lea ecx, [ebp - 0x3e8]
call fcn.1002b9b2
mov byte [ebp - 4], 0x11
mov dword [ebp - 0x6c], 1
jmp 0x1002a08b
mov eax, dword [ebp - 0x6c]
inc eax
mov dword [ebp - 0x6c], eax
cmp dword [ebp - 0x6c], 0x5d
jg 0x1002a0d6
mov eax, dword [ebp - 0x6c]
dec eax
push eax
lea ecx, [ebp - 0x3e8]
call fcn.1002ba5b
mov esi, eax
push dword [ebp - 0x6c]
lea eax, [ebp - 0x544]
push eax
lea ecx, [ebp - 0x534]
call fcn.1002bbc2
mov ecx, eax
call fcn.1002bc2e
movzx edi, al
add edi, dword [esi]
push dword [ebp - 0x6c]
lea ecx, [ebp - 0x3e8]
call fcn.1002ba5b
mov dword [eax], edi
jmp 0x1002a084
lea eax, [ebp - 0x310]
push eax
lea eax, [ebp - 0x308]
push eax
push 0x1000a720
call fcn.1004f9db
add esp, 0xc
mov dword [ebp - 0x74], 0x5d
jmp 0x1002a101
mov eax, dword [ebp - 0x74]
dec eax
mov dword [ebp - 0x74], eax
cmp dword [ebp - 0x74], 1
jl 0x1002a14a
push dword [ebp - 0x74]
lea ecx, [ebp - 0x3e8]
call fcn.1002ba5b
mov esi, dword [ebp - 0x308]
imul esi, dword [eax]
push dword [ebp - 0x74]
lea ecx, [ebp - 0x3f4]
call fcn.1002ba5b
mov ecx, dword [ebp - 0x310]
imul ecx, dword [eax]
cmp esi, ecx
jl 0x1002a148
push dword [ebp - 0x74]
push 0x1000a6e4
call fcn.1004fea2
pop ecx
pop ecx
jmp 0x1002a0fa
push 0x1000a910
call fcn.10050732
pop ecx
mov byte [ebp - 4], 0x10
lea ecx, [ebp - 0x3e8]
call fcn.1002ba4d
mov byte [ebp - 4], 0xf
lea ecx, [ebp - 0x534]
call fcn.1002bba2
mov byte [ebp - 4], 0xe
lea ecx, [ebp - 0x3f4]
call fcn.1002ba4d
or dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0x3dc]
call fcn.1002bba2
mov dword [ebp - 0x328], 0x631cd1ac
mov dword [ebp - 0x320], 0xffffffff
mov dword [ebp - 0x330], 0xffff
cmp dword [ebp - 0x44], 0
je 0x1002a1c6
xor eax, eax
inc eax
je 0x1002a1c6
mov dword [ebp - 0x17c], 1
jmp 0x1002a1cd
and dword [ebp - 0x17c], 0
mov eax, dword [ebp - 0x44]
add eax, dword [ebp - 0x17c]
cmp eax, dword [ebp - 0x40]
je 0x1002a1e7
mov dword [ebp - 0x318], 1
jmp 0x1002a1ee
and dword [ebp - 0x318], 0
mov eax, dword [ebp - 0x40]
mov dword [ebp - 0x4d0], eax
mov eax, dword [ebp - 0x44]
mov dword [ebp - 0x48c], eax
cmp dword [ebp - 0x40], 0
jne 0x1002a213
xor eax, eax
jne 0x1002a213
and dword [ebp - 0x184], 0
jmp 0x1002a21d
mov dword [ebp - 0x184], 1
mov eax, dword [ebp - 0x184]
mov dword [ebp - 0x40], eax
mov eax, dword [ebp - 0x44]
cmp dword [ebp - 0x40], eax
jne 0x1002a240
mov eax, 0xfffe
test eax, eax
jne 0x1002a240
and dword [ebp - 0x18c], 0
jmp 0x1002a24a
mov dword [ebp - 0x18c], 1
mov eax, dword [ebp - 0x18c]
mov dword [ebp - 0xec], eax
mov eax, dword [ebp - 0xec]
cmp dword [ebp - 0x44], eax
jne 0x1002a273
mov eax, 0xc9105fa2
test eax, eax
jne 0x1002a273
and dword [ebp - 0x194], 0
jmp 0x1002a27d
mov dword [ebp - 0x194], 1
mov eax, dword [ebp - 0x44]
cmp eax, dword [ebp - 0x194]
jle 0x1002a294
mov dword [ebp - 0x19c], 1
jmp 0x1002a29b
and dword [ebp - 0x19c], 0
cmp dword [ebp - 0x19c], 0x764361a6
jle 0x1002a2b3
mov dword [ebp - 0x1a4], 1
jmp 0x1002a2ba
and dword [ebp - 0x1a4], 0
imul eax, dword [ebp - 0x1a4], 0x59e5
test eax, eax
jne 0x1002a2ce
cmp dword [ebp - 0x40], 0
je 0x1002a30c
push 0x5a67
push 0x249b
push 1
push 0x4055
push 0x5278
push 0xcf1
push 0x465
push 0
lea eax, [ebp - 0x40]
push eax
push 0x1337
push 0x28e0
lea eax, [ebp - 0x44]
push eax
call fcn.10027493
add esp, 0x30
jmp 0x1002a32e
mov byte [ebp - 0x51], 0
movzx eax, byte [ebp - 0x51]
test eax, eax
je 0x1002a32e
push 1
push 1
push 0x4cf8
push 0x6aea
call fcn.10026a93
add esp, 0x10
lea eax, [ebp - 0x44]
push eax
push 1
push 0xa7c
lea eax, [ebp - 0x320]
push eax
push 0x3b77
push 0x46e7
push 0xe78
lea eax, [ebp - 0x328]
push eax
lea eax, [ebp - 0x40]
push eax
push 0x918
push 0x2746
lea eax, [ebp - 0xec]
push eax
push 1
push 0x3d13
push 0x5bd
lea eax, [ebp - 0x330]
push eax
push 0x466d
push 1
push 0x2f15
push 0x148a
call fcn.10026c01
add esp, 0x50
mov eax, dword [ebp - 0x24]
mov eax, dword [eax]
mov ecx, dword [ebp - 0x94]
add ecx, dword [eax + 0x28]
mov dword [ebp - 0x1d4], ecx
jne 0x1002a3b4
xor eax, eax
jmp 0x1002a9b9
mov dword [ebp - 0x18], 0xffffffff
mov dword [ebp - 0x1b4], 0xffffffff
mov dword [ebp - 0x364], 0x275ff444
mov dword [ebp - 0xcc], 0
jmp 0x1002a3e8
mov eax, dword [ebp - 0xcc]
inc eax
mov dword [ebp - 0xcc], eax
cmp dword [ebp - 0xcc], 2
jge 0x1002a404
mov eax, dword [ebp - 0xcc]
mov dword [ebp + eax*4 - 0x2b0], 0x68ec0ae9
jmp 0x1002a3db
mov dword [ebp - 0x18], 0
jmp 0x1002a414
mov eax, dword [ebp - 0x18]
inc eax
mov dword [ebp - 0x18], eax
cmp dword [ebp - 0x18], 2
jge 0x1002a42a
mov eax, dword [ebp - 0x18]
mov dword [ebp + eax*4 - 0x2b0], 0xa136951a
jmp 0x1002a40d
mov dword [ebp - 0x18], 0x1a
jmp 0x1002a43a
mov eax, dword [ebp - 0x18]
dec eax
mov dword [ebp - 0x18], eax
cmp dword [ebp - 0x18], 0xfffffff0
jne 0x1002a59d
mov dword [ebp - 0x8c], 0xfffb
mov dword [ebp - 0x1bc], 0x1ebf0ddd
mov dword [ebp - 0x348], 0x4ddb84c6
mov eax, 0xf5047c4d
test eax, eax
je 0x1002a4c3
cmp dword [ebp - 0x8c], 0
jne 0x1002a480
mov dword [ebp - 0x1ac], 1
jmp 0x1002a487
and dword [ebp - 0x1ac], 0
mov eax, dword [ebp - 0x1ac]
mov dword [ebp - 0x1b4], eax
push 4
pop eax
shl eax, 0
mov eax, dword [ebp + eax - 0x2b0]
mov dword [ebp - 0x1bc], eax
mov eax, dword [ebp - 0x1b4]
imul eax, dword [ebp - 0x1bc]
test eax, eax
je 0x1002a4c3
mov dword [ebp - 0x338], 1
jmp 0x1002a4ca
and dword [ebp - 0x338], 0
push 4
pop eax
imul eax, eax, 0
mov eax, dword [ebp + eax - 0x2b0]
cmp dword [ebp - 0x18], eax
jle 0x1002a4e8
mov dword [ebp - 0x1c4], 1
jmp 0x1002a4ef
and dword [ebp - 0x1c4], 0
push 4
pop eax
imul eax, eax, 0
mov eax, dword [ebp + eax - 0x2b0]
cmp dword [ebp - 0x1c4], eax
jle 0x1002a510
mov dword [ebp - 0x340], 1
jmp 0x1002a517
and dword [ebp - 0x340], 0
mov eax, dword [ebp - 0x18]
mov dword [ebp - 0x538], eax
mov eax, dword [ebp - 0x8c]
mov dword [ebp - 0x494], eax
mov eax, dword [ebp - 0x8c]
mov dword [ebp - 0x4d8], eax
mov eax, dword [ebp - 0x348]
mov dword [ebp - 0x49c], eax
mov eax, dword [ebp - 0x8c]
add eax, 0xc869
cmp eax, dword [ebp - 0x8c]
je 0x1002a563
mov dword [ebp - 0x1cc], 1
jmp 0x1002a56a
and dword [ebp - 0x1cc], 0
mov eax, dword [ebp - 0x1cc]
mov dword [ebp - 0x364], eax
mov byte [ebp - 0x45], 0
movzx eax, byte [ebp - 0x45]
test eax, eax
je 0x1002a598
push 0x7493
push 1
push 1
push 0x45ca
call fcn.100273ff
add esp, 0x10
jmp 0x1002a433
push 0
push 1
push 0xdeadbeef
call dword [ebp - 0x1d4]
mov dword [ebp - 0x36c], eax
cmp dword [ebp - 0x36c], 0
jne 0x1002a5c2
xor eax, eax
jmp 0x1002a9b9
mov eax, dword [ebp - 0x24]
mov dword [eax + 0x10], 1
mov dword [ebp - 0x58], 0
mov dword [ebp - 0xc0], 0
jmp 0x1002a5ec
mov eax, dword [ebp - 0xc0]
inc eax
mov dword [ebp - 0xc0], eax
cmp dword [ebp - 0xc0], 4
jge 0x1002a608
mov eax, dword [ebp - 0xc0]
mov dword [ebp + eax*4 - 0x2a0], 1
jmp 0x1002a5df
mov dword [ebp - 0x58], 0x12
jmp 0x1002a618
mov eax, dword [ebp - 0x58]
dec eax
mov dword [ebp - 0x58], eax
cmp dword [ebp - 0x58], 0xfffffff6
je 0x1002a998
mov dword [ebp - 0x38], 0x89b54615
mov dword [ebp - 0xf4], 0x90ef874a
mov dword [ebp - 0x21c], 0xfffffffe
push 2
lea ecx, [ebp - 0x458]
call fcn.1002b976
mov dword [ebp - 4], 0x12
push 0x780a
push 0x5e3e
push 1
push 0x2a44
lea eax, [ebp - 0x458]
push eax
lea eax, [ebp - 0x514]
push eax
push 0x6f74
push 1
push 0x6c01
push 0x12ca
push 0x7d8a
push 0x1c44
call fcn.10027493
add esp, 0x30
mov byte [ebp - 0x5b], 0
movzx eax, byte [ebp - 0x5b]
test eax, eax
je 0x1002a6bf
push 1
push 0x6c74
push 0x5c92
push 0x58f2
push 1
push 0x653
call fcn.10027718
add esp, 0x18
mov dword [ebp - 0x38], 0
jmp 0x1002a6cf
mov eax, dword [ebp - 0x38]
dec eax
mov dword [ebp - 0x38], eax
cmp dword [ebp - 0x38], 0xffffffe7
je 0x1002a984
mov dword [ebp - 0x28], 4
mov dword [ebp - 0x22c], 0x1a796d40
mov dword [ebp - 0x1fc], 0x3d21462c
mov dword [ebp - 0x374], 1
mov dword [ebp - 0x28], 3
jmp 0x1002a70e
mov eax, dword [ebp - 0x28]
dec eax
mov dword [ebp - 0x28], eax
cmp dword [ebp - 0x28], 0
jl 0x1002a84d
push 4
pop eax
shl eax, 1
cmp dword [ebp + eax - 0x2a0], 0
jne 0x1002a799
push 4
pop eax
imul eax, eax, 0
mov eax, dword [ebp + eax - 0x2a0]
add eax, dword [ebp - 0x28]
mov ecx, dword [ebp - 0x28]
cmp eax, dword [ebp + ecx*4 - 0x2a0]
jge 0x1002a75e
push 4
pop eax
shl eax, 1
cmp dword [ebp + eax - 0x2a0], 0
je 0x1002a75e
mov dword [ebp - 0x1dc], 1
jmp 0x1002a765
and dword [ebp - 0x1dc], 0
mov eax, dword [ebp - 0x28]
cmp dword [ebp - 0x1dc], eax
jle 0x1002a77c
mov dword [ebp - 0x1e4], 1
jmp 0x1002a783
and dword [ebp - 0x1e4], 0
mov eax, dword [ebp - 0x38]
neg eax
cmp eax, dword [ebp - 0x1e4]
jge 0x1002a799
and dword [ebp - 0x1ec], 0
jmp 0x1002a7a3
mov dword [ebp - 0x1ec], 1
mov eax, dword [ebp - 0x28]
mov ecx, dword [ebp - 0x22c]
add ecx, dword [ebp - 0x1ec]
cmp dword [ebp + eax*4 - 0x2a0], ecx
je 0x1002a7c7
mov dword [ebp - 0x1f4], 1
jmp 0x1002a7ce
and dword [ebp - 0x1f4], 0
mov eax, dword [ebp - 0x1f4]
mov dword [ebp - 0x1fc], eax
mov eax, dword [ebp - 0x28]
mov eax, dword [ebp + eax*4 - 0x2a0]
cmp dword [ebp - 0x1fc], eax
jg 0x1002a7f8
mov dword [ebp - 0x204], 1
jmp 0x1002a7ff
and dword [ebp - 0x204], 0
cmp dword [ebp - 0x204], 8
jle 0x1002a814
mov dword [ebp - 0x20c], 1
jmp 0x1002a81b
and dword [ebp - 0x20c], 0
mov eax, dword [ebp - 0x58]
add eax, dword [ebp - 0x20c]
cmp eax, 0xffffffff
jb 0x1002a835
mov dword [ebp - 0x214], 1
jmp 0x1002a83c
and dword [ebp - 0x214], 0
mov eax, dword [ebp - 0x214]
mov dword [ebp - 0x374], eax
jmp 0x1002a707
mov eax, dword [ebp - 0x38]
mov dword [ebp - 0x4a4], eax
mov eax, dword [ebp - 0x38]
mov dword [ebp - 0x4e8], eax
mov eax, dword [ebp - 0x58]
mov dword [ebp - 0x21c], eax
cmp dword [ebp - 0x21c], 0
je 0x1002a883
cmp dword [ebp - 0x58], 0
je 0x1002a883
mov dword [ebp - 0x224], 1
jmp 0x1002a88a
and dword [ebp - 0x224], 0
cmp dword [ebp - 0x224], 8
jle 0x1002a89f
mov dword [ebp - 0x234], 1
jmp 0x1002a8a6
and dword [ebp - 0x234], 0
mov eax, dword [ebp - 0x22c]
add eax, dword [ebp - 0x234]
sub eax, dword [ebp - 0x38]
cmp eax, 1
jb 0x1002a8c6
mov dword [ebp - 0x23c], 1
jmp 0x1002a8cd
and dword [ebp - 0x23c], 0
push 4
pop eax
shl eax, 1
mov eax, dword [ebp + eax - 0x2a0]
cmp dword [ebp - 0x23c], eax
jg 0x1002a8ed
mov dword [ebp - 0x148], 1
jmp 0x1002a8f4
and dword [ebp - 0x148], 0
mov eax, dword [ebp - 0x28]
mov dword [ebp - 0xf4], eax
imul eax, dword [ebp - 0x148], 0xe617
cmp dword [ebp - 0xf4], eax
jle 0x1002a916
cmp dword [ebp - 0xf4], 0
push 4
pop eax
imul eax, eax, 3
cmp dword [ebp + eax - 0x2a0], 0x4f8a3d35
jge 0x1002a935
mov dword [ebp - 0x24c], 1
jmp 0x1002a93c
and dword [ebp - 0x24c], 0
push 4
pop eax
shl eax, 0
mov eax, dword [ebp + eax - 0x2a0]
imul eax, dword [ebp - 0x24c]
cmp dword [ebp - 0x38], eax
jg 0x1002a961
mov dword [ebp - 0x254], 1
jmp 0x1002a968
and dword [ebp - 0x254], 0
mov esi, dword [ebp - 0x254]
neg esi
push 0
lea ecx, [ebp - 0x458]
call fcn.1002ba5b
mov dword [eax], esi
jmp 0x1002a6c8
or dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0x458]
call fcn.1002ba4d
jmp 0x1002a611
mov eax, dword [ebp - 0x24]
cmp dword [eax + 0x10], 0
je 0x1002a9ac
mov eax, dword [ebp - 0x24]
mov dword [ebp - 0x25c], eax
jmp 0x1002a9b3
and dword [ebp - 0x25c], 0
mov eax, dword [ebp - 0x25c]
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop edi
pop esi
mov esp, ebp
pop ebp
ret