Function at 0x1001ea8c
Capabilities:
Contain obfuscated stackstrings

Disassembly:
push ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x100702e5
mov eax, dword fs:[0]
push eax
mov dword fs:[0], esp
push ecx
sub esp, 0x574
push ebx
push esi
push edi
mov dword [ebp - 0x10], esp
movzx eax, byte [ebp + 0x24]
test eax, eax
je 0x100210d6
mov eax, dword [ebp + 0x14]
mov dword [ebp - 0x35c], eax
mov eax, dword [ebp + 8]
mov dword [ebp - 0x34c], eax
mov eax, dword [ebp + 0x18]
mov dword [ebp - 0x398], eax
mov eax, dword [ebp + 0xc]
mov dword [ebp - 0x384], eax
lea eax, [ebp + 0x10]
mov dword [ebp - 0x380], eax
lea eax, [ebp + 0x20]
mov dword [ebp - 0x354], eax
mov eax, dword [ebp - 0x380]
movzx eax, byte [eax]
test eax, eax
je 0x1001ec74
mov eax, dword [ebp - 0x34c]
mov dword [ebp - 0x364], eax
mov eax, dword [ebp - 0x354]
mov dword [ebp - 0x118], eax
mov eax, dword [ebp - 0x35c]
mov dword [ebp - 0x278], eax
mov eax, dword [0x10619928]
and eax, 1
jne 0x1001eb5c
mov eax, dword [0x10619928]
or eax, 1
mov dword [0x10619928], eax
and dword [ebp - 4], 0
mov ecx, 0x106199c4
call fcn.1002230d
push 0x10071215
call fcn.10058fc5
pop ecx
or dword [ebp - 4], 0xffffffff
movzx eax, byte [0x1061971c]
test eax, eax
je 0x1001ebce
mov ecx, 0x106199c4
call fcn.100223c4
movzx eax, al
test eax, eax
jne 0x1001ebce
push dword [ebp - 0x118]
lea eax, [ebp - 0x248]
push eax
mov ecx, 0x106199c4
call fcn.100223cd
lea eax, [ebp - 0x518]
push eax
mov ecx, 0x106199c4
call fcn.1002224c
push eax
lea ecx, [ebp - 0x248]
call fcn.1002218e
movzx eax, al
test eax, eax
je 0x1001ebce
lea ecx, [ebp - 0x248]
call fcn.100223e2
mov ecx, dword [ebp - 0x278]
mov eax, dword [eax + 4]
mov dword [ecx], eax
jmp 0x10021103
mov eax, dword [ebp - 0x118]
push dword [eax]
lea eax, [ebp - 0x54c]
push eax
call fcn.10029ed8
pop ecx
pop ecx
mov dword [ebp - 4], 1
push 0
push 0
lea eax, [ebp - 0x54c]
push eax
push dword [ebp - 0x364]
call fcn.10015299
add esp, 0x10
mov dword [ebp - 0x280], eax
push 1
push 0x1f9a
push 1
push 0x106199c4
lea eax, [ebp - 0x280]
push eax
push 0x42c4
push 0x1061971c
push dword [ebp - 0x118]
push 0x3b3f
push 1
call fcn.1001e872
add esp, 0x28
mov eax, dword [ebp - 0x278]
mov ecx, dword [ebp - 0x280]
mov dword [eax], ecx
or dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0x54c]
call fcn.10022131
jmp 0x10021103
mov eax, dword [ebp - 0x398]
mov dword [ebp - 0x258], eax
mov eax, dword [ebp - 0x384]
mov dword [ebp - 0x268], eax
mov dword [ebp - 0x74], 1
mov dword [ebp - 0x74], 0
jmp 0x1001eca3
mov eax, dword [ebp - 0x74]
inc eax
mov dword [ebp - 0x74], eax
cmp dword [ebp - 0x74], 0x11
je 0x1001ecf1
cmp dword [ebp - 0x74], 0
je 0x1001ecb1
jmp 0x1001ecf1
push 0x414
push 0x55f0
push 0x37a9
push 1
push 1
push 0x72f6
push 0x127d
push 0x604d
push 0x3a64
push 0x45bd
push 0x4a8e
push 0x2849
call fcn.1000d26c
add esp, 0x30
jmp 0x1001ec9c
push 4
lea ecx, [ebp - 0x4b0]
call fcn.100221ae
mov dword [ebp - 4], 2
mov dword [ebp - 0xec], 0
jmp 0x1001ed1e
mov eax, dword [ebp - 0xec]
inc eax
mov dword [ebp - 0xec], eax
cmp dword [ebp - 0xec], 4
jge 0x1001ed40
push dword [ebp - 0xec]
lea ecx, [ebp - 0x4b0]
call fcn.10022272
mov dword [eax], 4
jmp 0x1001ed11
mov byte [ebp - 0x3e], 0
movzx eax, byte [ebp - 0x3e]
test eax, eax
je 0x1001ed80
push 0x2b5d
push 0x6631
push 0x1494
push 1
push 0
push 0x6cda
push 0x5f48
push 0x5655
push 0x3f9
push 0x3ba7
call fcn.1000ad68
add esp, 0x28
mov byte [ebp - 0x3d], 0
push 1
push 0
lea eax, [ebp - 0x3d]
push eax
push 0x5914
push 0x316c
push 0x78b8
push 0x68d9
call fcn.1001e9a6
add esp, 0x1c
or dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0x4b0]
call fcn.10022230
mov eax, dword [0x10619928]
and eax, 2
jne 0x1001edee
mov eax, dword [0x10619928]
or eax, 2
mov dword [0x10619928], eax
mov dword [ebp - 4], 3
mov ecx, 0x10619930
call fcn.1002230d
push 0x10071206
call fcn.10058fc5
pop ecx
or dword [ebp - 4], 0xffffffff
push 0xadb
push 0x9fa
push 1
push 1
push 0x3081
push 0x3079
push 0x748
push 0x1382
push 1
push 0x561
push 0x6541
push 0x3416
push 0x6052
push 0x830
call fcn.1000d358
add esp, 0x38
push dword [ebp - 0x258]
lea ecx, [ebp - 0x3d8]
call fcn.1002206e
mov dword [ebp - 4], 4
push 3
lea ecx, [ebp - 0x3a4]
call fcn.100221ae
mov byte [ebp - 4], 5
mov dword [ebp - 0x50], 0xf5020f89
mov dword [ebp - 0x2b8], 0x6d402da3
mov dword [ebp - 0x32c], 0x334adc6f
push 0x5329
push 0x1196
push 0
push 1
push 0x467c
push 0x7a0e
push 0x1326
push 0x4527
push 0x13ec
push 0x2cca
lea eax, [ebp - 0x43c]
push eax
lea eax, [ebp - 0x3a4]
push eax
call fcn.1000f0ca
add esp, 0x30
mov dword [ebp - 0x50], 2
jmp 0x1001eec9
mov eax, dword [ebp - 0x50]
dec eax
mov dword [ebp - 0x50], eax
cmp dword [ebp - 0x50], 0
jl 0x1001efa3
mov dword [ebp - 0x288], 1
push 1
lea ecx, [ebp - 0x3f8]
call fcn.100221ae
mov byte [ebp - 4], 6
mov dword [ebp - 0x33c], 0xd17017a6
push 0x6857
lea eax, [ebp - 0x3f8]
push eax
lea eax, [ebp - 0x444]
push eax
push 0
push 1
call fcn.1000f027
add esp, 0x14
push 0
lea eax, [ebp - 0x288]
push eax
push 0xec5
lea eax, [ebp - 0x3a4]
push eax
push 0x56d7
push 1
lea eax, [ebp - 0x50]
push eax
push 0x924
push 0x60bd
push 1
push 0x3e54
call fcn.10021184
add esp, 0x2c
lea eax, [ebp - 0x3a4]
push eax
lea eax, [ebp - 0x288]
push eax
lea eax, [ebp - 0x3f8]
push eax
push 1
push 1
lea eax, [ebp - 0x50]
push eax
lea eax, [ebp - 0x2b8]
push eax
lea eax, [ebp - 0x32c]
push eax
lea eax, [ebp - 0x33c]
push eax
push 0x3583
call fcn.1000ad68
add esp, 0x28
mov byte [ebp - 4], 5
lea ecx, [ebp - 0x3f8]
call fcn.10022230
jmp 0x1001eec2
mov byte [ebp - 0x3f], 0
movzx eax, byte [ebp - 0x3f]
test eax, eax
je 0x1001efea
push 0x4b60
push 0x9e9
push 1
push 0x7430
push 0x719
push 1
push 0x6d81
push 0x4f56
push 0x18f2
push 0x14d
push 0x3213
push 1
call fcn.1000c1e9
add esp, 0x30
mov byte [ebp - 4], 4
lea ecx, [ebp - 0x3a4]
call fcn.10022230
lea eax, [ebp - 0x460]
push eax
lea ecx, [ebp - 0x3d8]
call fcn.100220c5
push dword [eax]
lea eax, [ebp - 0x468]
push eax
lea ecx, [ebp - 0x3d8]
call fcn.100220d9
push dword [eax]
lea eax, [ebp - 0x470]
push eax
lea ecx, [ebp - 0x3d8]
call fcn.100220c5
push dword [eax]
mov edx, 0x1000a39d
lea ecx, [ebp - 0x478]
call fcn.1002690d
add esp, 0xc
lea ecx, [ebp - 0x3d8]
call fcn.1000a328
mov dword [ebp - 0x260], eax
movzx eax, byte [0x10619712]
test eax, eax
je 0x1001f590
mov ecx, 0x10619930
call fcn.100223c4
movzx eax, al
test eax, eax
jne 0x1001f590
lea eax, [ebp - 0x260]
push eax
lea eax, [ebp - 0x254]
push eax
mov ecx, 0x10619930
call fcn.100223cd
lea eax, [ebp - 0x480]
push eax
mov ecx, 0x10619930
call fcn.1002224c
push eax
lea ecx, [ebp - 0x254]
call fcn.1002218e
movzx eax, al
test eax, eax
je 0x1001f590
mov dword [ebp - 0x2c0], 0x221a
cmp dword [ebp - 0x2c0], 0xf0d
jge 0x1001f202
lea eax, [ebp - 0x298]
push eax
lea eax, [ebp - 0x28c]
push eax
push 0x10007bc4
call fcn.10058dbb
add esp, 0xc
and dword [ebp - 0x38c], 0
lea eax, [ebp - 0x38c]
push eax
mov eax, dword [ebp - 0x298]
inc eax
push eax
lea ecx, [ebp - 0x3b0]
call fcn.100222eb
mov byte [ebp - 4], 7
and dword [ebp - 0x12c], 0
jmp 0x1001f12d
mov eax, dword [ebp - 0x12c]
inc eax
mov dword [ebp - 0x12c], eax
mov eax, dword [ebp - 0x12c]
cmp eax, dword [ebp - 0x28c]
jge 0x1001f179
lea eax, [ebp - 0x290]
push eax
push 0x1000770c
call fcn.10058dbb
pop ecx
pop ecx
push dword [ebp - 0x290]
lea ecx, [ebp - 0x3b0]
call fcn.10022272
xor esi, esi
inc esi
sub esi, dword [eax]
push dword [ebp - 0x290]
lea ecx, [ebp - 0x3b0]
call fcn.10022272
mov dword [eax], esi
jmp 0x1001f120
and dword [ebp - 0x134], 0
mov dword [ebp - 0xf4], 1
jmp 0x1001f199
mov eax, dword [ebp - 0xf4]
inc eax
mov dword [ebp - 0xf4], eax
mov eax, dword [ebp - 0xf4]
cmp eax, dword [ebp - 0x298]
jg 0x1001f1c8
push dword [ebp - 0xf4]
lea ecx, [ebp - 0x3b0]
call fcn.10022272
mov ecx, dword [ebp - 0x134]
add ecx, dword [eax]
mov dword [ebp - 0x134], ecx
jmp 0x1001f18c
mov eax, dword [ebp - 0x134]
cdq
sub eax, edx
sar eax, 1
mov ecx, dword [ebp - 0x28c]
sub ecx, eax
mov dword [ebp - 0x2c8], ecx
push dword [ebp - 0x2c8]
push 0x10007bcc
call fcn.10058fef
pop ecx
pop ecx
mov byte [ebp - 4], 4
lea ecx, [ebp - 0x3b0]
call fcn.10022230
mov dword [ebp - 0x20], 0x2c03342e
mov dword [ebp - 0x204], 1
mov dword [ebp - 0x164], 1
mov dword [ebp - 0x2d0], 0x17ba7da8
mov dword [ebp - 0x13c], 0xe82b3f54
mov dword [ebp - 0x370], 0xa473
mov dword [ebp - 0x20], 0xffffffff
jmp 0x1001f24b
mov eax, dword [ebp - 0x20]
dec eax
mov dword [ebp - 0x20], eax
cmp dword [ebp - 0x20], 0xffffffea
jl 0x1001f4ca
mov dword [ebp - 0x5c], 0xfffffff6
mov dword [ebp - 0x2d8], 0xd8f8f576
mov dword [ebp - 0x36c], 5
mov dword [ebp - 0x5c], 0x1d
jmp 0x1001f280
mov eax, dword [ebp - 0x5c]
dec eax
mov dword [ebp - 0x5c], eax
cmp dword [ebp - 0x5c], 0xfffffffa
jle 0x1001f313
mov dword [ebp - 0xe0], 0x72226312
mov dword [ebp - 0x488], 0x2f76ec75
mov dword [ebp - 0x490], 0xffffffff
mov dword [ebp - 0xe0], 0
jmp 0x1001f2c1
mov eax, dword [ebp - 0xe0]
dec eax
mov dword [ebp - 0xe0], eax
cmp dword [ebp - 0xe0], 0xfffffff9
je 0x1001f30e
mov dword [ebp - 0x348], 0xfffe
push 0x65c9
push 0x6fd3
lea eax, [ebp - 0x348]
push eax
push 0x2b06
push 1
push 1
push 0x706
push 0x3c01
push 0x7e5f
push 0x66ed
push 0
call fcn.1000fac6
add esp, 0x2c
jmp 0x1001f2b4
jmp 0x1001f279
mov dword [ebp - 0x270], 0x7973
mov dword [ebp - 0x350], 0x10007bd8
cmp dword [ebp - 0x270], 0x7bbf
jle 0x1001f42a
push 0x727
push 0
push 0x10e6
push 0xba8
call dword [sym.imp.USER32.dll_GetDlgItemTextA]
and dword [ebp - 0xfc], 0
jmp 0x1001f364
mov eax, dword [ebp - 0xfc]
inc eax
mov dword [ebp - 0xfc], eax
cmp dword [ebp - 0xfc], 0x7fd
jge 0x1001f42a
and dword [ebp - 0xe4], 0
jmp 0x1001f38a
mov eax, dword [ebp - 0xe4]
inc eax
mov dword [ebp - 0xe4], eax
cmp dword [ebp - 0xe4], 0x4ea7
jge 0x1001f425
and dword [ebp - 0xb4], 0
jmp 0x1001f3b0
mov eax, dword [ebp - 0xb4]
inc eax
mov dword [ebp - 0xb4], eax
cmp dword [ebp - 0xb4], 0x7bc8
jge 0x1001f420
and dword [ebp - 0xc0], 0
jmp 0x1001f3d2
mov eax, dword [ebp - 0xc0]
inc eax
mov dword [ebp - 0xc0], eax
cmp dword [ebp - 0xc0], 0x41f8
jge 0x1001f41e
mov eax, dword [ebp - 0xe4]
imul eax, dword [ebp - 0xb4]
mov ecx, dword [ebp - 0xc0]
shl eax, cl
or eax, dword [ebp - 0xfc]
cdq
mov dword [ebp - 0x338], eax
mov dword [ebp - 0x334], edx
push dword [ebp - 0x334]
push dword [ebp - 0x338]
mov ecx, 0x106185d8
call fcn.10021f59
jmp 0x1001f3c5
jmp 0x1001f3a3
jmp 0x1001f37d
jmp 0x1001f357
lea eax, [ebp - 0x2d0]
push eax
push 0x4f57
push 1
push 0
lea eax, [ebp - 0x36c]
push eax
push 0x2ffe
lea eax, [ebp - 0x20]
push eax
lea eax, [ebp - 0x2d8]
push eax
push 1
lea eax, [ebp - 0x204]
push eax
lea eax, [ebp - 0x5c]
push eax
push 0x26dc
lea eax, [ebp - 0x164]
push eax
lea eax, [ebp - 0x13c]
push eax
call fcn.1000d358
add esp, 0x38
mov byte [ebp - 4], 8
cmp dword [ebp - 0x270], 0x76c5
jge 0x1001f499
mov edx, dword [ebp - 0x350]
mov ecx, 0x106185d8
call fcn.1002654e
jmp 0x1001f4b5
mov dword [ebp - 4], 4
jmp 0x1001f4c5
jmp 0x1001f244
mov dword [ebp - 0x20], 0
jmp 0x1001f4da
mov eax, dword [ebp - 0x20]
inc eax
mov dword [ebp - 0x20], eax
cmp dword [ebp - 0x20], 0x1a
jge 0x1001f566
mov dword [ebp - 0x2e8], 0
mov dword [ebp - 0x2e0], 0x9babe4a9
mov dword [ebp - 0x16c], 0
lea eax, [ebp - 0x2e0]
push eax
push 0
lea eax, [ebp - 0x370]
push eax
push 0x2209
push 0x7245
lea eax, [ebp - 0x164]
push eax
push 0x7c0d
lea eax, [ebp - 0x16c]
push eax
lea eax, [ebp - 0x13c]
push eax
lea eax, [ebp - 0x204]
push eax
lea eax, [ebp - 0x20]
push eax
push 0x2b57
lea eax, [ebp - 0x2e8]
push eax
call fcn.1002158c
add esp, 0x34
mov eax, dword [ebp - 0x13c]
mov dword [ebp - 0x16c], eax
jmp 0x1001f4d3
lea ecx, [ebp - 0x254]
call fcn.100223e2
mov ecx, dword [ebp - 0x268]
mov eax, dword [eax + 4]
mov dword [ecx], eax
or dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0x3d8]
call fcn.100220bb
jmp 0x10021103
mov dword [ebp - 0x358], 2
mov dword [ebp - 0x2f0], 0xd686
mov dword [ebp - 0x378], 0x55fd0a32
mov dword [ebp - 0x2c], 0
jmp 0x1001f5be
mov eax, dword [ebp - 0x2c]
inc eax
mov dword [ebp - 0x2c], eax
cmp dword [ebp - 0x2c], 1
jge 0x1001f5d1
mov eax, dword [ebp - 0x2c]
mov dword [ebp + eax*4 - 0x38], 0xf506e60b
jmp 0x1001f5b7
mov dword [ebp - 0x2c], 0
jmp 0x1001f5e1
mov eax, dword [ebp - 0x2c]
inc eax
mov dword [ebp - 0x2c], eax
cmp dword [ebp - 0x2c], 1
jge 0x1001f5f7
mov eax, dword [ebp - 0x2c]
mov dword [ebp + eax*4 - 0x20c], 0x6923607a
jmp 0x1001f5da
push 4
pop eax
imul eax, eax, 0
mov eax, dword [ebp + eax - 0x38]
push 4
pop ecx
imul ecx, ecx, 0
mov dword [ebp + ecx - 0x20c], eax
push 4
pop eax
imul eax, eax, 0
cmp dword [ebp + eax - 0x38], 0xa9683648
jbe 0x1001f62a
mov dword [ebp - 0x174], 1
jmp 0x1001f631
and dword [ebp - 0x174], 0
imul eax, dword [ebp - 0x174], 0xab44
mov dword [ebp - 0x17c], eax
push 4
pop eax
imul eax, eax, 0
mov ecx, dword [ebp - 0x17c]
mov dword [ebp + eax - 0x20c], ecx
push 4
pop eax
imul eax, eax, 0
mov eax, dword [ebp + eax - 0x38]
cmp dword [ebp - 0x17c], eax
jg 0x1001f672
mov dword [ebp - 0x27c], 1
jmp 0x1001f679
and dword [ebp - 0x27c], 0
cmp dword [ebp - 0x27c], 0x69393dda
jg 0x1001f69b
push 4
pop eax
imul eax, eax, 0
cmp dword [ebp + eax - 0x38], 0
jne 0x1001f69b
and dword [ebp - 0x184], 0
jmp 0x1001f6a5
mov dword [ebp - 0x184], 1
push 4
pop eax
imul eax, eax, 0
mov eax, dword [ebp + eax - 0x38]
cmp dword [ebp - 0x184], eax
je 0x1001f6c3
mov dword [ebp - 0x214], 1
jmp 0x1001f6ca
and dword [ebp - 0x214], 0
push 4
pop eax
imul eax, eax, 0
mov eax, dword [ebp + eax - 0x38]
cmp dword [ebp - 0x214], eax
jge 0x1001f6e5
mov eax, 0xfffb
test eax, eax
jne 0x1001f6f7
mov eax, 0xc4365dea
test eax, eax
jne 0x1001f6f7
and dword [ebp - 0x18c], 0
jmp 0x1001f701
mov dword [ebp - 0x18c], 1
push 4
pop eax
imul eax, eax, 0
push 4
pop ecx
imul ecx, ecx, 0
mov ecx, dword [ebp + ecx - 0x38]
imul ecx, dword [ebp - 0x18c]
cmp ecx, dword [ebp + eax - 0x38]
jne 0x1001f72a
mov dword [ebp - 0x25c], 1
jmp 0x1001f731
and dword [ebp - 0x25c], 0
mov eax, dword [ebp - 0x25c]
mov dword [ebp - 0x358], eax
mov eax, dword [ebp - 0x2f0]
mov dword [ebp - 0x378], eax
and dword [ebp - 0x58], 0
push 1
lea ecx, [ebp - 0x4c0]
call fcn.100221ae
mov byte [ebp - 4], 0xa
mov dword [ebp - 0xc8], 0
jmp 0x1001f777
mov eax, dword [ebp - 0xc8]
inc eax
mov dword [ebp - 0xc8], eax
cmp dword [ebp - 0xc8], 1
jge 0x1001f799
push dword [ebp - 0xc8]
lea ecx, [ebp - 0x4c0]
call fcn.10022272
mov dword [eax], 0x2937a3a1
jmp 0x1001f76a
xor eax, eax
inc eax
je 0x1001f815
mov dword [ebp - 0xe8], 0
mov dword [ebp - 0xe8], 0xfffffffa
jmp 0x1001f7c1
mov eax, dword [ebp - 0xe8]
dec eax
mov dword [ebp - 0xe8], eax
cmp dword [ebp - 0xe8], 0xfffffff3
jge 0x1001f7e9
push 0x784
push 0x6ddc
push 1
push 0x3700
push 1
push 0
call fcn.1000ef44
add esp, 0x18
jmp 0x1001f7b4
mov byte [ebp - 0x40], 0
push 0x714f
push 0x1ed4
lea eax, [ebp - 0x40]
push eax
push 1
push 0x73bd
push 0x2898
push 1
push 1
call fcn.1000ec6f
add esp, 0x20
jmp 0x1001f83d
mov dword [ebp - 0x2f8], 0xfffffffe
lea eax, [ebp - 0x2f8]
push eax
push 1
push 1
call fcn.1000ed7e
add esp, 0xc
push 1
push 0
call fcn.1000c5a9
pop ecx
pop ecx
mov byte [ebp - 4], 4
lea ecx, [ebp - 0x4c0]
call fcn.10022230
lea eax, [ebp - 0x3d8]
push eax
call fcn.1000abec
pop ecx
mov dword [ebp - 0x58], eax
cmp dword [ebp - 0x58], 0
jne 0x10021015
mov dword [ebp - 0x138], 0xffffffff
mov dword [ebp - 0x144], 0xa9831117
mov dword [ebp - 0x120], 0xc7dcd66a
push 1
lea ecx, [ebp - 0x410]
call fcn.100221ae
mov byte [ebp - 4], 0xb
push 3
lea ecx, [ebp - 0x404]
call fcn.100221ae
mov byte [ebp - 4], 0xc
push 1
lea eax, [ebp - 0x64]
push eax
push 1
push 0x17a2
push 0x4281
push 0x4ca7
push 0x5a65
push 0x94d
lea eax, [ebp - 0x410]
push eax
push 0
call fcn.1001e872
add esp, 0x28
mov dword [ebp - 0x64], 0
jmp 0x1001f8e8
mov eax, dword [ebp - 0x64]
inc eax
mov dword [ebp - 0x64], eax
cmp dword [ebp - 0x64], 3
jge 0x1001f904
push dword [ebp - 0x64]
lea ecx, [ebp - 0x404]
call fcn.10022272
mov dword [eax], 0xfffffffa
jmp 0x1001f8e1
mov eax, dword [ebp - 0x138]
mov dword [ebp - 0x144], eax
cmp dword [ebp - 0x144], 0
jne 0x1001f9a1
cmp dword [ebp - 0x120], 0x182b4746
jle 0x1001f935
mov dword [ebp - 0x360], 1
jmp 0x1001f93c
and dword [ebp - 0x360], 0
mov eax, dword [ebp - 0x120]
mov dword [ebp - 0x498], eax
cmp dword [ebp - 0x144], 3
ja 0x1001f95d
mov dword [ebp - 0x194], 1
jmp 0x1001f964
and dword [ebp - 0x194], 0
mov eax, dword [ebp - 0x138]
cmp dword [ebp - 0x194], eax
jl 0x1001f97e
mov dword [ebp - 0x21c], 1
jmp 0x1001f985
and dword [ebp - 0x21c], 0
mov eax, dword [ebp - 0x120]
add eax, dword [ebp - 0x21c]
cmp eax, 0xdade
jne 0x1001f9a1
and dword [ebp - 0x19c], 0
jmp 0x1001f9ab
mov dword [ebp - 0x19c], 1
mov eax, dword [ebp - 0x19c]
neg eax
mov dword [ebp - 0x29c], eax
push 0
lea ecx, [ebp - 0x410]
call fcn.10022272
mov ecx, dword [ebp - 0x29c]
mov dword [eax], ecx
mov eax, dword [ebp - 0x138]
cmp dword [ebp - 0x29c], eax
je 0x1001f9e8
mov dword [ebp - 0x1a4], 1
jmp 0x1001f9ef
and dword [ebp - 0x1a4], 0
push 0
lea ecx, [ebp - 0x404]
call fcn.10022272
mov ecx, dword [ebp - 0x1a4]
mov dword [eax], ecx
mov byte [ebp - 4], 0xb
lea ecx, [ebp - 0x404]
call fcn.10022230
mov byte [ebp - 4], 4
lea ecx, [ebp - 0x410]
call fcn.10022230
mov dword [ebp - 0x14], 0xfb0b0297
mov dword [ebp - 0x24], 1
mov dword [ebp - 0x78], 1
mov dword [ebp - 0x130], 0x66f2fc99
mov dword [ebp - 0x374], 0xfffffff7
mov dword [ebp - 0x160], 0xfffffff9
mov dword [ebp - 0x168], 0x50fdf9f9
mov dword [ebp - 0x4a0], 1
mov dword [ebp - 0xd0], 0
jmp 0x1001fa82
mov eax, dword [ebp - 0xd0]
inc eax
mov dword [ebp - 0xd0], eax
cmp dword [ebp - 0xd0], 3
jge 0x1001fa9b
mov eax, dword [ebp - 0xd0]
mov dword [ebp + eax*4 - 0x4c], 1
jmp 0x1001fa75
mov dword [ebp - 0x14], 2
jmp 0x1001faab
mov eax, dword [ebp - 0x14]
dec eax
mov dword [ebp - 0x14], eax
cmp dword [ebp - 0x14], 0
jl 0x1002009a
mov dword [ebp - 0xd8], 0
mov dword [ebp - 0x3c], 0x5169ff4c
mov dword [ebp - 0x148], 0xffffffff
mov dword [ebp - 0x368], 0xffffffff
mov dword [ebp - 0x318], 2
mov eax, dword [ebp - 0x14]
cmp dword [ebp + eax*4 - 0x4c], 1
jl 0x1001fafa
mov dword [ebp - 0x224], 1
jmp 0x1001fb01
and dword [ebp - 0x224], 0
push 4
pop eax
imul eax, eax, 0
mov eax, dword [ebp + eax - 0x4c]
imul eax, dword [ebp - 0x14]
cmp eax, dword [ebp - 0x224]
jl 0x1001fb23
mov dword [ebp - 0x1ac], 1
jmp 0x1001fb2a
and dword [ebp - 0x1ac], 0
mov eax, dword [ebp - 0x14]
mov eax, dword [ebp + eax*4 - 0x4c]
cmp dword [ebp - 0x1ac], eax
jle 0x1001fb45
mov dword [ebp - 0x264], 1
jmp 0x1001fb4c
and dword [ebp - 0x264], 0
mov eax, dword [ebp - 0x14]
cmp dword [ebp - 0x264], eax
jle 0x1001fb63
mov dword [ebp - 0x1b4], 1
jmp 0x1001fb6a
and dword [ebp - 0x1b4], 0
mov eax, dword [ebp - 0x14]
mov eax, dword [ebp + eax*4 - 0x4c]
cmp eax, dword [ebp - 0x1b4]
jg 0x1001fb85
mov dword [ebp - 0x22c], 1
jmp 0x1001fb8c
and dword [ebp - 0x22c], 0
mov eax, dword [ebp - 0x14]
mov eax, dword [ebp + eax*4 - 0x4c]
cmp dword [ebp - 0x22c], eax
jl 0x1001fba7
mov dword [ebp - 0x300], 1
jmp 0x1001fbae
and dword [ebp - 0x300], 0
mov eax, dword [ebp - 0x14]
cmp dword [ebp + eax*4 - 0x4c], 0
je 0x1001fcbf
mov dword [ebp - 0x128], 9
cmp dword [ebp - 0x3c], 0
ja 0x1001fbd8
mov dword [ebp - 0x1bc], 1
jmp 0x1001fbdf
and dword [ebp - 0x1bc], 0
push 4
pop eax
shl eax, 1
mov ecx, dword [ebp - 0x1bc]
sub ecx, dword [ebp + eax - 0x4c]
mov dword [ebp - 0x3c], ecx
mov eax, dword [ebp - 0xd8]
add eax, dword [ebp - 0x3c]
cmp eax, 0x8d5f
je 0x1001fc0d
mov dword [ebp - 0x284], 1
jmp 0x1001fc14
and dword [ebp - 0x284], 0
mov eax, dword [ebp - 0x14]
cmp dword [ebp - 0x284], eax
jge 0x1001fc2b
mov dword [ebp - 0x1c4], 1
jmp 0x1001fc32
and dword [ebp - 0x1c4], 0
mov eax, dword [ebp - 0x14]
mov ecx, dword [ebp - 0x1c4]
sub ecx, dword [ebp + eax*4 - 0x4c]
cmp ecx, dword [ebp - 0x128]
jne 0x1001fc53
mov dword [ebp - 0x2b0], 1
jmp 0x1001fc5a
and dword [ebp - 0x2b0], 0
mov eax, dword [ebp - 0x128]
mov dword [ebp - 0x148], eax
mov eax, dword [ebp - 0x14]
imul ecx, dword [ebp - 0x128], 0x713e
cmp ecx, dword [ebp + eax*4 - 0x4c]
jg 0x1001fc85
mov dword [ebp - 0x234], 1
jmp 0x1001fc8c
and dword [ebp - 0x234], 0
push 4
pop eax
imul eax, eax, 0
mov eax, dword [ebp + eax - 0x4c]
cmp dword [ebp - 0x234], eax
jl 0x1001fcaa
mov dword [ebp - 0x1cc], 1
jmp 0x1001fcb1
and dword [ebp - 0x1cc], 0
mov eax, dword [ebp - 0x1cc]
mov dword [ebp - 0x24], eax
jmp 0x10020095
mov dword [ebp - 0x6c], 0xffffffff
mov dword [ebp - 0x3c0], 0x33b8fba3
mov dword [ebp - 0x3bc], 0x33b8fba3
mov dword [ebp - 0x3b8], 0x33b8fba3
mov dword [ebp - 0x3b4], 0x33b8fba3
mov dword [ebp - 0xf8], 0
jmp 0x1001fd07
mov eax, dword [ebp - 0xf8]
inc eax
mov dword [ebp - 0xf8], eax
cmp dword [ebp - 0xf8], 1
jge 0x1001fd23
mov eax, dword [ebp - 0xf8]
mov dword [ebp + eax*4 - 0xf0], 0xfffffffa
jmp 0x1001fcfa
cmp dword [ebp - 0xd8], 0
jne 0x1001fe93
mov eax, dword [ebp - 0x14]
mov eax, dword [ebp + eax*4 - 0x4c]
mov dword [ebp - 0x508], eax
xor eax, eax
inc eax
jne 0x1001fd54
mov eax, 0x34e4
test eax, eax
jne 0x1001fd54
and dword [ebp - 0x308], 0
jmp 0x1001fd5e
mov dword [ebp - 0x308], 1
mov eax, dword [ebp - 0x6c]
mov dword [ebp - 0x26c], eax
push 4
pop eax
imul eax, eax, 0
mov ecx, dword [ebp - 0x26c]
mov dword [ebp + eax - 0xf0], ecx
mov eax, dword [ebp - 0x14]
mov eax, dword [ebp + eax*4 - 0x4c]
cmp dword [ebp - 0x26c], eax
jl 0x1001fd98
cmp dword [ebp - 0x3c], 0
jne 0x1001fd98
and dword [ebp - 0x1d4], 0
jmp 0x1001fda2
mov dword [ebp - 0x1d4], 1
mov eax, dword [ebp - 0x1d4]
sub eax, 0x7bb5
cmp eax, dword [ebp - 0x78]
jle 0x1001fdbe
mov dword [ebp - 0x23c], 1
jmp 0x1001fdc5
and dword [ebp - 0x23c], 0
mov eax, dword [ebp - 0x23c]
add eax, dword [ebp - 0x24]
mov dword [ebp - 0x1dc], eax
push 4
pop eax
shl eax, 1
mov ecx, dword [ebp - 0x1dc]
mov dword [ebp + eax - 0x3c0], ecx
cmp dword [ebp - 0x1dc], 0
jne 0x1001fdf6
cmp dword [ebp - 0x368], 0
mov eax, dword [ebp - 0x6c]
add eax, 0xecdc
push 4
pop ecx
imul ecx, ecx, 0
push 4
pop edx
imul edx, edx, 0
mov edx, dword [ebp + edx - 0x4c]
imul edx, dword [ebp + ecx - 0x4c]
sub edx, eax
cmp edx, dword [ebp - 0xd8]
jg 0x1001fe29
mov dword [ebp - 0x294], 1
jmp 0x1001fe30
and dword [ebp - 0x294], 0
mov eax, dword [ebp - 0x78]
cmp dword [ebp - 0x294], eax
jl 0x1001fe47
mov dword [ebp - 0x1e4], 1
jmp 0x1001fe4e
and dword [ebp - 0x1e4], 0
mov eax, dword [ebp - 0x14]
cmp eax, dword [ebp - 0x1e4]
je 0x1001fe65
mov dword [ebp - 0x244], 1
jmp 0x1001fe6c
and dword [ebp - 0x244], 0
mov eax, dword [ebp - 0x244]
neg eax
jne 0x1001fe7a
cmp dword [ebp - 0x6c], 0
mov eax, dword [ebp - 0x148]
mov dword [ebp - 0x510], eax
mov eax, dword [ebp - 0x24]
add eax, 0x10194c2
mov dword [ebp - 0x78], eax
je 0x1001feab
push 4
pop eax
shl eax, 1
cmp dword [ebp + eax - 0x4c], 0
je 0x1001feab
mov dword [ebp - 0x310], 1
jmp 0x1001feb2
and dword [ebp - 0x310], 0
mov eax, dword [ebp - 0x24]
mov dword [ebp - 0x430], eax
mov eax, 0x815da772
test eax, eax
jne 0x1001fed0
mov dword [ebp - 0x1ec], 1
jmp 0x1001fed7
and dword [ebp - 0x1ec], 0
push 4
pop eax
shl eax, 0
mov eax, dword [ebp + eax - 0x4c]
cmp dword [ebp - 0x1ec], eax
jge 0x1001ff0c
push 0x1223
lea eax, [ebp - 0x148]
push eax
push 1
lea eax, [ebp - 0x78]
push eax
push 1
push 1
call fcn.1000ef44
add esp, 0x18
jmp 0x10020089
mov dword [ebp - 0x140], 1
mov dword [ebp - 0x320], 0xf80b5c32
mov eax, dword [ebp - 0x14]
mov eax, dword [ebp + eax*4 - 0x4c]
mov dword [ebp - 0x520], eax
mov eax, dword [ebp - 0x130]
dec eax
mov dword [ebp - 0x130], eax
push 4
pop eax
imul eax, eax, 0
mov ecx, dword [ebp - 0x130]
cmp ecx, dword [ebp + eax - 0x4c]
je 0x1001ff58
mov dword [ebp - 0x388], 1
jmp 0x1001ff5f
and dword [ebp - 0x388], 0
mov eax, dword [ebp - 0x140]
mov dword [ebp - 0x528], eax
push 4
pop eax
imul eax, eax, 0
mov eax, dword [ebp + eax - 0xf0]
mov dword [ebp - 0x3c], eax
mov eax, dword [ebp - 0x3c]
add eax, 0xfffe
cmp eax, dword [ebp - 0x318]
jge 0x1001ff9d
cmp dword [ebp - 0x140], 0
jne 0x1001ff9d
and dword [ebp - 0x274], 0
jmp 0x1001ffa7
mov dword [ebp - 0x274], 1
cmp dword [ebp - 0x274], 1
jl 0x1001ffbc
mov dword [ebp - 0x1f4], 1
jmp 0x1001ffc3
and dword [ebp - 0x1f4], 0
mov eax, dword [ebp - 0x1f4]
mov dword [ebp - 0x24], eax
mov eax, dword [ebp - 0x24]
mov dword [ebp - 0x530], eax
mov eax, dword [ebp - 0x3c]
mov dword [ebp - 0x4b4], eax
mov eax, dword [ebp - 0x140]
mov dword [ebp - 0x438], eax
mov eax, dword [ebp - 0x6c]
cmp eax, dword [ebp - 0xd8]
jge 0x10020001
mov dword [ebp - 0x390], 1
jmp 0x10020008
and dword [ebp - 0x390], 0
push 4
pop eax
imul eax, eax, 0
mov eax, dword [ebp + eax - 0xf0]
mov dword [ebp - 0x52c], eax
mov eax, dword [ebp - 0x14]
push 4
pop ecx
imul ecx, ecx, 0
mov ecx, dword [ebp + ecx - 0xf0]
cmp ecx, dword [ebp + eax*4 - 0x4c]
je 0x1002003d
mov dword [ebp - 0x24c], 1
jmp 0x10020044
and dword [ebp - 0x24c], 0
push 4
pop eax
imul eax, eax, 3
mov dword [ebp + eax - 0x3c0], 0xb79375e7
mov eax, 0xb79375e7
neg eax
imul eax, dword [ebp - 0x24c]
cmp eax, dword [ebp - 0x6c]
jge 0x10020074
mov dword [ebp - 0x1fc], 1
jmp 0x1002007b
and dword [ebp - 0x1fc], 0
mov eax, dword [ebp - 0x1fc]
inc eax
inc eax
mov dword [ebp - 0x320], eax
mov eax, dword [ebp - 0x14]
cmp dword [ebp + eax*4 - 0x4c], 0
je 0x10020095
jmp 0x1002009a
jmp 0x1001faa4
mov eax, dword [ebp - 0x374]
mov dword [ebp - 0x440], eax
cmp dword [ebp - 0x24], 1
jg 0x100200b8
mov dword [ebp - 0x15c], 1
jmp 0x100200bf
and dword [ebp - 0x15c], 0
push 4
pop eax
imul eax, eax, 0
mov eax, dword [ebp + eax - 0x4c]
imul eax, dword [ebp - 0x15c]
imul eax, eax, 0x4d29
mov dword [ebp - 0x24], eax
mov eax, dword [ebp - 0x24]
mov dword [ebp - 0x160], eax
mov eax, dword [ebp - 0x160]
imul eax, dword [ebp - 0x14]
sub eax, dword [ebp - 0x14]
mov dword [ebp - 0x168], eax
mov eax, dword [ebp - 0x14]
cmp eax, dword [ebp - 0x168]
jg 0x1002010c
mov dword [ebp - 0x170], 1
jmp 0x10020113
and dword [ebp - 0x170], 0
mov eax, dword [ebp - 0x170]
mov dword [ebp - 0x14], eax
cmp dword [0x10619720], 0
jne 0x10020ff7
mov dword [ebp - 0x44c], 1
mov dword [ebp - 0x448], 0xba39
mov dword [ebp - 0x450], 0x98a59c17
mov dword [ebp - 0x458], 9
mov dword [ebp - 0x454], 0xfffffffc
mov dword [ebp - 0x50c], 0xb4ebb0cb
mov dword [ebp - 0x45c], 0x3e31551d
push 4
lea ecx, [ebp - 0x4d0]
call fcn.100221ae
mov byte [ebp - 4], 0xd
mov dword [ebp - 0x4c4], 0xfffffffb
mov dword [ebp - 0x328], 0x71658a60
lea eax, [ebp - 0x464]
push eax
push 0
push 0x7006
push 1
lea eax, [ebp - 0x4d0]
push eax
push 0x4b90
call fcn.1000c81d
add esp, 0x18
push 0x6757
push 0x54d6
push 0
lea eax, [ebp - 0x328]
push eax
push 1
call fcn.1000f9e7
add esp, 0x14
mov byte [ebp - 4], 4
lea ecx, [ebp - 0x4d0]
call fcn.10022230
mov byte [ebp - 0x98], 7
mov byte [ebp - 0x97], 0x67
mov byte [ebp - 0x96], 0xb
mov byte [ebp - 0x95], 0x5e
mov byte [ebp - 0x94], 5
mov byte [ebp - 0x93], 0
mov byte [ebp - 0x92], 6
mov byte [ebp - 0x91], 0x5f
mov byte [ebp - 0x90], 3
mov byte [ebp - 0x8f], 0x5d
mov byte [ebp - 0x8e], 1
mov byte [ebp - 0x8d], 0xb
mov byte [ebp - 0x8c], 4
mov byte [ebp - 0x8b], 0
mov byte [ebp - 0x8a], 9
mov byte [ebp - 0x89], 1
mov byte [ebp - 0x88], 4
mov byte [ebp - 0x87], 0xec
mov byte [ebp - 0x86], 0x18
mov byte [ebp - 0x85], 0x35
mov byte [ebp - 0x84], 0x5a
mov byte [ebp - 0x83], 2
mov byte [ebp - 0x82], 0x16
mov byte [ebp - 0x81], 8
mov byte [ebp - 0x80], 0x5c
mov byte [ebp - 0x7f], 0
mov byte [ebp - 0x7e], 0x65
mov byte [ebp - 0x7d], 0xa
mov byte [ebp - 0x7c], 0x27
push 4
lea ecx, [ebp - 0x500]
call fcn.100221ae
mov byte [ebp - 4], 0xe
mov dword [ebp - 0xb8], 0xada439be
push 3
lea ecx, [ebp - 0x4f0]
call fcn.100221ae
mov byte [ebp - 4], 0xf
mov dword [ebp - 0x524], 0xee39
mov dword [ebp - 0x28], 0
jmp 0x100202e6
mov eax, dword [ebp - 0x28]
inc eax
mov dword [ebp - 0x28], eax
cmp dword [ebp - 0x28], 4
jge 0x10020302
push dword [ebp - 0x28]
lea ecx, [ebp - 0x500]
call fcn.10022272
mov dword [eax], 0xbbca
jmp 0x100202df
mov dword [ebp - 0x28], 0
jmp 0x10020312
mov eax, dword [ebp - 0x28]
inc eax
mov dword [ebp - 0x28], eax
cmp dword [ebp - 0x28], 3
jge 0x1002032b
push dword [ebp - 0x28]
lea ecx, [ebp - 0x4f0]
call fcn.10022272
and dword [eax], 0
jmp 0x1002030b
mov dword [ebp - 0xb8], 0
jmp 0x10020344
mov eax, dword [ebp - 0xb8]
inc eax
mov dword [ebp - 0xb8], eax
cmp dword [ebp - 0xb8], 3
jg 0x10020408
mov dword [ebp - 0x46c], 4
mov dword [ebp - 0x4d4], 0xaaaeb9ae
mov dword [ebp - 0x474], 0x707dfe4d
mov dword [ebp - 0x514], 0xfffffff8
mov dword [ebp - 0x47c], 5
mov dword [ebp - 0x30], 0
jmp 0x10020393
mov eax, dword [ebp - 0x30]
inc eax
mov dword [ebp - 0x30], eax
cmp dword [ebp - 0x30], 1
jge 0x100203a9
mov eax, dword [ebp - 0x30]
mov dword [ebp + eax*4 - 0x4e4], 0xffffffff
jmp 0x1002038c
mov dword [ebp - 0x30], 0
jmp 0x100203b9
mov eax, dword [ebp - 0x30]
inc eax
mov dword [ebp - 0x30], eax
cmp dword [ebp - 0x30], 3
jge 0x100203cf
mov eax, dword [ebp - 0x30]
mov dword [ebp + eax*4 - 0x4e0], 0xff839e07
jmp 0x100203b2
push 4
pop eax
shl eax, 1
mov eax, dword [ebp + eax - 0x4e0]
inc eax
push 4
pop ecx
shl ecx, 1
mov dword [ebp + ecx - 0x4e0], eax
push 0xfcc
push 0x11eb
push 0x2ebc
push 1
push 1
call fcn.1000f027
add esp, 0x14
jmp 0x10020337
mov byte [ebp - 4], 0xe
lea ecx, [ebp - 0x4f0]
call fcn.10022230
mov byte [ebp - 4], 4
lea ecx, [ebp - 0x500]
call fcn.10022230
xor eax, eax
inc eax
shl eax, 0
movzx eax, byte [ebp + eax - 0x98]
and eax, 0x55
xor ecx, ecx
inc ecx
shl ecx, 0
movzx ecx, byte [ebp + ecx - 0x98]
or ecx, 0x55
sub ecx, eax
xor eax, eax
inc eax
imul eax, eax, 0
movzx eax, byte [ebp + eax - 0x98]
mov word [ebp + eax*2 - 0x42c], cx
mov dword [ebp - 0x18], 2
and dword [ebp - 0xbc], 0
jmp 0x10020478
mov eax, dword [ebp - 0x18]
inc eax
inc eax
mov dword [ebp - 0x18], eax
cmp dword [ebp - 0x18], 0x1d
jae 0x1002052f
xor eax, eax
inc eax
imul eax, eax, 0
movzx eax, byte [ebp + eax - 0x98]
lea eax, [eax + eax + 2]
cmp dword [ebp - 0x18], eax
jne 0x100204c2
mov eax, dword [ebp - 0x18]
movzx eax, byte [ebp + eax - 0x98]
inc eax
mov dword [ebp - 0xbc], eax
mov eax, dword [ebp - 0x18]
movzx eax, byte [ebp + eax - 0x98]
mov ecx, dword [ebp - 0x18]
lea eax, [ecx + eax - 1]
mov dword [ebp - 0x18], eax
jmp 0x10020470
mov eax, dword [ebp - 0x18]
sub eax, dword [ebp - 0xbc]
movzx eax, byte [ebp + eax - 0x9a]
movzx eax, word [ebp + eax*2 - 0x42c]
mov ecx, dword [ebp - 0x18]
movzx ecx, byte [ebp + ecx - 0x97]
and ecx, eax
mov eax, dword [ebp - 0x18]
sub eax, dword [ebp - 0xbc]
movzx eax, byte [ebp + eax - 0x9a]
movzx eax, word [ebp + eax*2 - 0x42c]
mov edx, dword [ebp - 0x18]
movzx edx, byte [ebp + edx - 0x97]
or edx, eax
sub edx, ecx
mov eax, dword [ebp - 0x18]
movzx eax, byte [ebp + eax - 0x98]
mov word [ebp + eax*2 - 0x42c], dx
and dword [ebp - 0xbc], 0
jmp 0x10020470
mov dword [ebp - 0x3ec], 0xfffffff9
mov dword [ebp - 0x3e8], 0xfffffff9
mov dword [ebp - 0x3e4], 0xfffffff9
mov dword [ebp - 0x3e0], 0xfffffff9
lea ecx, [ebp - 0x121]
call fcn.100222d4
push eax
lea eax, [ebp - 0x3dc]
push eax
lea eax, [ebp - 0x3ec]
push eax
lea ecx, [ebp - 0x554]
call fcn.100222d7
push dword [eax + 4]
push dword [eax]
lea ecx, [ebp - 0x154]
call fcn.1002220a
mov byte [ebp - 4], 0x10
mov dword [ebp - 0x1c], 1
mov dword [ebp - 0x37c], 0xcb085bb3
mov dword [ebp - 0x1c0], 0x160a8718
mov dword [ebp - 0x2cc], 0
mov dword [ebp - 0x1e8], 0xd5d1afc4
mov dword [ebp - 0x1f0], 0xfffffffe
mov dword [ebp - 0x2e4], 0x4dfb4810
mov dword [ebp - 0x1c], 3
jmp 0x100205e3
mov eax, dword [ebp - 0x1c]
dec eax
mov dword [ebp - 0x1c], eax
cmp dword [ebp - 0x1c], 0
jl 0x10020a7b
push 2
lea ecx, [ebp - 0x108]
call fcn.100221ae
mov byte [ebp - 4], 0x11
mov dword [ebp - 0x11c], 0
mov dword [ebp - 0x2c4], 0x5297f1ff
mov dword [ebp - 0x2dc], 3
lea eax, [ebp - 0x70]
push eax
lea eax, [ebp - 0x108]
push eax
push 1
push 1
call fcn.1000c692
add esp, 0x10
mov dword [ebp - 0x70], 0
jmp 0x10020643
mov eax, dword [ebp - 0x70]
inc eax
mov dword [ebp - 0x70], eax
cmp dword [ebp - 0x70], 1
jge 0x10020659
mov eax, dword [ebp - 0x70]
mov dword [ebp + eax*4 - 0x2d4], 0xd970979b
jmp 0x1002063c
push 1
lea ecx, [ebp - 0x108]
call fcn.10022272
mov dword [eax], 3
jmp 0x10020692
push 1
lea ecx, [ebp - 0x108]
call fcn.10022272
mov dword [ebp - 0x178], eax
mov eax, dword [ebp - 0x178]
mov eax, dword [eax]
dec eax
mov ecx, dword [ebp - 0x178]
mov dword [ecx], eax
push 1
lea ecx, [ebp - 0x108]
call fcn.10022272
cmp dword [eax], 0
jl 0x1002089a
mov dword [ebp - 0x60], 0xed1ad67a
mov dword [ebp - 0x330], 0xbf199314
lea eax, [ebp - 0x154]
push eax
lea eax, [ebp - 0x1c]
push eax
push 1
lea eax, [ebp - 0x60]
push eax
lea eax, [ebp - 0x108]
push eax
push 1
call fcn.1000c74d
add esp, 0x18
mov dword [ebp - 0x60], 0xfffffff0
jmp 0x100206eb
mov eax, dword [ebp - 0x60]
inc eax
mov dword [ebp - 0x60], eax
cmp dword [ebp - 0x60], 0x17
jle 0x10020895
mov dword [ebp - 0x1a0], 4
mov dword [ebp - 0xc4], 0
jmp 0x10020718
mov eax, dword [ebp - 0xc4]
inc eax
mov dword [ebp - 0xc4], eax
cmp dword [ebp - 0xc4], 1
jge 0x10020734
mov eax, dword [ebp - 0xc4]
mov dword [ebp + eax*4 - 0x394], 0xffffffff
jmp 0x1002070b
push dword [ebp - 0x1c]
lea ecx, [ebp - 0x154]
call fcn.10022272
cmp dword [eax], 0
jne 0x10020763
push dword [ebp - 0x1c]
lea ecx, [ebp - 0x154]
call fcn.10022272
cmp dword [eax], 0
jne 0x10020763
and dword [ebp - 0x180], 0
jmp 0x1002076d
mov dword [ebp - 0x180], 1
push 0
lea ecx, [ebp - 0x108]
call fcn.10022272
mov eax, dword [eax]
cmp eax, dword [ebp - 0x180]
jl 0x10020790
mov dword [ebp - 0x188], 1
jmp 0x10020797
and dword [ebp - 0x188], 0
push 0
lea ecx, [ebp - 0x108]
call fcn.10022272
mov ecx, dword [ebp - 0x188]
cmp ecx, dword [eax]
jl 0x100207ba
mov dword [ebp - 0x190], 1
jmp 0x100207c1
and dword [ebp - 0x190], 0
imul esi, dword [ebp - 0x190], 0x5f4e
push dword [ebp - 0x1c]
lea ecx, [ebp - 0x154]
call fcn.10022272
mov edi, eax
push 0
lea ecx, [ebp - 0x154]
call fcn.10022272
mov eax, dword [eax]
imul eax, dword [edi]
cmp eax, esi
jl 0x100207fd
mov dword [ebp - 0x198], 1
jmp 0x10020804
and dword [ebp - 0x198], 0
mov eax, dword [ebp - 0x198]
mov dword [ebp - 0x1a0], eax
mov eax, dword [ebp - 0x1a0]
cmp eax, dword [ebp - 0x1c]
jg 0x10020839
push 3
lea ecx, [ebp - 0x154]
call fcn.10022272
cmp dword [eax], 0
je 0x10020839
mov dword [ebp - 0x1a8], 1
jmp 0x10020840
and dword [ebp - 0x1a8], 0
push 4
pop eax
imul eax, eax, 0
mov eax, dword [ebp + eax - 0x394]
cmp dword [ebp - 0x1a8], eax
jg 0x10020861
mov dword [ebp - 0x1b0], 1
jmp 0x10020868
and dword [ebp - 0x1b0], 0
cmp dword [ebp - 0x1b0], 0xfffffffb
jg 0x1002087d
mov dword [ebp - 0x1b8], 1
jmp 0x10020884
and dword [ebp - 0x1b8], 0
mov eax, dword [ebp - 0x1b8]
mov dword [ebp - 0x330], eax
jmp 0x100206e4
jmp 0x1002066e
push 1
lea ecx, [ebp - 0x108]
call fcn.10022272
cmp dword [eax], 0
jne 0x10020a51
push 1
lea ecx, [ebp - 0x108]
call fcn.10022272
mov eax, dword [eax]
mov dword [ebp - 0x37c], eax
mov eax, dword [ebp - 0x11c]
mov dword [ebp - 0x484], eax
push 1
lea ecx, [ebp - 0x108]
call fcn.10022272
cmp dword [eax], 0
jne 0x100208fe
push 1
lea ecx, [ebp - 0x108]
call fcn.10022272
cmp dword [eax], 0
jne 0x100208fe
and dword [ebp - 0x2b4], 0
jmp 0x10020908
mov dword [ebp - 0x2b4], 1
mov eax, dword [ebp - 0x1c]
mov dword [ebp - 0x534], eax
mov eax, dword [ebp - 0x11c]
sub eax, dword [ebp - 0x1c0]
cmp eax, dword [ebp - 0x1c0]
je 0x10020931
mov dword [ebp - 0x1c8], 1
jmp 0x10020938
and dword [ebp - 0x1c8], 0
push 0
lea ecx, [ebp - 0x154]
call fcn.10022272
mov ecx, dword [ebp - 0x1c8]
cmp ecx, dword [eax]
jl 0x1002095b
mov dword [ebp - 0x1d0], 1
jmp 0x10020962
and dword [ebp - 0x1d0], 0
mov eax, dword [ebp - 0x1c]
neg eax
cmp eax, dword [ebp - 0x1d0]
jne 0x1002097b
mov dword [ebp - 0x2bc], 1
jmp 0x10020982
and dword [ebp - 0x2bc], 0
mov eax, dword [ebp - 0x2c4]
mov dword [ebp - 0x48c], eax
mov eax, dword [ebp - 0x2cc]
mov dword [ebp - 0x4f4], eax
push 0
lea ecx, [ebp - 0x108]
call fcn.10022272
and dword [eax], 0
push 4
pop eax
imul eax, eax, 0
cmp dword [ebp + eax - 0x2d4], 0
je 0x100209cf
cmp dword [ebp - 0x2dc], 0
je 0x100209cf
mov dword [ebp - 0x1d8], 1
jmp 0x100209d6
and dword [ebp - 0x1d8], 0
cmp dword [ebp - 0x1d8], 0x2550
jl 0x100209ee
mov dword [ebp - 0x1e0], 1
jmp 0x100209f5
and dword [ebp - 0x1e0], 0
mov eax, dword [ebp - 0x1e0]
mov dword [ebp - 0x1e8], eax
mov eax, dword [ebp - 0x1e8]
mov dword [ebp - 0x1f0], eax
mov eax, dword [ebp - 0x1f0]
cmp eax, dword [ebp - 0x11c]
jg 0x10020a27
mov dword [ebp - 0x1f8], 1
jmp 0x10020a2e
and dword [ebp - 0x1f8], 0
push 1
lea ecx, [ebp - 0x154]
call fcn.10022272
mov ecx, dword [ebp - 0x1f8]
imul ecx, dword [eax]
test ecx, ecx
jne 0x10020a51
and dword [ebp - 0x200], 0
jmp 0x10020a5b
mov dword [ebp - 0x200], 1
mov eax, dword [ebp - 0x200]
mov dword [ebp - 0x2e4], eax
mov byte [ebp - 4], 0x10
lea ecx, [ebp - 0x108]
call fcn.10022230
jmp 0x100205dc
mov byte [ebp - 4], 4
lea ecx, [ebp - 0x154]
call fcn.10022230
push 2
pop eax
imul eax, eax, 0xc
xor ecx, ecx
mov word [ebp + eax - 0x42c], cx
lea eax, [ebp - 0x42c]
push eax
lea ecx, [ebp - 0x584]
call fcn.10022096
mov dword [ebp - 0x2ec], eax
mov eax, dword [ebp - 0x2ec]
mov dword [ebp - 0x2f4], eax
mov byte [ebp - 4], 0x12
push dword [ebp - 0x2f4]
call fcn.1000abec
pop ecx
mov dword [ebp - 0x250], eax
mov byte [ebp - 4], 4
lea ecx, [ebp - 0x584]
call fcn.100220bb
push 1
lea ecx, [ebp - 0x114]
call fcn.100221ae
mov byte [ebp - 4], 0x13
mov dword [ebp - 0x2fc], 0x29b3
mov dword [ebp - 0x54], 0x475ee4c2
mov dword [ebp - 0x68], 3
mov dword [ebp - 0x230], 0x700d35da
mov dword [ebp - 0x238], 0xbc21b07f
mov dword [ebp - 0x30c], 0xfffffff6
lea eax, [ebp - 0x114]
push eax
push 0x1677
push 0x55ad
push 0
lea eax, [ebp - 0x494]
push eax
push 0x2705
push 1
push 1
call fcn.1000ec6f
add esp, 0x20
push 0
lea ecx, [ebp - 0x114]
call fcn.10022272
mov esi, dword [ebp - 0x2fc]
push 0
lea ecx, [ebp - 0x114]
call fcn.10022272
cmp esi, dword [eax]
jle 0x10020b85
mov dword [ebp - 0x208], 1
jmp 0x10020b8c
and dword [ebp - 0x208], 0
cmp dword [ebp - 0x208], 0xffffffff
jbe 0x10020ba1
mov dword [ebp - 0x210], 1
jmp 0x10020ba8
and dword [ebp - 0x210], 0
mov eax, dword [ebp - 0x210]
mov dword [ebp - 0x54], eax
mov eax, dword [ebp - 0x54]
cmp eax, dword [ebp - 0x68]
jl 0x10020bc5
mov dword [ebp - 0x304], 1
jmp 0x10020bcc
and dword [ebp - 0x304], 0
push 0
lea ecx, [ebp - 0x114]
call fcn.10022272
mov esi, dword [ebp - 0x68]
push 0
lea ecx, [ebp - 0x114]
call fcn.10022272
mov eax, dword [eax]
add eax, 4
cmp eax, esi
jl 0x10020bfe
mov dword [ebp - 0x218], 1
jmp 0x10020c05
and dword [ebp - 0x218], 0
push 0
lea ecx, [ebp - 0x114]
call fcn.10022272
mov ecx, dword [ebp - 0x218]
cmp ecx, dword [eax]
jl 0x10020c28
mov dword [ebp - 0x220], 1
jmp 0x10020c2f
and dword [ebp - 0x220], 0
mov esi, dword [ebp - 0x68]
push 0
lea ecx, [ebp - 0x114]
call fcn.10022272
mov eax, dword [eax]
sub eax, dword [ebp - 0x220]
neg eax
cmp eax, esi
jg 0x10020c59
mov dword [ebp - 0x228], 1
jmp 0x10020c60
and dword [ebp - 0x228], 0
mov eax, dword [ebp - 0x228]
mov dword [ebp - 0x230], eax
mov eax, dword [ebp - 0x230]
mov dword [ebp - 0x51c], eax
mov eax, dword [ebp - 0x68]
mov dword [ebp - 0x49c], eax
mov eax, dword [ebp - 0x68]
mov dword [ebp - 0x238], eax
mov esi, dword [ebp - 0x238]
push 0
lea ecx, [ebp - 0x114]
call fcn.10022272
cmp esi, dword [eax]
jl 0x10020cad
mov dword [ebp - 0x240], 1
jmp 0x10020cb4
and dword [ebp - 0x240], 0
mov eax, dword [ebp - 0x30c]
cmp dword [ebp - 0x240], eax
jge 0x10020cce
mov dword [ebp - 0x314], 1
jmp 0x10020cd5
and dword [ebp - 0x314], 0
push 0
lea ecx, [ebp - 0x114]
call fcn.10022272
push 0
lea ecx, [ebp - 0x114]
call fcn.10022272
mov dword [eax], 0x85ca2589
mov dword [ebp - 0x54], 0
jmp 0x10020d05
mov eax, dword [ebp - 0x54]
dec eax
mov dword [ebp - 0x54], eax
cmp dword [ebp - 0x54], 0xfffffffb
je 0x10020db8
mov dword [ebp - 0x504], 0x4b71808a
mov dword [ebp - 0x4a4], 8
mov dword [ebp - 0x434], 0x3674f9af
mov dword [ebp - 0xcc], 0
jmp 0x10020d46
mov eax, dword [ebp - 0xcc]
inc eax
mov dword [ebp - 0xcc], eax
cmp dword [ebp - 0xcc], 2
jge 0x10020d62
mov eax, dword [ebp - 0xcc]
mov dword [ebp + eax*4 - 0x344], 2
jmp 0x10020d39
push 4
pop eax
shl eax, 0
imul esi, dword [ebp + eax - 0x344], 0
push 0
lea ecx, [ebp - 0x114]
call fcn.10022272
mov dword [eax], esi
push 4
pop eax
shl eax, 0
mov eax, dword [ebp + eax - 0x344]
dec eax
push 4
pop ecx
shl ecx, 0
mov dword [ebp + ecx - 0x344], eax
push 0x2fdd
push 0x7092
push 0
push 0x7fc6
call fcn.100214ac
add esp, 0x10
jmp 0x10020cfe
mov byte [ebp - 4], 4
lea ecx, [ebp - 0x114]
call fcn.10022230
and dword [ebp - 0xd4], 0
jmp 0x10020ddd
mov eax, dword [ebp - 0xd4]
inc eax
mov dword [ebp - 0xd4], eax
cmp dword [ebp - 0xd4], 0xd
jae 0x10020df8
xor eax, eax
mov ecx, dword [ebp - 0xd4]
mov word [ebp + ecx*2 - 0x42c], ax
jmp 0x10020dd0
push 0x4049
push 1
push 1
call fcn.1000f398
add esp, 0xc
cmp dword [ebp - 0x250], 0
je 0x10020ff7
mov byte [ebp - 0xb0], 2
mov byte [ebp - 0xaf], 0x59
mov byte [ebp - 0xae], 8
mov byte [ebp - 0xad], 0
mov byte [ebp - 0xac], 1
mov byte [ebp - 0xab], 0xe
mov byte [ebp - 0xaa], 0xb
mov byte [ebp - 0xa9], 0x38
mov byte [ebp - 0xa8], 3
mov byte [ebp - 0xa7], 0x33
mov byte [ebp - 0xa6], 9
mov byte [ebp - 0xa5], 0x16
mov byte [ebp - 0xa4], 6
mov byte [ebp - 0xa3], 0x10
mov byte [ebp - 0xa2], 7
mov byte [ebp - 0xa1], 0x10
mov byte [ebp - 0xa0], 0
mov byte [ebp - 0x9f], 0x3e
mov byte [ebp - 0x9e], 5
mov byte [ebp - 0x9d], 0x25
mov byte [ebp - 0x9c], 0xa
mov byte [ebp - 0x9b], 0x10
mov byte [ebp - 0x9a], 4
mov byte [ebp - 0x99], 0x35
xor eax, eax
inc eax
shl eax, 0
movzx eax, byte [ebp + eax - 0xb0]
and eax, 0x38
xor ecx, ecx
inc ecx
shl ecx, 0
movzx ecx, byte [ebp + ecx - 0xb0]
or ecx, 0x38
sub ecx, eax
xor eax, eax
inc eax
imul eax, eax, 0
movzx eax, byte [ebp + eax - 0xb0]
mov byte [ebp + eax - 0x2ac], cl
mov dword [ebp - 0x34], 2
and dword [ebp - 0x158], 0
jmp 0x10020f0f
mov eax, dword [ebp - 0x34]
inc eax
inc eax
mov dword [ebp - 0x34], eax
cmp dword [ebp - 0x34], 0x18
jae 0x10020f77
mov eax, dword [ebp - 0x34]
sub eax, dword [ebp - 0x158]
movzx eax, byte [ebp + eax - 0xb2]
movsx eax, byte [ebp + eax - 0x2ac]
mov ecx, dword [ebp - 0x34]
movzx ecx, byte [ebp + ecx - 0xaf]
and ecx, eax
mov eax, dword [ebp - 0x34]
sub eax, dword [ebp - 0x158]
movzx eax, byte [ebp + eax - 0xb2]
movsx eax, byte [ebp + eax - 0x2ac]
mov edx, dword [ebp - 0x34]
movzx edx, byte [ebp + edx - 0xaf]
or edx, eax
sub edx, ecx
mov eax, dword [ebp - 0x34]
movzx eax, byte [ebp + eax - 0xb0]
mov byte [ebp + eax - 0x2ac], dl
jmp 0x10020f07
xor eax, eax
inc eax
imul eax, eax, 0xc
mov byte [ebp + eax - 0x2ac], 0
lea eax, [ebp - 0x2ac]
push eax
lea ecx, [ebp - 0x56c]
call fcn.10022102
mov byte [ebp - 4], 0x14
and dword [ebp - 0xdc], 0
jmp 0x10020fb1
mov eax, dword [ebp - 0xdc]
inc eax
mov dword [ebp - 0xdc], eax
cmp dword [ebp - 0xdc], 0xd
jae 0x10020fca
mov eax, dword [ebp - 0xdc]
mov byte [ebp + eax - 0x2ac], 0
jmp 0x10020fa4
push 0
push 0
lea eax, [ebp - 0x56c]
push eax
push dword [ebp - 0x250]
call fcn.10015299
add esp, 0x10
mov dword [0x10619720], eax
mov byte [ebp - 4], 4
lea ecx, [ebp - 0x56c]
call fcn.10022131
cmp dword [0x10619720], 0
je 0x10021015
mov ecx, dword [ebp - 0x258]
call fcn.100220f7
push eax
call dword [0x10619720]
mov dword [ebp - 0x58], eax
cmp dword [ebp - 0x58], 0
je 0x10021098
movzx eax, byte [0x10619712]
test eax, eax
je 0x10021037
mov ecx, 0x10619930
call fcn.100223c4
movzx eax, al
test eax, eax
jne 0x10021098
push 1
push 0x5fab
push 0x7885
lea eax, [ebp - 0x260]
push eax
push 0xc4e
push 1
lea eax, [ebp - 0x58]
push eax
push 0x10619930
call fcn.1000f835
add esp, 0x20
push 0
push 0x1826
push 0x545c
push 0x43ab
push 0x4be5
push 0
push 0x54d
push 0x3c6d
push 0x10619712
push 1
push 0x26e8
call fcn.10021184
add esp, 0x2c
push 1
push 1
push 0x720f
call fcn.1000f918
add esp, 0xc
mov eax, dword [ebp - 0x268]
mov ecx, dword [ebp - 0x58]
mov dword [eax], ecx
or dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0x3d8]
call fcn.100220bb
jmp 0x10021103
mov eax, dword [ebp + 0x1c]
mov dword [ebp - 0x324], eax
mov eax, dword [ebp + 0x28]
mov dword [ebp - 0x31c], eax
push dword [ebp - 0x31c]
push 1
push dword [ebp - 0x324]
push 0x29e7
call fcn.1000c537
add esp, 0x10
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret