Function at 0x10027f4a
Capabilities:
Parse pe header
Resolve function by parsing pe exports

Disassembly:
push ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x100706f5
mov eax, dword fs:[0]
push eax
mov dword fs:[0], esp
sub esp, 0x2a0
push esi
push edi
and dword [ebp - 0x10], 0
movzx eax, byte [ebp + 0x2c]
test eax, eax
je 0x10028d57
lea eax, [ebp + 0x30]
mov dword [ebp - 0x1c0], eax
mov eax, dword [ebp + 0x18]
mov dword [ebp - 0x1cc], eax
mov eax, dword [ebp + 0x14]
mov dword [ebp - 0x1b4], eax
mov eax, dword [ebp + 0x24]
mov dword [ebp - 0x160], eax
mov eax, dword [ebp + 0x1c]
mov dword [ebp - 0x1c8], eax
mov eax, dword [ebp + 0xc]
mov dword [ebp - 0x158], eax
mov eax, dword [ebp - 0x1c0]
movzx eax, byte [eax]
test eax, eax
je 0x10028ccf
mov eax, dword [ebp - 0x1c8]
mov dword [ebp - 0x28], eax
mov eax, dword [ebp - 0x28]
mov dword [ebp - 0xe8], eax
mov eax, dword [ebp - 0xe8]
movzx eax, word [eax]
cmp eax, 0x5a4d
je 0x10027fe8
jmp 0x100290bb
mov eax, dword [ebp - 0xe8]
mov ecx, dword [ebp - 0x28]
add ecx, dword [eax + 0x3c]
mov dword [ebp - 0x44], ecx
mov eax, dword [ebp - 0x44]
cmp dword [eax], 0x4550
je 0x10028007
jmp 0x100290bb
push 8
pop eax
imul eax, eax, 0
mov ecx, dword [ebp - 0x44]
lea eax, [ecx + eax + 0x78]
mov dword [ebp - 0x30], eax
mov eax, dword [ebp - 0x30]
cmp dword [eax + 4], 0
jne 0x10028025
jmp 0x100290bb
and dword [ebp - 0x24], 0
mov eax, dword [ebp - 0x44]
movzx eax, word [eax + 0x14]
mov ecx, dword [ebp - 0x44]
lea eax, [ecx + eax + 0x18]
mov dword [ebp - 0xf0], eax
lea eax, [ebp - 0x30]
push eax
lea eax, [ebp - 0x24]
push eax
push 1
push 0x21d9
push 1
push 0x7bc9
lea eax, [ebp - 0x44]
push eax
push 0x51b0
push 0x101e
push 0xb4a
lea eax, [ebp - 0xf0]
push eax
call fcn.10026416
add esp, 0x2c
cmp dword [ebp - 0x24], 0
jne 0x10028080
jmp 0x100290bb
mov eax, dword [ebp - 0x30]
mov ecx, dword [ebp - 0x24]
add ecx, dword [eax]
add ecx, dword [ebp - 0x28]
mov dword [ebp - 0x14], ecx
xor ecx, ecx
call fcn.100247dd
push eax
call fcn.10059277
pop ecx
mov byte [ebp - 0x8c], 7
mov byte [ebp - 0x8b], 0xb7
mov byte [ebp - 0x8a], 9
mov byte [ebp - 0x89], 6
mov byte [ebp - 0x88], 8
mov byte [ebp - 0x87], 0
mov byte [ebp - 0x86], 1
mov byte [ebp - 0x85], 5
mov byte [ebp - 0x84], 4
mov byte [ebp - 0x83], 0xd
mov byte [ebp - 0x82], 2
mov byte [ebp - 0x81], 0xf
mov byte [ebp - 0x80], 0
mov byte [ebp - 0x7f], 6
mov byte [ebp - 0x7e], 5
mov byte [ebp - 0x7d], 0
mov byte [ebp - 0x7c], 4
mov byte [ebp - 0x7b], 0x3a
mov byte [ebp - 0x7a], 0xd7
mov byte [ebp - 0x79], 0xde
mov byte [ebp - 0x78], 0x46
mov byte [ebp - 0x77], 3
mov byte [ebp - 0x76], 6
mov byte [ebp - 0x75], 6
mov byte [ebp - 0x74], 6
xor eax, eax
inc eax
shl eax, 0
movzx eax, byte [ebp + eax - 0x8c]
or eax, 0x81
xor ecx, ecx
inc ecx
shl ecx, 0
movzx ecx, byte [ebp + ecx - 0x8c]
and ecx, 0x81
sub eax, ecx
xor ecx, ecx
inc ecx
imul ecx, ecx, 0
movzx ecx, byte [ebp + ecx - 0x8c]
mov byte [ebp + ecx - 0x120], al
mov dword [ebp - 0x20], 2
and dword [ebp - 0x98], 0
jmp 0x1002817a
mov eax, dword [ebp - 0x20]
inc eax
inc eax
mov dword [ebp - 0x20], eax
cmp dword [ebp - 0x20], 0x19
jae 0x10028230
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 0x100281c4
mov eax, dword [ebp - 0x20]
movzx eax, byte [ebp + eax - 0x8c]
inc eax
mov dword [ebp - 0x98], 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 0x10028172
mov eax, dword [ebp - 0x20]
movzx eax, byte [ebp + eax - 0x8b]
mov ecx, dword [ebp - 0x20]
sub ecx, dword [ebp - 0x98]
movzx ecx, byte [ebp + ecx - 0x8e]
movsx ecx, byte [ebp + ecx - 0x120]
or eax, ecx
mov ecx, dword [ebp - 0x20]
movzx ecx, byte [ebp + ecx - 0x8b]
mov edx, dword [ebp - 0x20]
sub edx, dword [ebp - 0x98]
movzx edx, byte [ebp + edx - 0x8e]
movsx edx, byte [ebp + edx - 0x120]
and ecx, edx
sub eax, ecx
mov ecx, dword [ebp - 0x20]
movzx ecx, byte [ebp + ecx - 0x8c]
mov byte [ebp + ecx - 0x120], al
and dword [ebp - 0x98], 0
jmp 0x10028172
xor eax, eax
inc eax
imul eax, eax, 0xa
mov byte [ebp + eax - 0x120], 0
lea eax, [ebp - 0x120]
push eax
lea ecx, [ebp - 0x264]
call fcn.1001f185
mov dword [ebp - 0x1d0], eax
mov eax, dword [ebp - 0x1d0]
mov dword [ebp - 0x1d8], eax
and dword [ebp - 4], 0
push 0xa
xor edx, edx
mov ecx, dword [ebp - 0x1d8]
call fcn.100247a2
pop ecx
mov dword [ebp - 0x1b8], eax
or dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0x264]
call fcn.1001f1a8
and dword [ebp - 0xa0], 0
jmp 0x100282a1
mov eax, dword [ebp - 0xa0]
inc eax
mov dword [ebp - 0xa0], eax
cmp dword [ebp - 0xa0], 0xb
jae 0x100282ba
mov eax, dword [ebp - 0xa0]
mov byte [ebp + eax - 0x120], 0
jmp 0x10028294
mov byte [ebp - 0x64], 3
mov byte [ebp - 0x63], 0xb1
mov byte [ebp - 0x62], 4
mov byte [ebp - 0x61], 6
mov byte [ebp - 0x60], 8
mov byte [ebp - 0x5f], 4
mov byte [ebp - 0x5e], 6
mov byte [ebp - 0x5d], 9
mov byte [ebp - 0x5c], 3
mov byte [ebp - 0x5b], 0xc3
mov byte [ebp - 0x5a], 0xe2
mov byte [ebp - 0x59], 0xb7
mov byte [ebp - 0x58], 1
mov byte [ebp - 0x57], 0xf
mov byte [ebp - 0x56], 7
mov byte [ebp - 0x55], 0
mov byte [ebp - 0x54], 0
mov byte [ebp - 0x53], 7
mov byte [ebp - 0x52], 5
mov byte [ebp - 0x51], 0
mov byte [ebp - 0x50], 2
mov byte [ebp - 0x4f], 6
mov byte [ebp - 0x4e], 9
mov byte [ebp - 0x4d], 7
xor eax, eax
inc eax
shl eax, 0
movzx eax, byte [ebp + eax - 0x64]
or eax, 0x83
xor ecx, ecx
inc ecx
shl ecx, 0
movzx ecx, byte [ebp + ecx - 0x64]
and ecx, 0x83
sub eax, ecx
xor ecx, ecx
inc ecx
imul ecx, ecx, 0
movzx ecx, byte [ebp + ecx - 0x64]
mov byte [ebp + ecx - 0x114], al
mov dword [ebp - 0x1c], 2
and dword [ebp - 0x6c], 0
jmp 0x10028364
mov eax, dword [ebp - 0x1c]
inc eax
inc eax
mov dword [ebp - 0x1c], eax
cmp dword [ebp - 0x1c], 0x18
jae 0x1002842e
xor eax, eax
inc eax
imul eax, eax, 0
movzx eax, byte [ebp + eax - 0x64]
lea eax, [eax + eax + 2]
cmp dword [ebp - 0x1c], eax
jne 0x100283a2
mov eax, dword [ebp - 0x1c]
movzx eax, byte [ebp + eax - 0x64]
inc eax
mov dword [ebp - 0x6c], eax
mov eax, dword [ebp - 0x1c]
movzx eax, byte [ebp + eax - 0x64]
mov ecx, dword [ebp - 0x1c]
lea eax, [ecx + eax - 1]
mov dword [ebp - 0x1c], eax
jmp 0x1002835c
mov eax, dword [ebp - 0x1c]
movzx eax, byte [ebp + eax - 0x63]
mov ecx, dword [ebp - 0x1c]
sub ecx, dword [ebp - 0x6c]
movzx ecx, byte [ebp + ecx - 0x66]
movsx ecx, byte [ebp + ecx - 0x114]
add eax, ecx
mov ecx, dword [ebp - 0x1c]
movzx ecx, byte [ebp + ecx - 0x63]
mov edx, dword [ebp - 0x1c]
sub edx, dword [ebp - 0x6c]
movzx edx, byte [ebp + edx - 0x66]
movsx edx, byte [ebp + edx - 0x114]
and ecx, edx
sub eax, ecx
mov ecx, dword [ebp - 0x1c]
movzx ecx, byte [ebp + ecx - 0x63]
mov edx, dword [ebp - 0x1c]
sub edx, dword [ebp - 0x6c]
movzx edx, byte [ebp + edx - 0x66]
movsx edx, byte [ebp + edx - 0x114]
and ecx, edx
sub eax, ecx
mov ecx, dword [ebp - 0x1c]
movzx ecx, byte [ebp + ecx - 0x64]
mov byte [ebp + ecx - 0x114], al
lea eax, [ebp - 0x6c]
push eax
push 0x528e
push 1
push 0x6940
push 0x1f23
call fcn.100266c7
add esp, 0x14
jmp 0x1002835c
xor eax, eax
inc eax
imul eax, eax, 0xa
mov byte [ebp + eax - 0x114], 0
lea eax, [ebp - 0x114]
push eax
lea ecx, [ebp - 0x2ac]
call fcn.1001f185
mov dword [ebp - 0x1e0], eax
mov eax, dword [ebp - 0x1e0]
mov dword [ebp - 0x1e8], eax
mov dword [ebp - 4], 1
push 0xa
xor edx, edx
mov ecx, dword [ebp - 0x1e8]
call fcn.100247a2
pop ecx
mov dword [ebp - 0x1c4], eax
or dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0x2ac]
call fcn.1001f1a8
and dword [ebp - 0x94], 0
jmp 0x100284a2
mov eax, dword [ebp - 0x94]
inc eax
mov dword [ebp - 0x94], eax
cmp dword [ebp - 0x94], 0xb
jae 0x100284bb
mov eax, dword [ebp - 0x94]
mov byte [ebp + eax - 0x114], 0
jmp 0x10028495
push dword [ebp - 0x1c4]
push dword [ebp - 0x1b8]
call fcn.10025b8b
pop ecx
pop ecx
mov dword [ebp - 0xb4], eax
lea eax, [ebp - 0xb4]
push eax
push 0x1a8c
push 1
push 0x7956
push 0x346f
push 0x1be4
push 1
lea eax, [ebp - 0x44]
push eax
push 0x6c98
push 0x7553
push 0x4351
push 0x5c38
call fcn.10026b23
add esp, 0x30
push 1
push 0x5b5f
push 0x4a7c
lea eax, [ebp - 0x14]
push eax
push 0x5d3a
lea eax, [ebp - 0xb4]
push eax
push 0x1334
push 0x7f43
push 0x75c4
push 1
call fcn.10026cbe
add esp, 0x28
and dword [ebp - 0x68], 0
push 0x4766
push 0xf77
push 0x1860
push 0
push 0x5c0d
push 1
push 0x101e
lea eax, [ebp - 0x14]
push eax
push 0x2243
push 0x4c57
push 0x2adf
push 0x3b09
push 0
push 0x998
lea eax, [ebp - 0x68]
push eax
call fcn.1002749c
add esp, 0x3c
mov eax, dword [ebp - 0x14]
mov eax, dword [eax + 0x1c]
mov dword [ebp - 0x18], eax
mov eax, dword [ebp - 0x14]
mov eax, dword [eax + 0x14]
sub eax, dword [ebp - 0x68]
mov dword [ebp - 0x40], eax
push 0x2b1
lea eax, [ebp - 0xf0]
push eax
push 0x587d
push 1
lea eax, [ebp - 0x18]
push eax
lea eax, [ebp - 0x24]
push eax
lea eax, [ebp - 0x14]
push eax
push 1
push 1
push 0x4e30
lea eax, [ebp - 0x40]
push eax
lea eax, [ebp - 0x28]
push eax
push 0x12f3
call fcn.10026dd1
add esp, 0x34
push 1
push 0x2113
lea eax, [ebp - 0x68]
push eax
push 1
lea eax, [ebp - 0x14]
push eax
push 0x685f
push 0xafe
push 0x4bcb
call fcn.10026ff5
add esp, 0x20
push 0x4ddc
push 0x44b
push 0x72d6
lea eax, [ebp - 0x68]
push eax
push 0x2ae3
lea eax, [ebp - 0x40]
push eax
push 0
push 0x23e8
push 0x2ba0
lea eax, [ebp - 0x14]
push eax
push 0x4175
push 1
call fcn.10026301
add esp, 0x30
and dword [ebp - 0xa8], 0
jmp 0x1002865f
mov eax, dword [ebp - 0xa8]
inc eax
mov dword [ebp - 0xa8], eax
mov eax, dword [ebp - 0xa8]
cmp eax, dword [ebp - 0x40]
jge 0x100286dd
push 0x14f0
lea eax, [ebp - 0x28]
push eax
push 0x7271
push 0x204a
push 0x790d
push 1
push 0x42f3
push 0
lea eax, [ebp - 0x24]
push eax
lea eax, [ebp - 0x18]
push eax
push 0x4344
call fcn.10027386
add esp, 0x2c
push 0x4cc2
push 0x47de
push 0x4bf6
push 0x2cca
lea eax, [ebp - 0x18]
push eax
push 1
push 0x1b7
push 1
push 0x241c
push 0xf52
push 0x28f2
call fcn.10027386
add esp, 0x2c
jmp 0x10028652
push 0
lea eax, [ebp - 0x18]
push eax
push 0x3fd6
push 0x4a4c
lea eax, [ebp - 0x14]
push eax
push 0x7afb
push 0x12a1
push 0x3252
lea eax, [ebp - 0x40]
push eax
push 1
call fcn.10026cbe
add esp, 0x28
push 0
push 0x5dba
push 1
push 0x522a
lea eax, [ebp - 0x14]
push eax
lea eax, [ebp - 0x68]
push eax
call fcn.10026074
add esp, 0x18
and dword [ebp - 0x9c], 0
jmp 0x10028742
mov eax, dword [ebp - 0x9c]
inc eax
mov dword [ebp - 0x9c], eax
mov eax, dword [ebp - 0x9c]
cmp eax, dword [ebp - 0x40]
jge 0x100287d1
lea eax, [ebp - 0x18]
push eax
push 0x4a5d
push 0x5a67
push 1
push 0x7837
push 1
lea eax, [ebp - 0x9c]
push eax
push 0x30d0
push 0x5757
lea eax, [ebp - 0x14]
push eax
push 0x27c2
lea eax, [ebp - 0x24]
push eax
push 1
lea eax, [ebp - 0x28]
push eax
push 0x2442
call fcn.1002749c
add esp, 0x3c
push 0
push 1
lea eax, [ebp - 0x18]
push eax
push 0x3903
push 0x1767
push 0x5b92
push 0x77de
push 0x6385
push 0xfb3
push 0x3cc9
call fcn.100261dd
add esp, 0x28
jmp 0x10028735
push 0x2186
push 0x5678
push 1
push 0x3604
push 0x3c86
push 0x2553
push 0x632e
lea eax, [ebp - 0x14]
push eax
lea eax, [ebp - 0x18]
push eax
push 1
lea eax, [ebp - 0x40]
push eax
push 0x1db
push 0x6ab5
call fcn.100278b5
add esp, 0x34
mov eax, dword [ebp - 0x14]
mov ecx, dword [ebp - 0x24]
add ecx, dword [eax + 0xc]
add ecx, dword [ebp - 0x28]
push ecx
lea ecx, [ebp - 0x21c]
call fcn.1001f185
mov dword [ebp - 4], 2
lea ecx, [ebp - 0x21c]
call fcn.1001f1f4
mov dword [ebp - 0xf8], eax
push dword [ebp - 0xf8]
mov eax, dword [ebp - 0xf8]
shr eax, 1
push eax
call fcn.10025b8b
pop ecx
pop ecx
mov dword [ebp - 0x70], eax
mov byte [ebp - 0x3c], 0
mov byte [ebp - 0x3b], 0x9a
mov byte [ebp - 0x3a], 3
mov byte [ebp - 0x39], 0x42
mov byte [ebp - 0x38], 2
mov byte [ebp - 0x37], 0
mov byte [ebp - 0x36], 1
mov byte [ebp - 0x35], 8
xor eax, eax
inc eax
shl eax, 0
movzx eax, byte [ebp + eax - 0x3c]
or eax, 0xb4
xor ecx, ecx
inc ecx
shl ecx, 0
movzx ecx, byte [ebp + ecx - 0x3c]
and ecx, 0xb4
sub eax, ecx
xor ecx, ecx
inc ecx
imul ecx, ecx, 0
movzx ecx, byte [ebp + ecx - 0x3c]
mov byte [ebp + ecx - 0x4c], al
mov dword [ebp - 0x2c], 2
and dword [ebp - 0xac], 0
jmp 0x100288c4
mov eax, dword [ebp - 0x2c]
inc eax
inc eax
mov dword [ebp - 0x2c], eax
cmp dword [ebp - 0x2c], 8
jae 0x10028933
mov eax, dword [ebp - 0x2c]
movzx eax, byte [ebp + eax - 0x3b]
mov ecx, dword [ebp - 0x2c]
sub ecx, dword [ebp - 0xac]
movzx ecx, byte [ebp + ecx - 0x3e]
movsx ecx, byte [ebp + ecx - 0x4c]
add eax, ecx
mov ecx, dword [ebp - 0x2c]
movzx ecx, byte [ebp + ecx - 0x3b]
mov edx, dword [ebp - 0x2c]
sub edx, dword [ebp - 0xac]
movzx edx, byte [ebp + edx - 0x3e]
movsx edx, byte [ebp + edx - 0x4c]
and ecx, edx
sub eax, ecx
mov ecx, dword [ebp - 0x2c]
movzx ecx, byte [ebp + ecx - 0x3b]
mov edx, dword [ebp - 0x2c]
sub edx, dword [ebp - 0xac]
movzx edx, byte [ebp + edx - 0x3e]
movsx edx, byte [ebp + edx - 0x4c]
and ecx, edx
sub eax, ecx
mov ecx, dword [ebp - 0x2c]
movzx ecx, byte [ebp + ecx - 0x3c]
mov byte [ebp + ecx - 0x4c], al
jmp 0x100288bc
xor eax, eax
inc eax
shl eax, 2
mov byte [ebp + eax - 0x4c], 0
cmp dword [ebp - 0x70], 4
jle 0x100289f5
lea eax, [ebp - 0x4c]
push eax
lea ecx, [ebp - 0x27c]
call fcn.1001f185
mov dword [ebp - 0x130], eax
mov eax, dword [ebp - 0x130]
mov dword [ebp - 0x138], eax
mov byte [ebp - 4], 3
mov eax, dword [ebp - 0x10]
or eax, 1
mov dword [ebp - 0x10], eax
mov eax, dword [ebp - 0x70]
sub eax, 4
push eax
lea eax, [ebp - 0x24c]
push eax
call fcn.10025bec
pop ecx
pop ecx
mov dword [ebp - 0x124], eax
mov eax, dword [ebp - 0x124]
mov dword [ebp - 0x1a4], eax
mov dword [ebp - 4], 4
mov eax, dword [ebp - 0x10]
or eax, 2
mov dword [ebp - 0x10], eax
push dword [ebp - 0x138]
mov edx, dword [ebp - 0x1a4]
lea ecx, [ebp - 0x294]
call fcn.10029971
pop ecx
mov dword [ebp - 0x140], eax
mov eax, dword [ebp - 0x140]
mov dword [ebp - 0x1e4], eax
mov dword [ebp - 4], 5
mov eax, dword [ebp - 0x10]
or eax, 4
mov dword [ebp - 0x10], eax
mov eax, dword [ebp - 0x1e4]
mov dword [ebp - 0x104], eax
jmp 0x10028a21
push dword [ebp - 0x70]
lea eax, [ebp - 0x234]
push eax
call fcn.10025bec
pop ecx
pop ecx
mov dword [ebp - 0x148], eax
mov eax, dword [ebp - 0x10]
or eax, 8
mov dword [ebp - 0x10], eax
mov eax, dword [ebp - 0x148]
mov dword [ebp - 0x104], eax
mov eax, dword [ebp - 0x104]
mov dword [ebp - 0x1ac], eax
push dword [ebp - 0x1ac]
lea ecx, [ebp - 0x204]
call fcn.1001edbf
mov dword [ebp - 4], 6
mov eax, dword [ebp - 0x10]
and eax, 8
je 0x10028a5c
and dword [ebp - 0x10], 0xfffffff7
lea ecx, [ebp - 0x234]
call fcn.1001f1a8
mov byte [ebp - 4], 7
mov eax, dword [ebp - 0x10]
and eax, 4
je 0x10028a77
and dword [ebp - 0x10], 0xfffffffb
lea ecx, [ebp - 0x294]
call fcn.1001f1a8
mov byte [ebp - 4], 8
mov eax, dword [ebp - 0x10]
and eax, 2
je 0x10028a92
and dword [ebp - 0x10], 0xfffffffd
lea ecx, [ebp - 0x24c]
call fcn.1001f1a8
mov byte [ebp - 4], 9
mov eax, dword [ebp - 0x10]
and eax, 1
je 0x10028aad
and dword [ebp - 0x10], 0xfffffffe
lea ecx, [ebp - 0x27c]
call fcn.1001f1a8
and dword [ebp - 0xa4], 0
jmp 0x10028ac3
mov eax, dword [ebp - 0xa4]
inc eax
mov dword [ebp - 0xa4], eax
cmp dword [ebp - 0xa4], 5
jae 0x10028ad9
mov eax, dword [ebp - 0xa4]
mov byte [ebp + eax - 0x4c], 0
jmp 0x10028ab6
mov eax, dword [ebp - 0x14]
mov ecx, dword [ebp - 0x18]
mov dword [eax + 0xc], ecx
push 0x7270
push 0x79bf
push 1
lea eax, [ebp - 0x14]
push eax
lea eax, [ebp - 0x24]
push eax
push 0x5750
lea eax, [ebp - 0x70]
push eax
push 0x28e8
push 0x325d
lea eax, [ebp - 0x204]
push eax
push 1
lea eax, [ebp - 0x28]
push eax
call fcn.10025f19
add esp, 0x30
mov eax, dword [ebp - 0x18]
add eax, dword [ebp - 0x70]
mov dword [ebp - 0x18], eax
push 0x551a
push 0x4bee
lea eax, [ebp - 0x18]
push eax
push 0
push 0x38e7
push 1
push 0x5ae1
push 0x596a
lea eax, [ebp - 0x24]
push eax
push 0x5174
lea eax, [ebp - 0x28]
push eax
push 0x6a86
push 1
push 0x5a18
push 0xc98
call fcn.1002749c
add esp, 0x3c
push 1
lea eax, [ebp - 0x18]
push eax
push 1
push 0x4ecc
push 0x4b
push 0x534f
call fcn.10026074
add esp, 0x18
mov eax, dword [ebp - 0x14]
cmp dword [eax + 0x18], 0
jbe 0x10028be8
mov eax, dword [ebp - 0x30]
mov ecx, dword [ebp - 0x18]
sub ecx, dword [eax]
mov eax, dword [ebp - 0x30]
mov eax, dword [eax + 4]
sub eax, ecx
mov ecx, dword [ebp - 0x14]
xor edx, edx
div dword [ecx + 0x18]
cmp eax, 0xc
jbe 0x10028bbc
mov dword [ebp - 0xbc], 0xc
jmp 0x10028bda
mov eax, dword [ebp - 0x30]
mov ecx, dword [ebp - 0x18]
sub ecx, dword [eax]
mov eax, dword [ebp - 0x30]
mov eax, dword [eax + 4]
sub eax, ecx
mov ecx, dword [ebp - 0x14]
xor edx, edx
div dword [ecx + 0x18]
mov dword [ebp - 0xbc], eax
mov eax, dword [ebp - 0xbc]
mov dword [ebp - 0xfc], eax
jmp 0x10028bef
and dword [ebp - 0xfc], 0
mov eax, dword [ebp - 0xfc]
mov dword [ebp - 0x150], eax
lea eax, [ebp - 0x150]
push eax
push 0x4620
push 1
lea eax, [ebp - 0x18]
push eax
lea eax, [ebp - 0x28]
push eax
push 0x24e
lea eax, [ebp - 0x14]
push eax
push 0x5585
push 1
lea eax, [ebp - 0x24]
push eax
push 0x2f0c
push 1
call fcn.10027cb5
add esp, 0x30
and dword [ebp - 0xc4], 0
push 1
push 1
push 0x51c3
push 0x1ad9
lea eax, [ebp - 0x30]
push eax
push 0xaa3
lea eax, [ebp - 0xc4]
push eax
lea eax, [ebp - 0x24]
push eax
lea eax, [ebp - 0x18]
push eax
lea eax, [ebp - 0x28]
push eax
call fcn.100261dd
add esp, 0x28
push 0x3b2c
push 0x7d29
push 0
lea eax, [ebp - 0xc4]
push eax
push 0x23fa
push 0x7c42
push 1
push 0x2a96
push 0x6fe6
lea eax, [ebp - 0x30]
push eax
push 0x259d
push 0x50f0
call fcn.10026b23
add esp, 0x30
mov byte [ebp - 4], 2
lea ecx, [ebp - 0x204]
call fcn.1001f1a8
or dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0x21c]
call fcn.1001f1a8
jmp 0x10028d52
mov eax, dword [ebp - 0x1cc]
mov dword [ebp - 0x1dc], eax
mov eax, dword [ebp - 0x158]
mov dword [ebp - 0x168], eax
mov eax, dword [ebp - 0x1b4]
mov dword [ebp - 0x1bc], eax
mov eax, dword [ebp - 0x160]
mov dword [ebp - 0x170], eax
mov eax, dword [ebp - 0x1dc]
mov dword [ebp - 0x19c], eax
mov eax, dword [ebp - 0x168]
mov dword [ebp - 0x1d4], eax
mov eax, dword [ebp - 0x1bc]
mov dword [ebp - 0x178], eax
mov eax, dword [ebp - 0x170]
mov dword [ebp - 0x180], eax
mov eax, dword [ebp - 0x1d4]
mov eax, dword [eax]
mov ecx, dword [ebp - 0x178]
add eax, dword [ecx]
mov ecx, dword [ebp - 0x19c]
mov ecx, dword [ecx]
mov edx, dword [ebp - 0x180]
mov edx, dword [edx]
mov dword [ecx + eax], edx
jmp 0x100290bb
mov eax, dword [ebp + 0x3c]
mov dword [ebp - 0x13c], eax
mov eax, dword [ebp + 0x10]
mov dword [ebp - 0x12c], eax
mov eax, dword [ebp + 0x40]
mov dword [ebp - 0x190], eax
lea eax, [ebp + 0x48]
mov dword [ebp - 0x1a0], eax
lea eax, [ebp + 0x38]
mov dword [ebp - 0x1a8], eax
mov eax, dword [ebp + 0x28]
mov dword [ebp - 0x134], eax
mov eax, dword [ebp + 0x34]
mov dword [ebp - 0x144], eax
mov eax, dword [ebp + 0x20]
mov dword [ebp - 0x198], eax
mov eax, dword [ebp + 0x44]
mov dword [ebp - 0x128], eax
lea eax, [ebp + 8]
mov dword [ebp - 0x188], eax
mov eax, dword [ebp - 0x1a0]
movzx eax, byte [eax]
test eax, eax
je 0x10028e4b
mov eax, dword [ebp - 0x188]
mov dword [ebp - 0xb0], eax
mov eax, dword [ebp - 0x1a8]
mov dword [ebp - 0xec], eax
mov eax, dword [ebp - 0x190]
mov dword [ebp - 0x1b0], eax
mov eax, dword [ebp - 0xec]
mov ecx, dword [ebp - 0xb0]
mov eax, dword [eax]
sub eax, dword [ecx]
jne 0x10028e01
and dword [ebp - 0xcc], 0
jmp 0x10028e2b
call fcn.10059256
mov esi, eax
call fcn.10059256
imul esi, eax
mov eax, dword [ebp - 0xec]
mov ecx, dword [ebp - 0xb0]
mov edi, dword [eax]
sub edi, dword [ecx]
mov eax, esi
cdq
idiv edi
mov dword [ebp - 0xcc], edx
mov eax, dword [ebp - 0xb0]
mov eax, dword [eax]
add eax, dword [ebp - 0xcc]
mov ecx, dword [ebp - 0x1b0]
mov dword [ecx], eax
jmp 0x100290bb
mov eax, dword [ebp - 0x198]
mov dword [ebp - 0x14c], eax
mov eax, dword [ebp - 0x128]
mov dword [ebp - 0x154], eax
mov eax, dword [ebp - 0x12c]
mov dword [ebp - 0x15c], eax
mov eax, dword [ebp - 0x134]
mov dword [ebp - 0x164], eax
mov eax, dword [ebp - 0x13c]
mov dword [ebp - 0x16c], eax
mov eax, dword [ebp - 0x144]
mov dword [ebp - 0x174], eax
mov eax, dword [ebp - 0x14c]
mov dword [ebp - 0x194], eax
mov eax, dword [ebp - 0x154]
mov dword [ebp - 0x90], eax
mov eax, dword [ebp - 0x15c]
mov dword [ebp - 0x34], eax
mov eax, dword [ebp - 0x164]
mov dword [ebp - 0x17c], eax
mov eax, dword [ebp - 0x16c]
mov dword [ebp - 0xd8], eax
mov eax, dword [ebp - 0x174]
mov dword [ebp - 0x18c], eax
mov eax, dword [ebp - 0x34]
push dword [eax]
mov ecx, dword [ebp - 0x90]
call fcn.1001f296
cmp dword [eax], 0
jne 0x10028f05
mov eax, dword [ebp - 0x17c]
mov ecx, dword [ebp - 0x34]
mov ecx, dword [ecx]
cmp dword [eax], ecx
jle 0x10028f05
and dword [ebp - 0x100], 0
jmp 0x10028f0f
mov dword [ebp - 0x100], 1
mov eax, dword [ebp - 0x34]
mov eax, dword [eax]
cmp dword [ebp - 0x100], eax
jle 0x10028f28
mov dword [ebp - 0xb8], 1
jmp 0x10028f2f
and dword [ebp - 0xb8], 0
mov eax, dword [ebp - 0x34]
cmp dword [eax], 0x8064
jne 0x10028f46
mov dword [ebp - 0xd4], 1
jmp 0x10028f4d
and dword [ebp - 0xd4], 0
mov eax, dword [ebp - 0x34]
mov eax, dword [eax]
cmp dword [ebp - 0xd4], eax
jle 0x10028f66
mov dword [ebp - 0xf4], 1
jmp 0x10028f6d
and dword [ebp - 0xf4], 0
mov eax, dword [ebp - 0x34]
push dword [eax]
mov ecx, dword [ebp - 0x90]
call fcn.1001f296
mov ecx, dword [ebp - 0xf4]
cmp ecx, dword [eax]
jl 0x10028f93
mov dword [ebp - 0xdc], 1
jmp 0x10028f9a
and dword [ebp - 0xdc], 0
mov eax, dword [ebp - 0x34]
push dword [eax]
mov ecx, dword [ebp - 0x90]
call fcn.1001f296
mov ecx, dword [ebp - 0xdc]
cmp ecx, dword [eax]
jl 0x10028fc0
mov dword [ebp - 0x184], 1
jmp 0x10028fc7
and dword [ebp - 0x184], 0
mov eax, dword [ebp - 0xd8]
mov eax, dword [eax]
mov dword [ebp - 0x1ec], eax
mov eax, 0xd9796a0b
test eax, eax
je 0x10028fef
xor eax, eax
inc eax
je 0x10028fef
mov dword [ebp - 0x108], 1
jmp 0x10028ff6
and dword [ebp - 0x108], 0
mov eax, dword [ebp - 0x34]
mov eax, dword [eax]
cmp dword [ebp - 0x108], eax
jg 0x1002900f
mov dword [ebp - 0xe4], 1
jmp 0x10029016
and dword [ebp - 0xe4], 0
push 0
mov ecx, dword [ebp - 0x90]
call fcn.1001f296
mov ecx, dword [ebp - 0xe4]
cmp ecx, dword [eax]
je 0x10029039
mov dword [ebp - 0xc0], 1
jmp 0x10029040
and dword [ebp - 0xc0], 0
mov eax, dword [ebp - 0xb8]
cmp eax, dword [ebp - 0xc0]
jl 0x1002905a
mov dword [ebp - 0xc8], 1
jmp 0x10029061
and dword [ebp - 0xc8], 0
cmp dword [ebp - 0xc8], 0xb969b42c
ja 0x10029079
mov dword [ebp - 0xd0], 1
jmp 0x10029080
and dword [ebp - 0xd0], 0
mov eax, dword [ebp - 0xd0]
neg eax
mov ecx, dword [ebp - 0x18c]
cmp eax, dword [ecx]
jge 0x1002909e
mov dword [ebp - 0xe0], 1
jmp 0x100290a5
and dword [ebp - 0xe0], 0
mov eax, dword [ebp - 0xd8]
mov eax, dword [eax]
add eax, dword [ebp - 0xe0]
mov ecx, dword [ebp - 0x194]
mov dword [ecx], eax
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop edi
pop esi
mov esp, ebp
pop ebp
ret