Function at 0x1003ccb9
Capabilities:
Contain obfuscated stackstrings

Disassembly:
push ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x100612fe
mov eax, dword fs:[0]
push eax
mov dword fs:[0], esp
push ecx
sub esp, 0x380
push ebx
push esi
push edi
mov dword [ebp - 0x10], esp
and dword [ebp - 0x1e0], 0
mov byte [ebp - 0x124], 0xf
mov byte [ebp - 0x123], 0x96
mov byte [ebp - 0x122], 0x10
mov byte [ebp - 0x121], 1
mov byte [ebp - 0x120], 3
mov byte [ebp - 0x11f], 0x15
mov byte [ebp - 0x11e], 2
mov byte [ebp - 0x11d], 7
mov byte [ebp - 0x11c], 0x15
mov byte [ebp - 0x11b], 0x15
mov byte [ebp - 0x11a], 0x12
mov byte [ebp - 0x119], 5
mov byte [ebp - 0x118], 0xd
mov byte [ebp - 0x117], 0x1d
mov byte [ebp - 0x116], 8
mov byte [ebp - 0x115], 7
mov byte [ebp - 0x114], 7
mov byte [ebp - 0x113], 1
mov byte [ebp - 0x112], 0xc
mov byte [ebp - 0x111], 5
mov byte [ebp - 0x110], 0
mov byte [ebp - 0x10f], 0xc
mov byte [ebp - 0x10e], 0x14
mov byte [ebp - 0x10d], 0x14
mov byte [ebp - 0x10c], 0x13
mov byte [ebp - 0x10b], 1
mov byte [ebp - 0x10a], 0x11
mov byte [ebp - 0x109], 6
mov byte [ebp - 0x108], 4
mov byte [ebp - 0x107], 0x17
mov byte [ebp - 0x106], 0xa
mov byte [ebp - 0x105], 0xe
mov byte [ebp - 0x104], 0x63
mov byte [ebp - 0x103], 0x53
mov byte [ebp - 0x102], 0xaa
mov byte [ebp - 0x101], 0x11
mov byte [ebp - 0x100], 0x9f
mov byte [ebp - 0xff], 0xd1
mov byte [ebp - 0xfe], 0x66
mov byte [ebp - 0xfd], 0x30
mov byte [ebp - 0xfc], 0x6b
mov byte [ebp - 0xfb], 0x9b
mov byte [ebp - 0xfa], 0x25
mov byte [ebp - 0xf9], 0x32
mov byte [ebp - 0xf8], 0x58
mov byte [ebp - 0xf7], 0x58
mov byte [ebp - 0xf6], 0x39
mov byte [ebp - 0xf5], 0x97
mov byte [ebp - 0xf4], 0x50
mov byte [ebp - 0xf3], 0x66
mov byte [ebp - 0xf2], 0xf7
mov byte [ebp - 0xf1], 0x3f
mov byte [ebp - 0xf0], 0xcb
mov byte [ebp - 0xef], 0xc7
mov byte [ebp - 0xee], 0x53
mov byte [ebp - 0xed], 0xb0
mov byte [ebp - 0xec], 0xd9
mov byte [ebp - 0xeb], 0xa5
mov byte [ebp - 0xea], 0x9a
mov byte [ebp - 0xe9], 0xee
mov byte [ebp - 0xe8], 0x6f
mov byte [ebp - 0xe7], 0xe5
mov byte [ebp - 0xe6], 0x7b
mov byte [ebp - 0xe5], 0x70
mov byte [ebp - 0xe4], 0x50
mov byte [ebp - 0xe3], 0x8e
mov byte [ebp - 0xe2], 0xc0
mov byte [ebp - 0xe1], 0x11
mov byte [ebp - 0xe0], 0x86
mov byte [ebp - 0xdf], 0x5b
mov byte [ebp - 0xde], 0xd1
mov byte [ebp - 0xdd], 0x8d
mov byte [ebp - 0xdc], 0x44
mov byte [ebp - 0xdb], 0x45
mov byte [ebp - 0xda], 0x6e
mov byte [ebp - 0xd9], 0x64
mov byte [ebp - 0xd8], 0x12
mov byte [ebp - 0xd7], 0xe9
mov byte [ebp - 0xd6], 0x46
mov byte [ebp - 0xd5], 0x23
mov byte [ebp - 0xd4], 0xaf
mov byte [ebp - 0xd3], 0x90
mov byte [ebp - 0xd2], 0xc8
mov byte [ebp - 0xd1], 3
mov byte [ebp - 0xd0], 0x92
mov byte [ebp - 0xcf], 0xa8
mov byte [ebp - 0xce], 0x5a
mov byte [ebp - 0xcd], 0x5f
mov byte [ebp - 0xcc], 0x55
mov byte [ebp - 0xcb], 0x9e
mov byte [ebp - 0xca], 0x4b
mov byte [ebp - 0xc9], 0xdc
mov byte [ebp - 0xc8], 0x95
mov byte [ebp - 0xc7], 0xcd
mov byte [ebp - 0xc6], 0x39
mov byte [ebp - 0xc5], 0x4f
mov byte [ebp - 0xc4], 0
mov byte [ebp - 0xc3], 0xe1
mov byte [ebp - 0xc2], 0xc0
mov byte [ebp - 0xc1], 0xc2
mov byte [ebp - 0xc0], 0x1a
mov byte [ebp - 0xbf], 0x13
mov byte [ebp - 0xbe], 0x98
mov byte [ebp - 0xbd], 0x26
mov byte [ebp - 0xbc], 5
mov byte [ebp - 0xbb], 0xee
mov byte [ebp - 0xba], 0xf
mov byte [ebp - 0xb9], 0xfd
mov byte [ebp - 0xb8], 0x3e
mov byte [ebp - 0xb7], 0x22
mov byte [ebp - 0xb6], 0xf0
mov byte [ebp - 0xb5], 0xa6
mov byte [ebp - 0xb4], 0xa3
mov byte [ebp - 0xb3], 0x79
mov byte [ebp - 0xb2], 0x59
mov byte [ebp - 0xb1], 0x7f
mov byte [ebp - 0xb0], 0x41
mov byte [ebp - 0xaf], 0x91
mov byte [ebp - 0xae], 0xfd
mov byte [ebp - 0xad], 0x15
mov byte [ebp - 0xac], 0xa7
mov byte [ebp - 0xab], 0x59
mov byte [ebp - 0xaa], 0xe2
mov byte [ebp - 0xa9], 0x17
mov byte [ebp - 0xa8], 0x53
mov byte [ebp - 0xa7], 0x75
mov byte [ebp - 0xa6], 0x95
mov byte [ebp - 0xa5], 0xb6
mov byte [ebp - 0xa4], 0xe6
mov byte [ebp - 0xa3], 0x1f
mov byte [ebp - 0xa2], 0x54
mov byte [ebp - 0xa1], 0xbc
mov byte [ebp - 0xa0], 0x18
mov byte [ebp - 0x9f], 0x12
mov byte [ebp - 0x9e], 0x19
mov byte [ebp - 0x9d], 3
mov byte [ebp - 0x9c], 1
mov byte [ebp - 0x9b], 0x18
mov byte [ebp - 0x9a], 5
mov byte [ebp - 0x99], 4
mov byte [ebp - 0x98], 0x17
mov byte [ebp - 0x97], 0x1e
mov byte [ebp - 0x96], 0xb
mov byte [ebp - 0x95], 0x14
mov byte [ebp - 0x94], 0xe
mov byte [ebp - 0x93], 3
mov byte [ebp - 0x92], 0x16
mov byte [ebp - 0x91], 0x18
mov byte [ebp - 0x90], 6
mov byte [ebp - 0x8f], 0x10
mov byte [ebp - 0x8e], 9
mov byte [ebp - 0x8d], 0xd
mov dword [ebp - 0x54], 0
push 2
lea ecx, [ebp - 0x2ec]
call fcn.1002bd73
and dword [ebp - 4], 0
mov dword [ebp - 0x6c], 0
jmp 0x1003d135
mov eax, dword [ebp - 0x6c]
inc eax
mov dword [ebp - 0x6c], eax
cmp dword [ebp - 0x6c], 2
jge 0x1003d151
push dword [ebp - 0x6c]
lea ecx, [ebp - 0x2ec]
call fcn.1002be11
mov dword [eax], 9
jmp 0x1003d12e
mov dword [ebp - 0x54], 0x841b3c69
mov dword [ebp - 0x54], 0
jmp 0x1003d168
mov eax, dword [ebp - 0x54]
dec eax
mov dword [ebp - 0x54], eax
cmp dword [ebp - 0x54], 0xffffffe5
je 0x1003d198
mov dword [ebp - 0x27c], 5
lea eax, [ebp - 0x27c]
push eax
call fcn.100142f3
pop ecx
mov byte [ebp - 0x2f], 0
movzx eax, byte [ebp - 0x2f]
test eax, eax
je 0x1003d196
call fcn.1002f531
jmp 0x1003d161
or dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0x2ec]
call fcn.1002bdf5
xor eax, eax
inc eax
shl eax, 0
movzx eax, byte [ebp + eax - 0x124]
and eax, 0xe6
xor ecx, ecx
inc ecx
shl ecx, 0
movzx ecx, byte [ebp + ecx - 0x124]
or ecx, 0xe6
sub ecx, eax
xor eax, eax
inc eax
imul eax, eax, 0
movzx eax, byte [ebp + eax - 0x124]
mov byte [ebp + eax - 0x2d0], cl
mov dword [ebp - 0x1c], 0x824a8c6a
mov dword [ebp - 0x44], 0xc2da8afc
mov dword [ebp - 0x2c], 0xffffffff
mov dword [ebp - 0x1c], 0xfffffff5
jmp 0x1003d20a
mov eax, dword [ebp - 0x1c]
dec eax
mov dword [ebp - 0x1c], eax
cmp dword [ebp - 0x1c], 0xfffffff3
jle 0x1003d606
mov dword [ebp - 0x28], 0x7b1891f7
mov dword [ebp - 0x154], 0x7392715e
mov dword [ebp - 0x80], 0
jmp 0x1003d235
mov eax, dword [ebp - 0x80]
inc eax
mov dword [ebp - 0x80], eax
cmp dword [ebp - 0x80], 1
jge 0x1003d24b
mov eax, dword [ebp - 0x80]
mov dword [ebp + eax*4 - 0x260], 0xffffffff
jmp 0x1003d22e
mov dword [ebp - 0x28], 0
jmp 0x1003d25b
mov eax, dword [ebp - 0x28]
dec eax
mov dword [ebp - 0x28], eax
cmp dword [ebp - 0x28], 0
jl 0x1003d601
mov dword [ebp - 0x50], 0
mov dword [ebp - 0x270], 0xfffffffe
mov dword [ebp - 0x17c], 0x5950
mov dword [ebp - 0x284], 0x1000ae38
cmp dword [ebp - 0x17c], 0x59c9
jle 0x1003d2ff
and dword [ebp - 0x74], 0
jmp 0x1003d2a3
mov eax, dword [ebp - 0x74]
inc eax
mov dword [ebp - 0x74], eax
cmp dword [ebp - 0x74], 0x65d2
jge 0x1003d2ef
and dword [ebp - 0x64], 0
jmp 0x1003d2b9
mov eax, dword [ebp - 0x64]
inc eax
mov dword [ebp - 0x64], eax
cmp dword [ebp - 0x64], 0x7c21
jge 0x1003d2ed
mov eax, dword [ebp - 0x74]
sub eax, dword [ebp - 0x64]
cdq
mov dword [ebp - 0x24c], eax
mov dword [ebp - 0x248], edx
push dword [ebp - 0x248]
push dword [ebp - 0x24c]
mov ecx, 0x10608998
call fcn.1002bc5e
jmp 0x1003d2b2
jmp 0x1003d29c
push 0x452
push 0xf80
call dword [sym.imp.GDI32.dll_SetLayout]
cmp dword [ebp - 0x1c], 0
je 0x1003d323
mov eax, 0x50faeb38
test eax, eax
je 0x1003d323
mov eax, 0x5809
test eax, eax
je 0x1003d323
mov dword [ebp - 0x160], 1
jmp 0x1003d32a
and dword [ebp - 0x160], 0
mov eax, dword [ebp - 0x1c]
cmp eax, dword [ebp - 0x160]
jle 0x1003d341
mov dword [ebp - 0x1f0], 1
jmp 0x1003d348
and dword [ebp - 0x1f0], 0
mov dword [ebp - 0x2c], 0x168a
mov eax, dword [ebp - 0x2c]
imul eax, dword [ebp - 0x1f0]
cmp eax, dword [ebp - 0x1c]
jle 0x1003d36a
mov dword [ebp - 0x1ac], 1
jmp 0x1003d371
and dword [ebp - 0x1ac], 0
mov eax, dword [ebp - 0x1c]
cmp dword [ebp - 0x1ac], eax
jg 0x1003d388
mov dword [ebp - 0x1e8], 1
jmp 0x1003d38f
and dword [ebp - 0x1e8], 0
mov eax, dword [ebp - 0x1e8]
mov dword [ebp - 0x154], eax
mov eax, dword [ebp - 0x154]
cmp eax, dword [ebp - 0x1c]
jl 0x1003d3b2
mov dword [ebp - 0x1dc], 1
jmp 0x1003d3b9
and dword [ebp - 0x1dc], 0
mov dword [ebp - 0x44], 0x573
mov eax, dword [ebp - 0x44]
cmp eax, dword [ebp - 0x1dc]
jl 0x1003d3d7
mov dword [ebp - 0x15c], 1
jmp 0x1003d3de
and dword [ebp - 0x15c], 0
mov eax, dword [ebp - 0x15c]
sub eax, 0xe2e4e
cmp eax, dword [ebp - 0x28]
jge 0x1003d3fa
mov dword [ebp - 0x1b4], 1
jmp 0x1003d401
and dword [ebp - 0x1b4], 0
mov eax, dword [ebp - 0x1c]
cmp eax, dword [ebp - 0x1b4]
jle 0x1003d418
mov dword [ebp - 0x164], 1
jmp 0x1003d41f
and dword [ebp - 0x164], 0
push 4
pop eax
imul eax, eax, 0
mov eax, dword [ebp + eax - 0x260]
cmp dword [ebp - 0x164], eax
jg 0x1003d440
mov dword [ebp - 0x268], 1
jmp 0x1003d447
and dword [ebp - 0x268], 0
mov eax, dword [ebp - 0x50]
mov dword [ebp - 0x308], eax
mov eax, dword [ebp - 0x50]
mov dword [ebp - 0x2f0], eax
mov eax, dword [ebp - 0x28]
cmp eax, dword [ebp - 0x28]
je 0x1003d46d
mov dword [ebp - 0x1f4], 1
jmp 0x1003d474
and dword [ebp - 0x1f4], 0
mov eax, dword [ebp - 0x1c]
cmp dword [ebp - 0x1f4], eax
jge 0x1003d495
mov byte [ebp - 0x2d], 0
movzx eax, byte [ebp - 0x2d]
test eax, eax
je 0x1003d490
call fcn.1002f546
jmp 0x1003d5b3
mov dword [ebp - 0x228], 8
mov dword [ebp - 0x7c], 0
jmp 0x1003d4af
mov eax, dword [ebp - 0x7c]
inc eax
mov dword [ebp - 0x7c], eax
cmp dword [ebp - 0x7c], 3
jge 0x1003d4c5
mov eax, dword [ebp - 0x7c]
mov dword [ebp + eax*4 - 0x340], 3
jmp 0x1003d4a8
mov dword [ebp - 0x2c], 0
jmp 0x1003d4d5
mov eax, dword [ebp - 0x2c]
inc eax
mov dword [ebp - 0x2c], eax
cmp dword [ebp - 0x2c], 0
jg 0x1003d52d
mov dword [ebp - 0x44], 0
jmp 0x1003d4eb
mov eax, dword [ebp - 0x44]
inc eax
mov dword [ebp - 0x44], eax
cmp dword [ebp - 0x44], 0
jg 0x1003d526
mov dword [ebp - 0x50], 0
jmp 0x1003d501
mov eax, dword [ebp - 0x50]
inc eax
mov dword [ebp - 0x50], eax
cmp dword [ebp - 0x50], 0
jg 0x1003d524
push 4
pop eax
shl eax, 0
mov dword [ebp + eax - 0x340], 0x34283644
mov dword [ebp - 0x270], 0x34283644
jmp 0x1003d4fa
jmp 0x1003d4e4
call fcn.1003cb95
jmp 0x1003d4ce
cmp dword [ebp - 0x2c], 0xc3e5f885
jbe 0x1003d542
mov dword [ebp - 0x16c], 1
jmp 0x1003d549
and dword [ebp - 0x16c], 0
mov eax, dword [ebp - 0x2c]
cmp dword [ebp - 0x16c], eax
jne 0x1003d560
mov dword [ebp - 0x1bc], 1
jmp 0x1003d567
and dword [ebp - 0x1bc], 0
mov eax, dword [ebp - 0x28]
cmp eax, dword [ebp - 0x1bc]
jl 0x1003d57e
mov dword [ebp - 0x174], 1
jmp 0x1003d585
and dword [ebp - 0x174], 0
mov eax, dword [ebp - 0x1c]
sub eax, dword [ebp - 0x174]
jne 0x1003d59d
xor eax, eax
jne 0x1003d59d
and dword [ebp - 0x1e4], 0
jmp 0x1003d5a7
mov dword [ebp - 0x1e4], 1
mov eax, dword [ebp - 0x1e4]
mov dword [ebp - 0x228], eax
mov dword [ebp - 4], 1
cmp dword [ebp - 0x17c], 0x5590
jge 0x1003d5d6
mov edx, dword [ebp - 0x284]
mov ecx, 0x10608998
call fcn.1002d708
jmp 0x1003d5f2
or dword [ebp - 4], 0xffffffff
jmp 0x1003d5fc
jmp 0x1003d254
jmp 0x1003d203
mov byte [ebp - 0x31], 0
movzx eax, byte [ebp - 0x31]
test eax, eax
je 0x1003d617
call fcn.1002f569
mov dword [ebp - 0x14], 2
and dword [ebp - 0x5c], 0
jmp 0x1003d62c
mov eax, dword [ebp - 0x14]
inc eax
inc eax
mov dword [ebp - 0x14], eax
cmp dword [ebp - 0x14], 0x98
jae 0x1003de28
push 3
lea ecx, [ebp - 0x294]
call fcn.1002bd73
mov dword [ebp - 4], 3
mov dword [ebp - 0x4c], 0xf98a59c1
mov dword [ebp - 0x2f4], 1
mov dword [ebp - 0x40], 0xb44cf59
mov dword [ebp - 0x19c], 0x2eda8ed4
mov dword [ebp - 0x240], 0x28405cef
mov dword [ebp - 0x48], 0xcbcb1a7a
mov dword [ebp - 0x278], 0xfffffff9
push 3
lea ecx, [ebp - 0x2b4]
call fcn.1002bd73
mov byte [ebp - 4], 4
mov dword [ebp - 0x38], 0x2b56095d
mov dword [ebp - 0x20], 0
jmp 0x1003d6b2
mov eax, dword [ebp - 0x20]
inc eax
mov dword [ebp - 0x20], eax
cmp dword [ebp - 0x20], 3
jge 0x1003d6ce
push dword [ebp - 0x20]
lea ecx, [ebp - 0x294]
call fcn.1002be11
mov dword [eax], 0x4e1a3622
jmp 0x1003d6ab
mov dword [ebp - 0x20], 0
jmp 0x1003d6de
mov eax, dword [ebp - 0x20]
inc eax
mov dword [ebp - 0x20], eax
cmp dword [ebp - 0x20], 3
jge 0x1003d6fa
push dword [ebp - 0x20]
lea ecx, [ebp - 0x2b4]
call fcn.1002be11
mov dword [eax], 0xebda1846
jmp 0x1003d6d7
mov dword [ebp - 0x4c], 0
jmp 0x1003d70a
mov eax, dword [ebp - 0x4c]
inc eax
mov dword [ebp - 0x4c], eax
cmp dword [ebp - 0x4c], 2
jg 0x1003db58
mov dword [ebp - 0x134], 2
mov dword [ebp - 0x8c], 0
jmp 0x1003d737
mov eax, dword [ebp - 0x8c]
inc eax
mov dword [ebp - 0x8c], eax
cmp dword [ebp - 0x8c], 3
jge 0x1003d753
mov eax, dword [ebp - 0x8c]
mov dword [ebp + eax*4 - 0x218], 0x9cf13e1
jmp 0x1003d72a
mov eax, dword [ebp - 0x38]
dec eax
mov dword [ebp - 0x38], eax
cmp dword [ebp - 0x40], 0xbba6
jle 0x1003d76f
mov dword [ebp - 0x1c4], 1
jmp 0x1003d776
and dword [ebp - 0x1c4], 0
mov eax, dword [ebp - 0x1c4]
mov dword [ebp - 0x48], eax
cmp dword [ebp - 0x48], 0
jne 0x1003d794
cmp dword [ebp - 0x38], 0
jne 0x1003d794
and dword [ebp - 0x184], 0
jmp 0x1003d79e
mov dword [ebp - 0x184], 1
cmp dword [ebp - 0x184], 0x45be
jne 0x1003d7b6
mov dword [ebp - 0x1f8], 1
jmp 0x1003d7bd
and dword [ebp - 0x1f8], 0
push 4
pop eax
shl eax, 0
mov ecx, dword [ebp - 0x1f8]
sub ecx, dword [ebp - 0x19c]
cmp ecx, dword [ebp + eax - 0x218]
jle 0x1003d7e4
mov dword [ebp - 0x18c], 1
jmp 0x1003d7eb
and dword [ebp - 0x18c], 0
mov dword [ebp - 0x134], 0
mov eax, dword [ebp - 0x134]
cmp eax, dword [ebp - 0x18c]
je 0x1003d80f
mov dword [ebp - 0x1cc], 1
jmp 0x1003d816
and dword [ebp - 0x1cc], 0
cmp dword [ebp - 0x1cc], 0x2aaf
jl 0x1003d82e
mov dword [ebp - 0x194], 1
jmp 0x1003d835
and dword [ebp - 0x194], 0
push 4
pop eax
imul eax, eax, 0
mov eax, dword [ebp + eax - 0x218]
imul eax, dword [ebp - 0x194]
test eax, eax
je 0x1003d85e
xor eax, eax
inc eax
je 0x1003d85e
mov dword [ebp - 0x1ec], 1
jmp 0x1003d865
and dword [ebp - 0x1ec], 0
mov eax, dword [ebp - 0x240]
cmp dword [ebp - 0x1ec], eax
je 0x1003d87f
mov dword [ebp - 0x1d4], 1
jmp 0x1003d886
and dword [ebp - 0x1d4], 0
mov eax, dword [ebp - 0x19c]
cmp dword [ebp - 0x1d4], eax
jge 0x1003daf8
push dword [ebp - 0x4c]
lea ecx, [ebp - 0x294]
call fcn.1002be11
cmp dword [eax], 0
je 0x1003daf8
and dword [ebp - 0x2a8], 0
and dword [ebp - 0x2a4], 0
and dword [ebp - 0x2a0], 0
and dword [ebp - 0x29c], 0
lea ecx, [ebp - 0x139]
call fcn.1002be20
push eax
lea eax, [ebp - 0x298]
push eax
lea eax, [ebp - 0x2a8]
push eax
lea ecx, [ebp - 0x378]
call fcn.1002be23
push dword [eax + 4]
push dword [eax]
lea ecx, [ebp - 0x2e0]
call fcn.1002bdcf
mov byte [ebp - 4], 5
mov dword [ebp - 0x23c], 0x802e
mov dword [ebp - 0x1a4], 0x252b
mov dword [ebp - 0x26c], 0x1000aea8
cmp dword [ebp - 0x1a4], 0x2744
jle 0x1003d9d9
and dword [ebp - 0x88], 0
jmp 0x1003d948
mov eax, dword [ebp - 0x88]
inc eax
mov dword [ebp - 0x88], eax
cmp dword [ebp - 0x88], 0x5f97
jge 0x1003d9d9
and dword [ebp - 0x84], 0
jmp 0x1003d96e
mov eax, dword [ebp - 0x84]
inc eax
mov dword [ebp - 0x84], eax
cmp dword [ebp - 0x84], 0x2e07
jge 0x1003d9d4
mov eax, dword [ebp - 0x88]
cdq
idiv dword [ebp - 0x84]
mov eax, edx
cdq
mov dword [ebp - 0x258], eax
mov dword [ebp - 0x254], edx
push dword [ebp - 0x254]
push dword [ebp - 0x258]
lea ecx, [ebp - 0x390]
call fcn.1000cda0
pop ecx
pop ecx
mov dword [ebp - 0x234], eax
mov ecx, dword [ebp - 0x234]
call fcn.1002bc3e
push eax
call fcn.1004b066
pop ecx
lea ecx, [ebp - 0x390]
call fcn.1002bc34
jmp 0x1003d961
jmp 0x1003d93b
mov byte [ebp - 4], 6
cmp dword [ebp - 0x1a4], 0x2476
jge 0x1003d9f5
push dword [ebp - 0x26c]
call fcn.1004b066
pop ecx
jmp 0x1003da11
mov dword [ebp - 4], 5
jmp 0x1003da21
push dword [ebp - 0x4c]
lea ecx, [ebp - 0x294]
call fcn.1002be11
cmp dword [eax], 0
je 0x1003da86
mov eax, 0xff510212
test eax, eax
je 0x1003da5b
push 3
lea ecx, [ebp - 0x2e0]
call fcn.1002be11
cmp dword [eax], 0
je 0x1003da5b
mov dword [ebp - 0x1fc], 1
jmp 0x1003da62
and dword [ebp - 0x1fc], 0
push 4
pop eax
shl eax, 0
mov eax, dword [ebp + eax - 0x218]
imul eax, dword [ebp - 0x1fc]
test eax, eax
je 0x1003da86
mov dword [ebp - 0x14c], 1
jmp 0x1003da8d
and dword [ebp - 0x14c], 0
push 4
pop eax
shl eax, 1
mov eax, dword [ebp + eax - 0x218]
cmp eax, dword [ebp - 0x14c]
jl 0x1003daad
mov dword [ebp - 0x150], 1
jmp 0x1003dab4
and dword [ebp - 0x150], 0
push 4
pop eax
shl eax, 1
mov eax, dword [ebp + eax - 0x218]
cmp dword [ebp - 0x150], eax
je 0x1003dad4
mov dword [ebp - 0x158], 1
jmp 0x1003dadb
and dword [ebp - 0x158], 0
mov eax, dword [ebp - 0x158]
mov dword [ebp - 0x23c], eax
mov byte [ebp - 4], 4
lea ecx, [ebp - 0x2e0]
call fcn.1002bdf5
jmp 0x1003db12
push 4
pop eax
shl eax, 0
mov eax, dword [ebp + eax - 0x218]
push 4
pop ecx
shl ecx, 0
mov dword [ebp + ecx - 0x218], eax
mov dword [ebp - 0x48], 2
jmp 0x1003db22
mov eax, dword [ebp - 0x48]
dec eax
mov dword [ebp - 0x48], eax
cmp dword [ebp - 0x48], 0
jl 0x1003db53
mov dword [ebp - 0x244], 0xff9b
lea eax, [ebp - 0x134]
push eax
lea eax, [ebp - 0x278]
push eax
call fcn.1003cbb8
pop ecx
pop ecx
mov dword [ebp - 0x244], 0xfffffff8
jmp 0x1003db1b
jmp 0x1003d703
mov dword [ebp - 0x38], 0xa
jmp 0x1003db68
mov eax, dword [ebp - 0x38]
inc eax
mov dword [ebp - 0x38], eax
cmp dword [ebp - 0x38], 0x15
jg 0x1003db9d
mov dword [ebp - 0x40], 0
jmp 0x1003db7e
mov eax, dword [ebp - 0x40]
inc eax
mov dword [ebp - 0x40], eax
cmp dword [ebp - 0x40], 2
jg 0x1003db9b
push dword [ebp - 0x40]
lea ecx, [ebp - 0x2b4]
call fcn.1002be11
cmp dword [eax], 0
je 0x1003db99
jmp 0x1003db9b
jmp 0x1003db77
jmp 0x1003db61
mov byte [ebp - 4], 3
lea ecx, [ebp - 0x2b4]
call fcn.1002bdf5
or dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0x294]
call fcn.1002bdf5
xor eax, eax
inc eax
imul eax, eax, 0
movzx eax, byte [ebp + eax - 0x124]
lea eax, [eax + eax + 2]
cmp dword [ebp - 0x14], eax
jne 0x1003dc1b
mov dword [ebp - 0x30c], 0x862f
mov byte [ebp - 0x32], 0
movzx eax, byte [ebp - 0x32]
test eax, eax
je 0x1003dbed
call fcn.1002f78e
call fcn.1003cbf6
mov eax, dword [ebp - 0x14]
movzx eax, byte [ebp + eax - 0x124]
inc eax
mov dword [ebp - 0x5c], eax
mov eax, dword [ebp - 0x14]
movzx eax, byte [ebp + eax - 0x124]
mov ecx, dword [ebp - 0x14]
lea eax, [ecx + eax - 1]
mov dword [ebp - 0x14], eax
jmp 0x1003d624
mov eax, dword [ebp - 0x14]
sub eax, dword [ebp - 0x5c]
movzx eax, byte [ebp + eax - 0x126]
movsx eax, byte [ebp + eax - 0x2d0]
mov ecx, dword [ebp - 0x14]
movzx ecx, byte [ebp + ecx - 0x123]
and ecx, eax
mov eax, dword [ebp - 0x14]
sub eax, dword [ebp - 0x5c]
movzx eax, byte [ebp + eax - 0x126]
movsx eax, byte [ebp + eax - 0x2d0]
mov edx, dword [ebp - 0x14]
movzx edx, byte [ebp + edx - 0x123]
and edx, eax
mov eax, dword [ebp - 0x14]
sub eax, dword [ebp - 0x5c]
movzx eax, byte [ebp + eax - 0x126]
movsx eax, byte [ebp + eax - 0x2d0]
mov esi, dword [ebp - 0x14]
movzx ebx, byte [ebp + esi - 0x123]
add ebx, eax
sub ebx, edx
sub ebx, ecx
mov eax, dword [ebp - 0x14]
movzx eax, byte [ebp + eax - 0x124]
mov byte [ebp + eax - 0x2d0], bl
mov dword [ebp - 0x3c], 0xffffffff
mov dword [ebp - 0x140], 0xfffffff7
mov dword [ebp - 0x2f8], 0x9c710427
mov dword [ebp - 0x144], 6
mov dword [ebp - 0x68], 0
jmp 0x1003dccf
mov eax, dword [ebp - 0x68]
inc eax
mov dword [ebp - 0x68], eax
cmp dword [ebp - 0x68], 3
jge 0x1003dce5
mov eax, dword [ebp - 0x68]
mov dword [ebp + eax*4 - 0x370], 3
jmp 0x1003dcc8
mov dword [ebp - 0x3c], 0
jmp 0x1003dcf5
mov eax, dword [ebp - 0x3c]
inc eax
mov dword [ebp - 0x3c], eax
cmp dword [ebp - 0x3c], 0x10
jne 0x1003de1f
mov dword [ebp - 0x168], 0xffffffff
mov dword [ebp - 0x70], 0
jmp 0x1003dd19
mov eax, dword [ebp - 0x70]
inc eax
mov dword [ebp - 0x70], eax
cmp dword [ebp - 0x70], 2
jge 0x1003dd2f
mov eax, dword [ebp - 0x70]
mov dword [ebp + eax*4 - 0x300], 0xfffffffa
jmp 0x1003dd12
mov eax, dword [ebp - 0x168]
mov dword [ebp - 0x31c], eax
mov eax, dword [ebp - 0x144]
dec eax
mov dword [ebp - 0x144], eax
mov eax, dword [ebp - 0x3c]
mov dword [ebp - 0x304], eax
cmp dword [ebp - 0x144], 0xc1b0
jl 0x1003dd69
mov dword [ebp - 0x148], 1
jmp 0x1003dd70
and dword [ebp - 0x148], 0
mov eax, dword [ebp - 0x3c]
imul eax, dword [ebp - 0x148]
inc eax
cmp eax, dword [ebp - 0x168]
jl 0x1003dd8f
mov dword [ebp - 0x170], 1
jmp 0x1003dd96
and dword [ebp - 0x170], 0
mov eax, dword [ebp - 0x140]
cmp dword [ebp - 0x170], eax
jle 0x1003ddb0
mov dword [ebp - 0x178], 1
jmp 0x1003ddb7
and dword [ebp - 0x178], 0
push 4
pop eax
shl eax, 0
mov eax, dword [ebp + eax - 0x370]
cmp dword [ebp - 0x178], eax
jl 0x1003ddd8
mov dword [ebp - 0x180], 1
jmp 0x1003dddf
and dword [ebp - 0x180], 0
mov eax, dword [ebp - 0x140]
imul eax, dword [ebp - 0x180]
cmp eax, dword [ebp - 0x140]
jl 0x1003de00
mov dword [ebp - 0x188], 1
jmp 0x1003de07
and dword [ebp - 0x188], 0
push 4
pop eax
imul eax, eax, 0
mov ecx, dword [ebp - 0x188]
mov dword [ebp + eax - 0x300], ecx
jmp 0x1003dcee
and dword [ebp - 0x5c], 0
jmp 0x1003d624
xor eax, eax
inc eax
imul eax, eax, 0x1a
mov byte [ebp + eax - 0x2d0], 0
lea eax, [ebp - 0x2d0]
push eax
lea ecx, [ebp - 0x358]
call fcn.100336cf
mov dword [ebp - 4], 8
and dword [ebp - 0x78], 0
jmp 0x1003de5c
mov eax, dword [ebp - 0x78]
inc eax
mov dword [ebp - 0x78], eax
cmp dword [ebp - 0x78], 0x1b
jae 0x1003de6f
mov eax, dword [ebp - 0x78]
mov byte [ebp + eax - 0x2d0], 0
jmp 0x1003de55
push 1
lea ecx, [ebp - 0x224]
call fcn.1002bd73
mov byte [ebp - 4], 9
mov dword [ebp - 0x280], 0
mov dword [ebp - 0x18], 0
jmp 0x1003de9a
mov eax, dword [ebp - 0x18]
inc eax
mov dword [ebp - 0x18], eax
cmp dword [ebp - 0x18], 3
jge 0x1003deb0
mov eax, dword [ebp - 0x18]
mov dword [ebp + eax*4 - 0x130], 0xffffffff
jmp 0x1003de93
mov dword [ebp - 0x18], 0
jmp 0x1003dec0
mov eax, dword [ebp - 0x18]
inc eax
mov dword [ebp - 0x18], eax
cmp dword [ebp - 0x18], 1
jge 0x1003dedc
push dword [ebp - 0x18]
lea ecx, [ebp - 0x224]
call fcn.1002be11
mov dword [eax], 0xfb0b0297
jmp 0x1003deb9
mov dword [ebp - 0x18], 0
jmp 0x1003deec
mov eax, dword [ebp - 0x18]
inc eax
mov dword [ebp - 0x18], eax
cmp dword [ebp - 0x18], 3
jge 0x1003df02
mov eax, dword [ebp - 0x18]
mov dword [ebp + eax*4 - 0x364], 0xfc88eb98
jmp 0x1003dee5
push 0
lea ecx, [ebp - 0x224]
call fcn.1002be11
mov dword [eax], 2
jmp 0x1003df3b
push 0
lea ecx, [ebp - 0x224]
call fcn.1002be11
mov dword [ebp - 0x190], eax
mov eax, dword [ebp - 0x190]
mov eax, dword [eax]
dec eax
mov ecx, dword [ebp - 0x190]
mov dword [ecx], eax
push 0
lea ecx, [ebp - 0x224]
call fcn.1002be11
cmp dword [eax], 0
jl 0x1003df78
push 0
lea ecx, [ebp - 0x224]
call fcn.1002be11
mov eax, dword [eax]
cmp dword [ebp + eax*4 - 0x130], 0
je 0x1003df68
jmp 0x1003df78
mov byte [ebp - 0x30], 0
lea eax, [ebp - 0x30]
push eax
call fcn.1003cc15
pop ecx
jmp 0x1003df17
push 4
pop eax
shl eax, 0
cmp dword [ebp + eax - 0x130], 0
je 0x1003dfa4
push 4
pop eax
shl eax, 0
cmp dword [ebp + eax - 0x130], 0
je 0x1003dfa4
mov dword [ebp - 0x274], 1
jmp 0x1003dfab
and dword [ebp - 0x274], 0
push 4
pop eax
shl eax, 0
cmp dword [ebp + eax - 0x130], 0
je 0x1003dfd7
push 4
pop eax
shl eax, 0
cmp dword [ebp + eax - 0x130], 0
je 0x1003dfd7
mov dword [ebp - 0x198], 1
jmp 0x1003dfde
and dword [ebp - 0x198], 0
cmp dword [ebp - 0x198], 1
jne 0x1003dff3
mov dword [ebp - 0x1a0], 1
jmp 0x1003dffa
and dword [ebp - 0x1a0], 0
push 4
pop eax
shl eax, 1
mov eax, dword [ebp + eax - 0x130]
cmp dword [ebp - 0x1a0], eax
jle 0x1003e01a
mov dword [ebp - 0x250], 1
jmp 0x1003e021
and dword [ebp - 0x250], 0
push 4
pop eax
shl eax, 0
mov eax, dword [ebp + eax - 0x130]
mov dword [ebp - 0x314], eax
push 4
pop eax
shl eax, 1
mov eax, dword [ebp + eax - 0x130]
mov dword [ebp - 0x2d4], eax
push 4
pop eax
shl eax, 1
mov eax, dword [ebp + eax - 0x130]
mov dword [ebp - 0x138], eax
push 0
lea ecx, [ebp - 0x224]
call fcn.1002be11
mov ecx, dword [ebp - 0x138]
mov dword [eax], ecx
push 4
pop eax
shl eax, 0
mov ecx, dword [ebp - 0x138]
mov dword [ebp + eax - 0x364], ecx
push 4
pop eax
shl eax, 0
push 4
pop ecx
shl ecx, 1
mov edx, dword [ebp - 0x138]
sub edx, dword [ebp + ecx - 0x130]
cmp edx, dword [ebp + eax - 0x130]
jl 0x1003e0ad
mov dword [ebp - 0x1a8], 1
jmp 0x1003e0b4
and dword [ebp - 0x1a8], 0
push 4
pop eax
shl eax, 1
mov eax, dword [ebp + eax - 0x130]
cmp dword [ebp - 0x1a8], eax
jle 0x1003e0d4
mov dword [ebp - 0x1b0], 1
jmp 0x1003e0db
and dword [ebp - 0x1b0], 0
mov eax, dword [ebp - 0x1b0]
mov dword [ebp - 0x280], eax
mov byte [ebp - 4], 8
lea ecx, [ebp - 0x224]
call fcn.1002bdf5
push 0x100075d9
lea ecx, [ebp - 0x334]
call fcn.100336cf
mov byte [ebp - 4], 0xa
mov dword [ebp - 0x58], 0x25b9b55b
mov dword [ebp - 0x58], 0
jmp 0x1003e121
mov eax, dword [ebp - 0x58]
inc eax
mov dword [ebp - 0x58], eax
cmp dword [ebp - 0x58], 8
jle 0x1003e16a
mov dword [ebp - 0x25c], 1
mov byte [ebp - 0x2e], 0
movzx eax, byte [ebp - 0x2e]
test eax, eax
je 0x1003e142
call fcn.1003cc3a
cmp dword [ebp - 0x58], 8
ja 0x1003e154
mov dword [ebp - 0x1b8], 1
jmp 0x1003e15b
and dword [ebp - 0x1b8], 0
mov eax, dword [ebp - 0x1b8]
dec eax
mov dword [ebp - 0x25c], eax
jmp 0x1003e11a
lea ecx, [ebp - 0x334]
call fcn.1003374a
cmp eax, dword [ebp + 0xc]
je 0x1003e1bb
push 0
push 0x4d85
lea eax, [ebp - 0x358]
push eax
push 0x1af8
lea eax, [ebp - 0x288]
push eax
call fcn.1003e407
add esp, 0x14
lea eax, [ebp - 0x288]
push eax
lea eax, [ebp - 0x358]
push eax
lea eax, [ebp - 0x334]
push eax
call fcn.1003cc47
add esp, 0xc
jmp 0x1003e16a
mov dword [ebp - 0x20c], 0xc05b
mov dword [ebp - 0x208], 0xc05b
mov dword [ebp - 0x204], 0xc05b
mov dword [ebp - 0x200], 0xc05b
mov dword [ebp - 0x24], 0xa8e97eed
mov dword [ebp - 0x24], 3
jmp 0x1003e1fa
mov eax, dword [ebp - 0x24]
dec eax
mov dword [ebp - 0x24], eax
cmp dword [ebp - 0x24], 0
jl 0x1003e230
mov dword [ebp - 0x60], 0xc4c8d3c8
mov dword [ebp - 0x60], 0
jmp 0x1003e217
mov eax, dword [ebp - 0x60]
inc eax
mov dword [ebp - 0x60], eax
cmp dword [ebp - 0x60], 3
jg 0x1003e22e
mov eax, dword [ebp - 0x60]
cmp dword [ebp + eax*4 - 0x20c], 0
je 0x1003e22c
jmp 0x1003e22e
jmp 0x1003e210
jmp 0x1003e1f3
push 4
pop eax
imul eax, eax, 0
push 4
pop ecx
shl ecx, 0
mov ecx, dword [ebp + ecx - 0x20c]
cmp ecx, dword [ebp + eax - 0x20c]
jle 0x1003e258
mov dword [ebp - 0x1c0], 1
jmp 0x1003e25f
and dword [ebp - 0x1c0], 0
cmp dword [ebp - 0x1c0], 0x63ab1943
jge 0x1003e277
mov dword [ebp - 0x264], 1
jmp 0x1003e27e
and dword [ebp - 0x264], 0
push 4
pop eax
imul eax, eax, 3
cmp dword [ebp + eax - 0x20c], 0xb43d
je 0x1003e29d
mov dword [ebp - 0x1c8], 1
jmp 0x1003e2a4
and dword [ebp - 0x1c8], 0
cmp dword [ebp - 0x1c8], 0
je 0x1003e2b9
mov dword [ebp - 0x1d0], 1
jmp 0x1003e2c0
and dword [ebp - 0x1d0], 0
cmp dword [ebp - 0x1d0], 0x7e7c
jg 0x1003e2de
mov eax, 0xab65
test eax, eax
jne 0x1003e2de
and dword [ebp - 0x22c], 0
jmp 0x1003e2e8
mov dword [ebp - 0x22c], 1
mov eax, dword [ebp - 0x24]
mov dword [ebp - 0x310], eax
push 4
pop eax
shl eax, 1
cmp dword [ebp + eax - 0x20c], 0
jne 0x1003e30f
cmp dword [ebp - 0x24], 0
jne 0x1003e30f
and dword [ebp - 0x1d8], 0
jmp 0x1003e319
mov dword [ebp - 0x1d8], 1
mov eax, dword [ebp - 0x24]
add eax, dword [ebp - 0x1d8]
cmp eax, dword [ebp - 0x24]
jl 0x1003e333
mov dword [ebp - 0x230], 1
jmp 0x1003e33a
and dword [ebp - 0x230], 0
xor eax, eax
jne 0x1003e357
push 4
pop eax
imul eax, eax, 3
cmp dword [ebp + eax - 0x20c], 0
jne 0x1003e357
and dword [ebp - 0x238], 0
jmp 0x1003e361
mov dword [ebp - 0x238], 1
push 4
pop eax
shl eax, 1
mov eax, dword [ebp + eax - 0x20c]
mov dword [ebp - 0x318], eax
mov dword [ebp - 0x24], 1
lea eax, [ebp - 0x334]
push eax
mov ecx, dword [ebp + 8]
call fcn.10042017
mov eax, dword [ebp - 0x1e0]
or eax, 1
mov dword [ebp - 0x1e0], eax
mov byte [ebp - 4], 8
lea ecx, [ebp - 0x334]
call fcn.100336fe
or dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0x358]
call fcn.100336fe
mov eax, dword [ebp + 8]
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret