Function at 0x10046189
Capabilities:
Encrypt data using speck
Parse pe header
Set thread local storage value

Disassembly:
push ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x1006272d
mov eax, dword fs:[0]
push eax
mov dword fs:[0], esp
push ecx
sub esp, 0x75c
push ebx
push esi
push edi
mov dword [ebp - 0x10], esp
and dword [ebp - 0x30], 0
mov dword [ebp - 0x18], 0xd4081c29
mov dword [ebp - 0x4c], 0xfffffff7
mov dword [ebp - 0x38], 0
jmp 0x100461d0
mov eax, dword [ebp - 0x38]
inc eax
mov dword [ebp - 0x38], eax
cmp dword [ebp - 0x38], 1
jge 0x100461e3
mov eax, dword [ebp - 0x38]
mov dword [ebp + eax*4 - 0x24], 0xffffffff
jmp 0x100461c9
mov dword [ebp - 0x38], 0
jmp 0x100461f3
mov eax, dword [ebp - 0x38]
inc eax
mov dword [ebp - 0x38], eax
cmp dword [ebp - 0x38], 1
jge 0x10046209
mov eax, dword [ebp - 0x38]
mov dword [ebp + eax*4 - 0x3b8], 0xffffffff
jmp 0x100461ec
mov dword [ebp - 0x18], 0
jmp 0x10046219
mov eax, dword [ebp - 0x18]
dec eax
mov dword [ebp - 0x18], eax
cmp dword [ebp - 0x18], 0
jl 0x10046701
mov dword [ebp - 0x3c], 0x69be5411
mov dword [ebp - 0x1c4], 0
or eax, 0xffffffff
je 0x100462cb
mov eax, dword [ebp - 0x18]
cmp dword [ebp + eax*4 - 0x24], 0xdbf0
jne 0x10046256
mov dword [ebp - 0x288], 1
jmp 0x1004625d
and dword [ebp - 0x288], 0
mov eax, dword [ebp - 0x288]
mov dword [ebp - 0x3c], eax
mov eax, dword [ebp - 0x3c]
cmp eax, dword [ebp - 0x18]
jle 0x1004627a
mov dword [ebp - 0x380], 1
jmp 0x10046281
and dword [ebp - 0x380], 0
mov eax, dword [ebp - 0x18]
cmp dword [ebp - 0x380], eax
jge 0x10046298
mov dword [ebp - 0x3e0], 1
jmp 0x1004629f
and dword [ebp - 0x3e0], 0
mov eax, dword [ebp - 0x18]
mov eax, dword [ebp + eax*4 - 0x24]
mov dword [ebp - 0x604], eax
mov eax, dword [ebp - 0x18]
mov ecx, dword [ebp - 0x18]
imul ecx, dword [ebp + eax*4 - 0x24]
add ecx, 5
mov dword [ebp - 0x4c], ecx
je 0x100462cb
mov dword [ebp - 0x394], 1
jmp 0x100462d2
and dword [ebp - 0x394], 0
cmp dword [ebp - 0x394], 0x3c225155
jne 0x100462ea
mov dword [ebp - 0x39c], 1
jmp 0x100462f1
and dword [ebp - 0x39c], 0
cmp dword [ebp - 0x39c], 0xfffffff7
je 0x10046309
cmp dword [ebp - 0x18], 0
jne 0x10046309
and dword [ebp - 0x19c], 0
jmp 0x10046313
mov dword [ebp - 0x19c], 1
push 4
pop eax
imul eax, eax, 0
mov ecx, dword [ebp - 0x19c]
sub ecx, dword [ebp + eax - 0x24]
mov eax, dword [ebp - 0x18]
cmp dword [ebp + eax*4 - 0x24], ecx
jl 0x10046338
mov dword [ebp - 0x378], 1
jmp 0x1004633f
and dword [ebp - 0x378], 0
imul eax, dword [ebp - 0x378], 0xfffc
cmp eax, dword [ebp - 0x18]
jl 0x1004635a
mov dword [ebp - 0x198], 1
jmp 0x10046361
and dword [ebp - 0x198], 0
mov eax, dword [ebp - 0x198]
add eax, 0x10aa
cmp eax, 1
jge 0x1004637d
mov dword [ebp - 0x29c], 1
jmp 0x10046384
and dword [ebp - 0x29c], 0
mov eax, dword [ebp - 0x18]
cmp dword [ebp - 0x29c], eax
jge 0x1004639f
cmp dword [ebp - 0x3c], 0
je 0x1004639a
jmp 0x10046701
jmp 0x1004665f
mov dword [ebp - 0x1ac], 0x7682c5a4
mov dword [ebp - 0x35c], 9
push 3
lea ecx, [ebp - 0x510]
call fcn.10012962
and dword [ebp - 4], 0
lea eax, [ebp - 0x510]
push eax
lea eax, [ebp - 0x608]
push eax
call fcn.100455fe
pop ecx
pop ecx
push 4
pop eax
imul eax, eax, 0
mov eax, dword [ebp + eax - 0x24]
cmp eax, dword [ebp - 0x3c]
jne 0x100463f4
mov dword [ebp - 0x42c], 1
jmp 0x100463fb
and dword [ebp - 0x42c], 0
cmp dword [ebp - 0x1ac], 6
je 0x10046410
mov dword [ebp - 0x1a4], 1
jmp 0x10046417
and dword [ebp - 0x1a4], 0
mov eax, dword [ebp - 0x3c]
cmp dword [ebp - 0x1a4], eax
jg 0x1004642e
mov dword [ebp - 0x31c], 1
jmp 0x10046435
and dword [ebp - 0x31c], 0
cmp dword [ebp - 0x31c], 0x63780d77
je 0x1004644d
mov dword [ebp - 0x434], 1
jmp 0x10046454
and dword [ebp - 0x434], 0
mov eax, dword [ebp - 0x1ac]
mov dword [ebp - 0x670], eax
mov eax, dword [ebp - 0x18]
push 4
pop ecx
imul ecx, ecx, 0
push 4
pop edx
imul edx, edx, 0
mov edx, dword [ebp + edx - 0x24]
add edx, dword [ebp + ecx - 0x24]
imul edx, dword [ebp + eax*4 - 0x24]
test edx, edx
je 0x10046490
xor eax, eax
je 0x10046490
mov dword [ebp - 0x2a4], 1
jmp 0x10046497
and dword [ebp - 0x2a4], 0
imul eax, dword [ebp - 0x2a4], 0xfffffffb
test eax, eax
jne 0x100464b8
push 4
pop eax
imul eax, eax, 0
cmp dword [ebp + eax - 0x24], 0
jne 0x100464b8
and dword [ebp - 0x1b4], 0
jmp 0x100464c2
mov dword [ebp - 0x1b4], 1
mov eax, dword [ebp - 0x3c]
imul eax, dword [ebp - 0x1b4]
mov dword [ebp - 0x35c], eax
cmp dword [ebp - 0x35c], 0xefe3
jle 0x100464ea
mov dword [ebp - 0x4c8], 1
jmp 0x100464f1
and dword [ebp - 0x4c8], 0
push 1
lea ecx, [ebp - 0x510]
call fcn.10012a00
mov dword [eax], 0xe048ffd5
mov eax, dword [ebp - 0x18]
cmp dword [ebp + eax*4 - 0x24], 0xe048ffd5
jle 0x1004651d
mov dword [ebp - 0x1bc], 1
jmp 0x10046524
and dword [ebp - 0x1bc], 0
mov eax, dword [ebp - 0x1bc]
mov dword [ebp - 0x1c4], eax
mov dword [ebp - 0x2ac], 0x1576
mov dword [ebp - 0x4d8], 0x1000b848
cmp dword [ebp - 0x2ac], 0x16d8
jle 0x100465f4
and dword [ebp - 0x104], 0
jmp 0x1004656a
mov eax, dword [ebp - 0x104]
inc eax
mov dword [ebp - 0x104], eax
cmp dword [ebp - 0x104], 0x1fa7
jge 0x100465f4
and dword [ebp - 0x100], 0
jmp 0x1004658c
mov eax, dword [ebp - 0x100]
inc eax
mov dword [ebp - 0x100], eax
cmp dword [ebp - 0x100], 0x2739
jge 0x100465ef
mov eax, dword [ebp - 0x104]
or eax, dword [ebp - 0x100]
cdq
mov dword [ebp - 0x440], eax
mov dword [ebp - 0x43c], edx
push dword [ebp - 0x43c]
push dword [ebp - 0x440]
lea ecx, [ebp - 0x724]
call fcn.1000d0ee
pop ecx
pop ecx
mov dword [ebp - 0x4d0], eax
mov ecx, dword [ebp - 0x4d0]
call fcn.1001271a
push eax
call fcn.1004c14f
pop ecx
lea ecx, [ebp - 0x724]
call fcn.10012710
jmp 0x1004657f
jmp 0x1004655d
cmp dword [ebp - 0x4c], 0
je 0x1004660e
or dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0x510]
call fcn.100129e4
jmp 0x10046701
mov byte [ebp - 4], 1
cmp dword [ebp - 0x2ac], 0x123c
jge 0x1004662a
push dword [ebp - 0x4d8]
call fcn.1004c14f
pop ecx
jmp 0x10046646
and dword [ebp - 4], 0
jmp 0x10046650
or dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0x510]
call fcn.100129e4
mov dword [ebp - 0x4c], 0
jmp 0x1004666f
mov eax, dword [ebp - 0x4c]
dec eax
mov dword [ebp - 0x4c], eax
cmp dword [ebp - 0x4c], 0
jl 0x100466fc
mov dword [ebp - 0x424], 0x3ebaa2df
mov eax, dword [ebp - 0x18]
cmp dword [ebp + eax*4 - 0x24], 0
je 0x1004668f
jmp 0x100466fc
mov eax, dword [ebp - 0x1c4]
mov dword [ebp - 0x3c], eax
imul eax, dword [ebp - 0x3c], 0x8870
test eax, eax
je 0x100466c2
mov dword [ebp - 0x4e0], 0x8f5e
cmp dword [ebp - 0x4e0], 0
je 0x100466b8
jmp 0x100466fc
cmp dword [ebp - 0x3c], 0
je 0x100466c0
jmp 0x10046668
jmp 0x100466f7
mov dword [ebp - 0x484], 0x7209
mov eax, dword [ebp - 0x424]
mov dword [ebp - 0x324], eax
push 4
pop eax
imul eax, eax, 0
mov ecx, dword [ebp - 0x324]
mov dword [ebp + eax - 0x3b8], ecx
mov eax, dword [ebp - 0x324]
mov dword [ebp - 0x484], eax
jmp 0x10046668
jmp 0x10046212
call fcn.10045646
mov eax, dword [ebp + 8]
mov dword [ebp - 0x174], eax
mov dword [ebp - 0x11c], 0x8a8f
mov dword [ebp - 0x3c0], 0xf6dd8d13
mov dword [ebp - 0x9c], 0
jmp 0x1004673c
mov eax, dword [ebp - 0x9c]
inc eax
mov dword [ebp - 0x9c], eax
cmp dword [ebp - 0x9c], 1
jge 0x10046758
mov eax, dword [ebp - 0x9c]
mov dword [ebp + eax*4 - 0x610], 0x94a1888
jmp 0x1004672f
lea eax, [ebp - 0x3c0]
push eax
call fcn.10045752
pop ecx
mov dword [ebp - 0x11c], 0
jmp 0x1004677e
mov eax, dword [ebp - 0x11c]
inc eax
mov dword [ebp - 0x11c], eax
cmp dword [ebp - 0x11c], 0x17
je 0x100467e8
mov byte [ebp - 0x54], 0
movzx eax, byte [ebp - 0x54]
test eax, eax
je 0x100467d8
push 0x43cd
push 1
push 0x67ad
push 0x25a3
push 0x9fa
push 0x120e
push 0x3284
push 0x66b2
push 1
push 0x67ca
push 0x3a6d
push 0x3111
push 1
push 0xdbc
call fcn.1003d308
add esp, 0x38
mov byte [ebp - 0x50], 0
lea eax, [ebp - 0x50]
push eax
call fcn.1004576b
pop ecx
jmp 0x10046771
mov eax, dword [ebp - 0x174]
movzx eax, word [eax]
cmp eax, 0x5a4d
je 0x100468f8
mov dword [ebp - 0x1cc], 0x462d5e48
mov dword [ebp - 0x3c8], 0xa8b35eda
push 2
lea ecx, [ebp - 0x54c]
call fcn.10012962
mov dword [ebp - 4], 3
mov dword [ebp - 0x4c4], 0x21342f3d
mov dword [ebp - 0x470], 0
mov dword [ebp - 0x3d0], 0xffffffff
lea eax, [ebp - 0x54c]
push eax
lea eax, [ebp - 0x69c]
push eax
call fcn.10045791
pop ecx
pop ecx
lea eax, [ebp - 0x1cc]
push eax
call fcn.100457d6
pop ecx
push 0x7d8e
lea eax, [ebp - 0x470]
push eax
lea eax, [ebp - 0x54c]
push eax
push 0x40d3
push 0x670f
lea eax, [ebp - 0x3c8]
push eax
push 1
push 0x19a8
push 1
push 0x5a8e
push 0x2ae9
push 0x5286
lea eax, [ebp - 0x4c4]
push eax
lea eax, [ebp - 0x1cc]
push eax
push 0x19a7
lea eax, [ebp - 0x3d0]
push eax
push 0x39db
push 0x7bc5
push 1
push 0x6fc1
push 0x7184
push 0x74d
call fcn.1003d5f1
add esp, 0x58
or dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0x54c]
call fcn.100129e4
call fcn.1004582d
xor eax, eax
jmp 0x100495a7
lea eax, [ebp + 8]
push eax
push 0x357a
lea eax, [ebp - 0x88]
push eax
push 1
lea eax, [ebp - 0x174]
push eax
push 1
push 0x7d99
call fcn.1003df06
add esp, 0x1c
mov dword [ebp - 0x2c4], 0x57bf5cd5
mov dword [ebp - 0x14c], 1
mov dword [ebp - 0x3d8], 0xb7d6b592
push 3
lea ecx, [ebp - 0x528]
call fcn.10012962
mov dword [ebp - 4], 4
mov dword [ebp - 0x32c], 0xe5ec3521
mov dword [ebp - 0xb4], 0xfffffff6
mov dword [ebp - 0x4e4], 0xfffffffd
mov dword [ebp - 0x28], 0
jmp 0x10046980
mov eax, dword [ebp - 0x28]
inc eax
mov dword [ebp - 0x28], eax
cmp dword [ebp - 0x28], 2
jge 0x10046996
mov eax, dword [ebp - 0x28]
mov dword [ebp + eax*4 - 0x38c], 0xfffffff8
jmp 0x10046979
mov dword [ebp - 0x28], 0
jmp 0x100469a6
mov eax, dword [ebp - 0x28]
inc eax
mov dword [ebp - 0x28], eax
cmp dword [ebp - 0x28], 4
jge 0x100469bc
mov eax, dword [ebp - 0x28]
mov dword [ebp + eax*4 - 0x6b4], 0xfffffff8
jmp 0x1004699f
lea eax, [ebp - 0x528]
push eax
push 1
lea eax, [ebp - 0x28]
push eax
push 1
push 0x4ae6
push 0x32b7
push 0x3744
push 1
push 0x2db5
call fcn.1003dfc7
add esp, 0x24
mov dword [ebp - 0x2b4], 0x64f5
mov dword [ebp - 0x478], 0x1000b8dc
cmp dword [ebp - 0x2b4], 0x66a1
jle 0x10046ae8
and dword [ebp - 0x12c], 0
jmp 0x10046a23
mov eax, dword [ebp - 0x12c]
inc eax
mov dword [ebp - 0x12c], eax
cmp dword [ebp - 0x12c], 0x5fa5
jge 0x10046ae8
and dword [ebp - 0xa4], 0
jmp 0x10046a49
mov eax, dword [ebp - 0xa4]
inc eax
mov dword [ebp - 0xa4], eax
cmp dword [ebp - 0xa4], 0x11f2
jge 0x10046ae3
and dword [ebp - 0x10c], 0
jmp 0x10046a6f
mov eax, dword [ebp - 0x10c]
inc eax
mov dword [ebp - 0x10c], eax
cmp dword [ebp - 0x10c], 0x4b9b
jge 0x10046ade
and dword [ebp - 0xac], 0
jmp 0x10046a91
mov eax, dword [ebp - 0xac]
inc eax
mov dword [ebp - 0xac], eax
cmp dword [ebp - 0xac], 0x1be2
jge 0x10046adc
mov eax, dword [ebp - 0xa4]
mov ecx, dword [ebp - 0x10c]
shl eax, cl
xor eax, dword [ebp - 0xac]
or eax, dword [ebp - 0x12c]
cdq
mov dword [ebp - 0x44c], eax
mov dword [ebp - 0x448], edx
push dword [ebp - 0x448]
push dword [ebp - 0x44c]
mov ecx, 0x10609d98
call fcn.1001273a
jmp 0x10046a84
jmp 0x10046a62
jmp 0x10046a3c
jmp 0x10046a16
mov byte [ebp - 4], 5
cmp dword [ebp - 0x2b4], 0x6172
jge 0x10046b08
mov edx, dword [ebp - 0x478]
mov ecx, 0x10609d98
call fcn.1001505e
jmp 0x10046b24
mov dword [ebp - 4], 4
jmp 0x10046b34
mov eax, dword [ebp - 0x14c]
push 4
pop ecx
imul ecx, ecx, 0
mov dword [ebp + ecx - 0x38c], eax
push 4
pop eax
imul eax, eax, 0
cmp dword [ebp + eax - 0x38c], 0x9c4d
jg 0x10046b66
mov dword [ebp - 0x1d4], 1
jmp 0x10046b6d
and dword [ebp - 0x1d4], 0
mov eax, dword [ebp - 0x1d4]
mov dword [ebp - 0x14c], eax
cmp dword [ebp - 0x14c], 0x99e885dc
jb 0x10046b91
mov dword [ebp - 0x37c], 1
jmp 0x10046b98
and dword [ebp - 0x37c], 0
push 4
pop eax
imul eax, eax, 0
mov eax, dword [ebp + eax - 0x38c]
cmp dword [ebp - 0x37c], eax
je 0x10046bb9
mov dword [ebp - 0x1dc], 1
jmp 0x10046bc0
and dword [ebp - 0x1dc], 0
mov eax, dword [ebp - 0x1dc]
mov dword [ebp - 0x3d8], eax
push 4
pop eax
shl eax, 0
mov eax, dword [ebp + eax - 0x38c]
mov dword [ebp - 0x2bc], eax
push 1
lea ecx, [ebp - 0x528]
call fcn.10012a00
mov ecx, dword [ebp - 0x2bc]
mov dword [eax], ecx
push 4
pop eax
shl eax, 0
mov eax, dword [ebp + eax - 0x38c]
cmp eax, dword [ebp - 0x2bc]
jg 0x10046c24
push 1
lea ecx, [ebp - 0x528]
call fcn.10012a00
cmp dword [eax], 0
jne 0x10046c24
and dword [ebp - 0x1e4], 0
jmp 0x10046c2e
mov dword [ebp - 0x1e4], 1
mov eax, dword [ebp - 0x1e4]
mov dword [ebp - 0x32c], eax
mov eax, dword [ebp - 0x32c]
mov dword [ebp - 0x618], eax
mov eax, dword [ebp - 0x2c4]
mov dword [ebp - 0x590], eax
cmp dword [ebp - 0xb4], 0
jne 0x10046c6d
mov eax, 0x4f06702e
test eax, eax
jne 0x10046c6d
and dword [ebp - 0x1ec], 0
jmp 0x10046c77
mov dword [ebp - 0x1ec], 1
mov eax, dword [ebp - 0xb4]
add eax, dword [ebp - 0x1ec]
sub eax, dword [ebp - 0xb4]
add eax, dword [ebp - 0x2c4]
sub eax, dword [ebp - 0xb4]
cmp eax, 0x7c5c
jge 0x10046ca8
mov dword [ebp - 0x364], 1
jmp 0x10046caf
and dword [ebp - 0x364], 0
push 4
pop eax
shl eax, 1
mov eax, dword [ebp + eax - 0x6b4]
dec eax
mov dword [ebp - 0x1f4], eax
push 4
pop eax
shl eax, 1
mov ecx, dword [ebp - 0x1f4]
mov dword [ebp + eax - 0x6b4], ecx
mov eax, dword [ebp - 0x1f4]
cmp eax, dword [ebp - 0x364]
jl 0x10046cee
mov dword [ebp - 0x1fc], 1
jmp 0x10046cf5
and dword [ebp - 0x1fc], 0
cmp dword [ebp - 0x1fc], 0xae9714a0
jb 0x10046d11
mov byte [ebp - 0x55], 0
lea eax, [ebp - 0x55]
push eax
call fcn.10045a90
pop ecx
jmp 0x10046d29
push 0x397d
push 1
push 1
push 1
push 0x5677
call fcn.1003e25f
add esp, 0x14
push 0x20a3
push 1
push 1
push 1
lea eax, [ebp - 0x4e4]
push eax
push 0x5a82
push 0x2eee
call fcn.1003e54b
add esp, 0x1c
or dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0x528]
call fcn.100129e4
mov eax, dword [ebp - 0x88]
cmp dword [eax], 0x4550
je 0x100470f7
call fcn.10045ae1
mov dword [ebp - 0x184], 0
push 3
lea ecx, [ebp - 0x57c]
call fcn.10012962
mov dword [ebp - 4], 7
mov dword [ebp - 0x2d4], 0x53494abc
mov dword [ebp - 0x3f0], 4
mov dword [ebp - 0x78], 0
jmp 0x10046db5
mov eax, dword [ebp - 0x78]
inc eax
mov dword [ebp - 0x78], eax
cmp dword [ebp - 0x78], 2
jge 0x10046dcb
mov eax, dword [ebp - 0x78]
mov dword [ebp + eax*4 - 0x17c], 0x26bdde0b
jmp 0x10046dae
push 1
lea eax, [ebp - 0x78]
push eax
push 1
push 0x17a5
push 0x3505
lea eax, [ebp - 0x57c]
push eax
push 0x78f7
call fcn.1003e6e9
add esp, 0x1c
mov dword [ebp - 0x224], 0x2e50
mov dword [ebp - 0x488], 0x1000b938
cmp dword [ebp - 0x224], 0x2fcc
jle 0x10046ed7
push 0x729
push 0x7bd
push 0x200
push 0x123
push 0
call dword [sym.imp.USER32.dll_CheckMenuRadioItem]
and dword [ebp - 0x90], 0
jmp 0x10046e47
mov eax, dword [ebp - 0x90]
inc eax
mov dword [ebp - 0x90], eax
cmp dword [ebp - 0x90], 0x6c0c
jge 0x10046ed7
and dword [ebp - 0xbc], 0
jmp 0x10046e6d
mov eax, dword [ebp - 0xbc]
inc eax
mov dword [ebp - 0xbc], eax
cmp dword [ebp - 0xbc], 0x25f
jge 0x10046ed2
mov eax, dword [ebp - 0x90]
mov ecx, dword [ebp - 0xbc]
sar eax, cl
cdq
mov dword [ebp - 0x458], eax
mov dword [ebp - 0x454], edx
push dword [ebp - 0x454]
push dword [ebp - 0x458]
lea ecx, [ebp - 0x754]
call fcn.1000d0ee
pop ecx
pop ecx
mov dword [ebp - 0x3ac], eax
mov ecx, dword [ebp - 0x3ac]
call fcn.1001271a
push eax
call fcn.1004c14f
pop ecx
lea ecx, [ebp - 0x754]
call fcn.10012710
jmp 0x10046e60
jmp 0x10046e3a
push 4
pop eax
imul eax, eax, 0
mov dword [ebp + eax - 0x17c], 0
jmp 0x10046f05
push 4
pop eax
imul eax, eax, 0
mov eax, dword [ebp + eax - 0x17c]
inc eax
push 4
pop ecx
imul ecx, ecx, 0
mov dword [ebp + ecx - 0x17c], eax
push 4
pop eax
imul eax, eax, 0
cmp dword [ebp + eax - 0x17c], 2
jl 0x10047099
mov dword [ebp - 0x4cc], 6
mov dword [ebp - 0x480], 5
mov dword [ebp - 0x204], 0x56ee9734
mov dword [ebp - 0x214], 0xa9b8fa48
cmp dword [ebp - 0x480], 0xeb9e9d60
jne 0x10046f59
mov dword [ebp - 0x2cc], 1
jmp 0x10046f60
and dword [ebp - 0x2cc], 0
mov eax, dword [ebp - 0x2cc]
mov dword [ebp - 0x204], eax
mov eax, dword [ebp - 0x204]
mov dword [ebp - 0x184], eax
mov eax, dword [ebp - 0x184]
mov dword [ebp - 0x334], eax
push 1
lea ecx, [ebp - 0x57c]
call fcn.10012a00
mov ecx, dword [ebp - 0x334]
mov dword [eax], ecx
push 4
pop eax
shl eax, 0
mov eax, dword [ebp + eax - 0x17c]
cmp dword [ebp - 0x334], eax
jg 0x10046fba
mov dword [ebp - 0x20c], 1
jmp 0x10046fc1
and dword [ebp - 0x20c], 0
push 4
pop eax
imul eax, eax, 0
mov eax, dword [ebp + eax - 0x17c]
add eax, dword [ebp - 0x20c]
mov dword [ebp - 0x2d4], eax
cmp dword [ebp - 0x2d4], 0xfffd
jb 0x10046ff2
mov dword [ebp - 0x3e8], 1
jmp 0x10046ff9
and dword [ebp - 0x3e8], 0
push 4
pop eax
shl eax, 0
mov eax, dword [ebp + eax - 0x17c]
mov dword [ebp - 0x594], eax
mov eax, dword [ebp - 0x4cc]
mov dword [ebp - 0x59c], eax
mov dword [ebp - 0x214], 0
mov eax, dword [ebp - 0x214]
mov dword [ebp - 0x5a4], eax
cmp dword [ebp - 0x184], 0xc39d
jg 0x10047046
mov dword [ebp - 0x390], 1
jmp 0x1004704d
and dword [ebp - 0x390], 0
cmp dword [ebp - 0x390], 0
jl 0x10047062
mov dword [ebp - 0x21c], 1
jmp 0x10047069
and dword [ebp - 0x21c], 0
cmp dword [ebp - 0x21c], 0xeb5ea28c
jbe 0x10047081
mov dword [ebp - 0x2dc], 1
jmp 0x10047088
and dword [ebp - 0x2dc], 0
mov eax, dword [ebp - 0x2dc]
mov dword [ebp - 0x3f0], eax
jmp 0x10046eea
mov byte [ebp - 4], 8
cmp dword [ebp - 0x224], 0x2a6c
jge 0x100470b5
push dword [ebp - 0x488]
call fcn.1004c14f
pop ecx
jmp 0x100470d1
mov dword [ebp - 4], 7
jmp 0x100470e1
or dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0x57c]
call fcn.100129e4
xor eax, eax
jmp 0x100495a7
push 0x24e3
push 1
lea eax, [ebp - 0xb0]
push eax
push 0x2688
push 0x4ea
push 0x7211
push dword [ebp - 0x88]
push 0x6987
push 0
push 0x7717
push 0x6eef
push 0x66f3
push 0x5a60
call fcn.10040858
add esp, 0x34
cmp dword [ebp - 0xb0], 0
jne 0x100478b1
push 2
lea ecx, [ebp - 0x148]
call fcn.10012962
mov dword [ebp - 4], 0xa
mov dword [ebp - 0x48], 0x69b2e414
mov dword [ebp - 0x74], 0xffffffff
mov dword [ebp - 0x154], 0x6ea3de81
mov dword [ebp - 0x18c], 0xfffffff9
mov dword [ebp - 0x114], 0xffffffff
mov dword [ebp - 0x5ac], 0xb17c08a5
mov dword [ebp - 0x5b4], 0xf05746ac
mov dword [ebp - 0x28c], 0xfffffffd
mov dword [ebp - 0x274], 0x3f7cec7e
mov dword [ebp - 0x504], 0xfffffffa
push 0x7e30
push 0x3be7
push 0x54c0
lea eax, [ebp - 0x148]
push eax
push 1
push 0x69ce
push 1
push 0x29af
push 1
lea eax, [ebp - 0x5bc]
push eax
push 0x958
call fcn.1003e7ef
add esp, 0x2c
push 0
lea ecx, [ebp - 0x148]
call fcn.10012a00
cmp dword [eax], 0
jne 0x10047223
push 1
lea ecx, [ebp - 0x148]
call fcn.10012a00
cmp dword [eax], 0
jne 0x10047223
and dword [ebp - 0x33c], 0
jmp 0x1004722d
mov dword [ebp - 0x33c], 1
mov eax, dword [ebp - 0x33c]
dec eax
dec eax
mov dword [ebp - 0x48], eax
mov esi, dword [ebp - 0x48]
push 1
lea ecx, [ebp - 0x148]
call fcn.10012a00
cmp dword [eax], esi
jl 0x10047258
mov dword [ebp - 0x22c], 1
jmp 0x1004725f
and dword [ebp - 0x22c], 0
cmp dword [ebp - 0x22c], 0xfa42
jg 0x10047277
mov dword [ebp - 0x2e4], 1
jmp 0x1004727e
and dword [ebp - 0x2e4], 0
push 1
lea ecx, [ebp - 0x148]
call fcn.10012a00
mov ecx, dword [ebp - 0x2e4]
cmp ecx, dword [eax]
je 0x100472a1
mov dword [ebp - 0x234], 1
jmp 0x100472a8
and dword [ebp - 0x234], 0
cmp dword [ebp - 0x234], 0x3cc4
jg 0x100472c0
mov dword [ebp - 0x36c], 1
jmp 0x100472c7
and dword [ebp - 0x36c], 0
push 0
lea ecx, [ebp - 0x148]
call fcn.10012a00
mov ecx, dword [ebp - 0x36c]
cmp ecx, dword [eax]
je 0x100472ea
mov dword [ebp - 0x23c], 1
jmp 0x100472f1
and dword [ebp - 0x23c], 0
push 1
lea ecx, [ebp - 0x148]
call fcn.10012a00
mov ecx, dword [ebp - 0x23c]
cmp ecx, dword [eax]
jl 0x10047314
mov dword [ebp - 0x2ec], 1
jmp 0x1004731b
and dword [ebp - 0x2ec], 0
mov eax, dword [ebp - 0x2ec]
mov dword [ebp - 0x74], eax
mov esi, dword [ebp - 0x74]
push 0
lea ecx, [ebp - 0x148]
call fcn.10012a00
cmp esi, dword [eax]
jne 0x10047344
mov dword [ebp - 0x244], 1
jmp 0x1004734b
and dword [ebp - 0x244], 0
imul eax, dword [ebp - 0x244], 0xfffffff8
test eax, eax
jne 0x10047368
mov eax, 0xd46758e3
test eax, eax
jne 0x10047368
and dword [ebp - 0x344], 0
jmp 0x10047372
mov dword [ebp - 0x344], 1
push 1
lea ecx, [ebp - 0x148]
call fcn.10012a00
mov ecx, dword [ebp - 0x344]
add ecx, dword [eax]
je 0x100475d4
push 3
lea ecx, [ebp - 0x564]
call fcn.10012962
mov byte [ebp - 4], 0xb
mov dword [ebp - 0x34c], 0xfffd
mov dword [ebp - 0x5c4], 3
mov dword [ebp - 0x5cc], 0xa47b6c41
mov dword [ebp - 0x5d4], 0x7283a38c
mov dword [ebp - 0x5dc], 0x9aeda1e1
mov dword [ebp - 0x5e4], 0xb46f9f
mov dword [ebp - 0x5ec], 0xe3c77d98
lea eax, [ebp - 0x564]
push eax
push 0x6358
push 1
push 0x5b24
push 0x58ea
lea eax, [ebp - 0x5f4]
push eax
push 1
call fcn.1003eb43
add esp, 0x1c
mov eax, dword [ebp - 0x74]
mov dword [ebp - 0x5fc], eax
mov eax, dword [ebp - 0x48]
mov dword [ebp - 0x24c], eax
push 2
lea ecx, [ebp - 0x564]
call fcn.10012a00
mov ecx, dword [ebp - 0x24c]
mov dword [eax], ecx
mov eax, dword [ebp - 0x24c]
mov dword [ebp - 0x154], eax
cmp dword [ebp - 0x154], 1
je 0x10047455
mov dword [ebp - 0x2fc], 1
jmp 0x1004745c
and dword [ebp - 0x2fc], 0
mov dword [ebp - 0x74], 0xffffffff
mov eax, dword [ebp - 0x74]
cmp eax, dword [ebp - 0x18c]
je 0x10047480
mov eax, 0xc28c
test eax, eax
jne 0x10047480
and dword [ebp - 0x2f4], 0
jmp 0x1004748a
mov dword [ebp - 0x2f4], 1
cmp dword [ebp - 0x2f4], 9
je 0x1004749f
mov dword [ebp - 0x254], 1
jmp 0x100474a6
and dword [ebp - 0x254], 0
push 0
lea ecx, [ebp - 0x148]
call fcn.10012a00
mov ecx, dword [ebp - 0x254]
cmp ecx, dword [eax]
jl 0x100474c9
mov dword [ebp - 0x384], 1
jmp 0x100474d0
and dword [ebp - 0x384], 0
push 1
lea ecx, [ebp - 0x148]
call fcn.10012a00
mov ecx, dword [ebp - 0x384]
cmp ecx, dword [eax]
jge 0x100474f3
mov dword [ebp - 0x25c], 1
jmp 0x100474fa
and dword [ebp - 0x25c], 0
mov eax, dword [ebp - 0x48]
add eax, dword [ebp - 0x25c]
cmp dword [ebp - 0x2fc], eax
jl 0x10047517
mov dword [ebp - 0x264], 1
jmp 0x1004751e
and dword [ebp - 0x264], 0
mov eax, dword [ebp - 0x264]
mov dword [ebp - 0x48], eax
cmp dword [ebp - 0x48], 0
je 0x1004759a
push 3
lea ecx, [ebp - 0x64c]
call fcn.10012962
mov byte [ebp - 4], 0xc
lea eax, [ebp - 0x58c]
push eax
push 0x462e
push 1
lea eax, [ebp - 0x64c]
push eax
push 0x7e49
push 1
call fcn.1003edd6
add esp, 0x18
mov eax, dword [ebp - 0x34c]
dec eax
mov dword [ebp - 0x34c], eax
push 1
push 1
push 0x2279
push 1
lea eax, [ebp - 0x274]
push eax
call fcn.1003efb8
add esp, 0x14
mov byte [ebp - 4], 0xb
lea ecx, [ebp - 0x64c]
call fcn.100129e4
jmp 0x100475c3
mov dword [ebp - 0x114], 0
jmp 0x100475b3
mov eax, dword [ebp - 0x114]
inc eax
mov dword [ebp - 0x114], eax
cmp dword [ebp - 0x114], 1
jg 0x100475c3
call fcn.10045b74
jmp 0x100475a6
mov byte [ebp - 4], 0xa
lea ecx, [ebp - 0x564]
call fcn.100129e4
jmp 0x100475fe
mov byte [ebp - 0x4d], 0
push 0
push 1
push 1
push 0x3bbd
push 0x68cb
push 0xcc2
push 0x2f55
lea eax, [ebp - 0x4d]
push eax
call fcn.10044b9d
add esp, 0x20
mov eax, dword [ebp - 0x28c]
neg eax
cmp dword [ebp - 0x18c], eax
jl 0x1004761a
mov dword [ebp - 0x3f8], 1
jmp 0x10047621
and dword [ebp - 0x3f8], 0
mov eax, dword [ebp - 0x18c]
mov dword [ebp - 0x60c], eax
xor eax, eax
inc eax
cmp eax, 2
ja 0x10047641
mov dword [ebp - 0x26c], 1
jmp 0x10047648
and dword [ebp - 0x26c], 0
cmp dword [ebp - 0x26c], 1
jl 0x1004765d
mov dword [ebp - 0x304], 1
jmp 0x10047664
and dword [ebp - 0x304], 0
cmp dword [ebp - 0x304], 0x5a1b
je 0x1004767c
mov dword [ebp - 0x374], 1
jmp 0x10047683
and dword [ebp - 0x374], 0
mov eax, dword [ebp - 0x274]
sub eax, dword [ebp - 0x374]
cmp eax, 0x89a4
jle 0x100476a2
mov dword [ebp - 0x27c], 1
jmp 0x100476a9
and dword [ebp - 0x27c], 0
mov eax, dword [ebp - 0x504]
imul eax, dword [ebp - 0x27c]
cmp dword [ebp - 0x48], eax
jl 0x100476c7
mov dword [ebp - 0x30c], 1
jmp 0x100476ce
and dword [ebp - 0x30c], 0
mov eax, dword [ebp - 0x74]
cmp dword [ebp - 0x30c], eax
jge 0x100476eb
cmp dword [ebp - 0x154], 0
jne 0x100476eb
and dword [ebp - 0x284], 0
jmp 0x100476f5
mov dword [ebp - 0x284], 1
cmp dword [ebp - 0x284], 0xfffffff8
jg 0x1004770a
mov dword [ebp - 0x354], 1
jmp 0x10047711
and dword [ebp - 0x354], 0
cmp dword [ebp - 0x354], 0xf7d9fd59
jne 0x10047729
mov dword [ebp - 0x314], 1
jmp 0x10047730
and dword [ebp - 0x314], 0
mov eax, dword [ebp - 0x28c]
add eax, dword [ebp - 0x314]
mov dword [ebp - 0x48], eax
or dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0x148]
call fcn.100129e4
mov dword [ebp - 0x5c], 0x47dc4b4e
mov dword [ebp - 0x400], 0x85e0710
mov dword [ebp - 0xc4], 0
jmp 0x10047778
mov eax, dword [ebp - 0xc4]
inc eax
mov dword [ebp - 0xc4], eax
cmp dword [ebp - 0xc4], 3
jge 0x10047794
mov eax, dword [ebp - 0xc4]
mov dword [ebp + eax*4 - 0x51c], 0x185299da
jmp 0x1004776b
mov dword [ebp - 0x5c], 0
jmp 0x100477a4
mov eax, dword [ebp - 0x5c]
inc eax
mov dword [ebp - 0x5c], eax
cmp dword [ebp - 0x5c], 2
jg 0x100478aa
mov dword [ebp - 0x44], 0xfffffffc
mov dword [ebp - 0x398], 0x11bc383c
mov dword [ebp - 0x44], 2
jmp 0x100477cf
mov eax, dword [ebp - 0x44]
dec eax
mov dword [ebp - 0x44], eax
cmp dword [ebp - 0x44], 0
jl 0x100478a5
mov eax, dword [ebp - 0x5c]
mov eax, dword [ebp + eax*4 - 0x51c]
mov dword [ebp - 0x614], eax
mov eax, 0x5c81
test eax, eax
je 0x1004780b
mov eax, dword [ebp - 0x5c]
cmp dword [ebp + eax*4 - 0x51c], 0
je 0x1004780b
mov dword [ebp - 0x294], 1
jmp 0x10047812
and dword [ebp - 0x294], 0
mov eax, dword [ebp - 0x294]
mov dword [ebp - 0x398], eax
cmp dword [ebp - 0x398], 0
jne 0x10047839
cmp dword [ebp - 0x400], 0
jne 0x10047839
and dword [ebp - 0x194], 0
jmp 0x10047843
mov dword [ebp - 0x194], 1
mov eax, dword [ebp - 0x44]
mov eax, dword [ebp + eax*4 - 0x51c]
sub eax, dword [ebp - 0x44]
sub eax, 0x3582f80c
cmp eax, dword [ebp - 0x194]
jl 0x10047869
mov dword [ebp - 0x1a0], 1
jmp 0x10047870
and dword [ebp - 0x1a0], 0
mov eax, dword [ebp - 0x1a0]
neg eax
cmp eax, dword [ebp - 0x44]
je 0x10047889
mov dword [ebp - 0x1a8], 1
jmp 0x10047890
and dword [ebp - 0x1a8], 0
mov eax, dword [ebp - 0x44]
mov ecx, dword [ebp - 0x1a8]
mov dword [ebp + eax*4 - 0x51c], ecx
jmp 0x100477c8
jmp 0x1004779d
xor eax, eax
jmp 0x100495a7
call fcn.10045ba9
push 1
lea eax, [ebp - 0x61c]
push eax
lea eax, [ebp - 0xb0]
push eax
lea eax, [ebp - 0x174]
push eax
push 0xd15
push 0x6bd5
push 0x747f
lea eax, [ebp - 0x30]
push eax
push 1
lea eax, [ebp - 0x88]
push eax
call fcn.1003f1ce
add esp, 0x28
mov dword [ebp - 0x2c], 0xffffffff
mov dword [ebp - 0x1b0], 0x95c
mov dword [ebp - 0x408], 0x1000b958
cmp dword [ebp - 0x1b0], 0xc8c
jle 0x100479bc
and dword [ebp - 0x124], 0
jmp 0x10047932
mov eax, dword [ebp - 0x124]
inc eax
mov dword [ebp - 0x124], eax
cmp dword [ebp - 0x124], 0x483e
jge 0x100479bc
and dword [ebp - 0xcc], 0
jmp 0x10047954
mov eax, dword [ebp - 0xcc]
inc eax
mov dword [ebp - 0xcc], eax
cmp dword [ebp - 0xcc], 0x1372
jge 0x100479b7
mov eax, dword [ebp - 0x124]
and eax, dword [ebp - 0xcc]
cdq
mov dword [ebp - 0x464], eax
mov dword [ebp - 0x460], edx
push dword [ebp - 0x460]
push dword [ebp - 0x464]
lea ecx, [ebp - 0x6dc]
call fcn.1000d0ee
pop ecx
pop ecx
mov dword [ebp - 0x494], eax
mov ecx, dword [ebp - 0x494]
call fcn.1001271a
push eax
call fcn.1004c14f
pop ecx
lea ecx, [ebp - 0x6dc]
call fcn.10012710
jmp 0x10047947
jmp 0x10047925
mov dword [ebp - 0x1c8], 0x6e2c9bf5
mov dword [ebp - 4], 0xd
cmp dword [ebp - 0x1b0], 0x7c9
jge 0x100479e5
push dword [ebp - 0x408]
call fcn.1004c14f
pop ecx
jmp 0x10047a01
or dword [ebp - 4], 0xffffffff
jmp 0x10047a0b
mov dword [ebp - 0x4a0], 0x58cd
mov dword [ebp - 0xf8], 0
jmp 0x10047a2e
mov eax, dword [ebp - 0xf8]
inc eax
mov dword [ebp - 0xf8], eax
cmp dword [ebp - 0xf8], 3
jge 0x10047a4a
mov eax, dword [ebp - 0xf8]
mov dword [ebp + eax*4 - 0x65c], 0
jmp 0x10047a21
mov dword [ebp - 0x2c], 0
jmp 0x10047a5a
mov eax, dword [ebp - 0x2c]
inc eax
mov dword [ebp - 0x2c], eax
cmp dword [ebp - 0x2c], 2
jge 0x10047c9e
mov dword [ebp - 0x80], 2
mov dword [ebp - 0x15c], 1
mov dword [ebp - 0x4d4], 0xedb39523
mov dword [ebp - 0x1d0], 0x955a6194
mov dword [ebp - 0xd4], 0
jmp 0x10047aa2
mov eax, dword [ebp - 0xd4]
inc eax
mov dword [ebp - 0xd4], eax
cmp dword [ebp - 0xd4], 4
jge 0x10047abe
mov eax, dword [ebp - 0xd4]
mov dword [ebp + eax*4 - 0x6c4], 0xadb51fd9
jmp 0x10047a95
cmp dword [ebp - 0x2c], 0
je 0x10047c0e
mov eax, dword [ebp - 0x2c]
mov dword [ebp - 0x15c], eax
mov eax, dword [ebp - 0x15c]
mov dword [ebp - 0x624], eax
xor eax, eax
inc eax
je 0x10047ae9
cmp dword [ebp - 0x4d4], 0
cmp dword [ebp - 0x2c], 0xa98
jl 0x10047afe
mov dword [ebp - 0x410], 1
jmp 0x10047b05
and dword [ebp - 0x410], 0
mov eax, dword [ebp - 0x15c]
mov dword [ebp - 0x62c], eax
mov eax, dword [ebp - 0x2c]
mov dword [ebp - 0x634], eax
cmp dword [ebp - 0x2c], 0
jne 0x10047b2c
mov dword [ebp - 0x1b8], 1
jmp 0x10047b33
and dword [ebp - 0x1b8], 0
push 4
pop eax
imul eax, eax, 0
mov eax, dword [ebp + eax - 0x65c]
cmp dword [ebp - 0x1b8], eax
jle 0x10047b54
mov dword [ebp - 0x1c0], 1
jmp 0x10047b5b
and dword [ebp - 0x1c0], 0
mov eax, dword [ebp - 0x2c]
imul eax, dword [ebp - 0x1c0]
mov dword [ebp - 0x1c8], eax
mov eax, dword [ebp - 0x1c8]
mov dword [ebp - 0x1d0], eax
mov eax, dword [ebp - 0x80]
cmp eax, dword [ebp - 0x1d0]
jg 0x10047b8e
mov dword [ebp - 0x1d8], 1
jmp 0x10047b95
and dword [ebp - 0x1d8], 0
cmp dword [ebp - 0x1d8], 0
jae 0x10047baa
mov dword [ebp - 0x1e0], 1
jmp 0x10047bb1
and dword [ebp - 0x1e0], 0
push 4
pop eax
shl eax, 1
mov eax, dword [ebp + eax - 0x65c]
cmp dword [ebp - 0x1e0], eax
je 0x10047bd1
mov dword [ebp - 0x1e8], 1
jmp 0x10047bd8
and dword [ebp - 0x1e8], 0
cmp dword [ebp - 0x1e8], 0x9687fd07
jb 0x10047bf0
mov dword [ebp - 0x1f0], 1
jmp 0x10047bf7
and dword [ebp - 0x1f0], 0
mov eax, dword [ebp - 0x80]
cmp dword [ebp - 0x1f0], eax
jg 0x10047c0e
mov dword [ebp - 0x1f8], 1
jmp 0x10047c15
and dword [ebp - 0x1f8], 0
mov eax, dword [ebp - 0x1f8]
sub eax, 0x5d872072
jne 0x10047c34
mov eax, 0xc1c57511
test eax, eax
jne 0x10047c34
and dword [ebp - 0x200], 0
jmp 0x10047c3e
mov dword [ebp - 0x200], 1
mov eax, dword [ebp - 0x80]
cmp dword [ebp - 0x200], eax
jne 0x10047c55
mov dword [ebp - 0x208], 1
jmp 0x10047c5c
and dword [ebp - 0x208], 0
mov eax, dword [ebp - 0x4a0]
imul eax, dword [ebp - 0x208]
cmp eax, dword [ebp - 0x80]
je 0x10047c7a
mov dword [ebp - 0x210], 1
jmp 0x10047c81
and dword [ebp - 0x210], 0
imul eax, dword [ebp - 0x210], 5
imul eax, dword [ebp - 0x80]
push 4
pop ecx
imul ecx, ecx, 0
mov dword [ebp + ecx - 0x6c4], eax
jmp 0x10047a53
push 1
push 1
push 0x62e8
push 0x430
push dword [ebp - 0x30]
push dword [ebp + 8]
push 0x33f8
push dword [ebp - 0x88]
call fcn.1002a260
add esp, 0x20
mov dword [ebp - 0x418], 0x6b471dfd
mov dword [ebp - 0x188], 0xfffffffe
mov eax, dword [ebp - 0x418]
inc eax
mov dword [ebp - 0x188], eax
mov eax, dword [ebp - 0x188]
inc eax
cmp eax, 5
jle 0x10047d0b
mov byte [ebp - 0x4f], 0
movzx eax, byte [ebp - 0x4f]
test eax, eax
je 0x10047d06
push 0
call dword [sym.imp.GDI32.dll_DeleteObject]
jmp 0x10047ddc
push 2
lea ecx, [ebp - 0x558]
call fcn.10012962
mov dword [ebp - 4], 0xf
push 4
lea ecx, [ebp - 0x540]
call fcn.10012962
mov byte [ebp - 4], 0x10
lea eax, [ebp - 0x558]
push eax
push 0x36d4
push 1
push 0x19ac
push 0
push 0x54b7
push 0x5871
lea eax, [ebp - 0x4f4]
push eax
push 1
push 0x7c2b
push 0x7283
call fcn.100411ad
add esp, 0x2c
push 1
lea eax, [ebp - 0x540]
push eax
push 0x12b5
push 1
push 1
lea eax, [ebp - 0x4f4]
push eax
push 0x61c6
call fcn.10040d71
add esp, 0x1c
lea eax, [ebp - 0x188]
push eax
call fcn.10045c82
pop ecx
lea eax, [ebp - 0x558]
push eax
push 0x24fc
lea eax, [ebp - 0x540]
push eax
push 1
push 1
push 1
call fcn.10040e8f
add esp, 0x18
mov byte [ebp - 4], 0xf
lea ecx, [ebp - 0x540]
call fcn.100129e4
or dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0x558]
call fcn.100129e4
mov byte [ebp - 0x51], 0
movzx eax, byte [ebp - 0x51]
test eax, eax
je 0x10047ded
call fcn.10045c9a
push 0x4898
lea eax, [ebp - 0x238]
push eax
push 1
push 0x4293
push 1
push 0xd89
lea eax, [ebp - 0x88]
push eax
push 0x161a
push 1
lea eax, [ebp - 0xb0]
push eax
push 0x46fd
call fcn.100411ad
add esp, 0x2c
mov dword [ebp - 0x420], 0xbeaa32b1
push 3
lea ecx, [ebp - 0x570]
call fcn.10012962
mov dword [ebp - 4], 0x11
mov dword [ebp - 0x63c], 4
mov dword [ebp - 0x684], 6
mov dword [ebp - 0x598], 0xfffffffe
mov dword [ebp - 0x4ac], 2
push 0x75e
push 0x46fc
push 1
lea eax, [ebp - 0x620]
push eax
push 1
lea eax, [ebp - 0x570]
push eax
push 0x20fa
call fcn.100413ec
add esp, 0x1c
mov esi, dword [ebp - 0x420]
push 2
lea ecx, [ebp - 0x570]
call fcn.10012a00
mov dword [eax], esi
lea eax, [ebp - 0x4ac]
push eax
call fcn.10045cab
pop ecx
or dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0x570]
call fcn.100129e4
cmp dword [ebp - 0x238], 0
je 0x10048092
mov dword [ebp - 0x14], 0x1020
mov dword [ebp - 0x68], 0xc22c
mov eax, dword [ebp - 0x14]
mov dword [ebp - 0x5a0], eax
cmp dword [ebp - 0x14], 0
je 0x10047f35
mov eax, dword [ebp - 0x14]
mov dword [ebp - 0x6a4], eax
mov eax, dword [ebp - 0x14]
mov dword [ebp - 0x5a8], eax
mov eax, dword [ebp - 0x14]
cmp eax, dword [ebp - 0x14]
jge 0x10047f19
mov dword [ebp - 0x218], 1
jmp 0x10047f20
and dword [ebp - 0x218], 0
cmp dword [ebp - 0x218], 0xffffffff
jae 0x10047f35
mov dword [ebp - 0x220], 1
jmp 0x10047f3c
and dword [ebp - 0x220], 0
mov eax, dword [ebp - 0x14]
cmp eax, dword [ebp - 0x220]
je 0x10047f53
mov dword [ebp - 0x428], 1
jmp 0x10047f5a
and dword [ebp - 0x428], 0
mov eax, dword [ebp - 0x14]
mov dword [ebp - 0x628], eax
mov eax, dword [ebp - 0x14]
mov dword [ebp - 0x5b0], eax
mov eax, dword [ebp - 0x14]
mov dword [ebp - 0x698], eax
cmp dword [ebp - 0x14], 0
je 0x10047f7f
cmp dword [ebp - 0x14], 0
cmp dword [ebp - 0x14], 0
jne 0x10047f94
cmp dword [ebp - 0x14], 0
jne 0x10047f94
and dword [ebp - 0x228], 0
jmp 0x10047f9e
mov dword [ebp - 0x228], 1
mov eax, dword [ebp - 0x14]
cmp dword [ebp - 0x228], eax
jl 0x10047fb5
mov dword [ebp - 0x230], 1
jmp 0x10047fbc
and dword [ebp - 0x230], 0
mov eax, dword [ebp - 0x230]
mov dword [ebp - 0x68], eax
mov eax, dword [ebp - 0x68]
mov dword [ebp - 0x5b8], eax
mov eax, dword [ebp - 0x14]
mov dword [ebp - 0x630], eax
cmp dword [ebp - 0x14], 0
je 0x10047fed
mov byte [ebp - 0x53], 0
lea eax, [ebp - 0x53]
push eax
call fcn.10045d96
pop ecx
jmp 0x1004805f
mov dword [ebp - 0x4dc], 0
mov dword [ebp - 0x68], 0
jmp 0x10048007
mov eax, dword [ebp - 0x68]
dec eax
mov dword [ebp - 0x68], eax
cmp dword [ebp - 0x68], 0xffffffe7
jl 0x1004805f
mov byte [ebp - 0x4e], 0
movzx eax, byte [ebp - 0x4e]
test eax, eax
je 0x1004801e
call fcn.10045dc4
push 1
lea eax, [ebp - 0x4dc]
push eax
push 0x4c48
push 0x376e
push 0x605f
lea eax, [ebp - 0x14]
push eax
push 0x62f1
push 0x2524
push 0x5099
push 0x72d5
push 0x2868
push 1
call fcn.1004156b
add esp, 0x30
jmp 0x10048000
push 1
push 0x7e0d
push 1
push 0x695f
push dword [ebp - 0x238]
push 0x52e0
push 0x68ec
push dword [ebp - 0x30]
push 0x7dea
push 0x2622
call fcn.100306f9
add esp, 0x28
mov dword [ebp - 0x34], 0
mov dword [ebp - 0x468], 2
mov dword [ebp - 0x438], 0x95e04a27
mov dword [ebp - 0x5c0], 0xaaa4f69a
mov dword [ebp - 0x690], 0xfffffffa
push 4
lea ecx, [ebp - 0x66c]
call fcn.10012962
mov dword [ebp - 4], 0x12
mov dword [ebp - 0x5c8], 5
mov dword [ebp - 0x444], 0xffffffff
mov dword [ebp - 0x7c], 0
jmp 0x100480f9
mov eax, dword [ebp - 0x7c]
inc eax
mov dword [ebp - 0x7c], eax
cmp dword [ebp - 0x7c], 1
jge 0x1004810f
mov eax, dword [ebp - 0x7c]
mov dword [ebp + eax*4 - 0x638], 0
jmp 0x100480f2
push 1
push 0x2378
push 0x3bc4
push 0x64fb
push 1
push 1
lea eax, [ebp - 0x66c]
push eax
push 0x4f69
lea eax, [ebp - 0x7c]
push eax
call fcn.10041772
add esp, 0x24
cmp dword [ebp - 0x34], 0
jne 0x100481d1
cmp dword [ebp - 0x34], 0
xor eax, eax
inc eax
cmp eax, 0xee1c
je 0x10048160
mov dword [ebp - 0x240], 1
jmp 0x10048167
and dword [ebp - 0x240], 0
cmp dword [ebp - 0x240], 0xdf3d37a5
jae 0x1004817f
mov dword [ebp - 0x248], 1
jmp 0x10048186
and dword [ebp - 0x248], 0
mov eax, dword [ebp - 0x34]
cmp dword [ebp - 0x248], eax
jne 0x1004819d
mov dword [ebp - 0x250], 1
jmp 0x100481a4
and dword [ebp - 0x250], 0
mov eax, dword [ebp - 0x34]
cmp eax, dword [ebp - 0x250]
jne 0x100481bb
mov dword [ebp - 0x258], 1
jmp 0x100481c2
and dword [ebp - 0x258], 0
mov eax, dword [ebp - 0x34]
cmp dword [ebp - 0x258], eax
jle 0x100484b4
mov dword [ebp - 0x268], 4
push 1
lea ecx, [ebp - 0x534]
call fcn.10012962
mov byte [ebp - 4], 0x13
push 0x1c07
push 1
push 0x1584
push 0x5ebd
push 1
lea eax, [ebp - 0x534]
push eax
lea eax, [ebp - 0x5d0]
push eax
call fcn.100418af
add esp, 0x1c
mov dword [ebp - 0x34], 0xe
jmp 0x10048225
mov eax, dword [ebp - 0x34]
inc eax
mov dword [ebp - 0x34], eax
cmp dword [ebp - 0x34], 0x20
jle 0x1004845e
push 3
lea ecx, [ebp - 0x588]
call fcn.10012962
mov byte [ebp - 4], 0x14
mov dword [ebp - 0x108], 0
jmp 0x10048259
mov eax, dword [ebp - 0x108]
inc eax
mov dword [ebp - 0x108], eax
cmp dword [ebp - 0x108], 3
jge 0x1004827b
push dword [ebp - 0x108]
lea ecx, [ebp - 0x588]
call fcn.10012a00
mov dword [eax], 0x6b8d
jmp 0x1004824c
push 0x4b49
push 0x4b24
push 1
push 1
lea eax, [ebp - 0x268]
push eax
push 0x4023
lea eax, [ebp - 0x588]
push eax
call fcn.100419a9
add esp, 0x1c
mov dword [ebp - 0x260], 0x6dbe
mov dword [ebp - 0x4b8], 0x1000b9c0
cmp dword [ebp - 0x260], 0x7030
jle 0x100483f4
push 0
call dword [sym.imp.ADVAPI32.dll_RegCloseKey]
and dword [ebp - 0xe4], 0
jmp 0x100482e6
mov eax, dword [ebp - 0xe4]
inc eax
mov dword [ebp - 0xe4], eax
cmp dword [ebp - 0xe4], 0x6615
jge 0x100483df
and dword [ebp - 0x118], 0
jmp 0x1004830c
mov eax, dword [ebp - 0x118]
inc eax
mov dword [ebp - 0x118], eax
cmp dword [ebp - 0x118], 0x1b6a
jge 0x100483da
and dword [ebp - 0xdc], 0
jmp 0x10048332
mov eax, dword [ebp - 0xdc]
inc eax
mov dword [ebp - 0xdc], eax
cmp dword [ebp - 0xdc], 0x12e0
jge 0x100483d5
and dword [ebp - 0x110], 0
jmp 0x10048358
mov eax, dword [ebp - 0x110]
inc eax
mov dword [ebp - 0x110], eax
cmp dword [ebp - 0x110], 0x6d0f
jge 0x100483d0
mov ecx, dword [ebp - 0xdc]
imul ecx, dword [ebp - 0x110]
mov eax, dword [ebp - 0xe4]
cdq
idiv dword [ebp - 0x118]
or edx, ecx
mov eax, edx
cdq
mov dword [ebp - 0x490], eax
mov dword [ebp - 0x48c], edx
push dword [ebp - 0x48c]
push dword [ebp - 0x490]
lea ecx, [ebp - 0x6f4]
call fcn.1000d0ee
pop ecx
pop ecx
mov dword [ebp - 0x430], eax
mov ecx, dword [ebp - 0x430]
call fcn.1001271a
push eax
call fcn.1004c14f
pop ecx
lea ecx, [ebp - 0x6f4]
call fcn.10012710
jmp 0x1004834b
jmp 0x10048325
jmp 0x100482ff
jmp 0x100482d9
push 0x2283
push 0xdbd
push 0x907
call dword [sym.imp.KERNEL32.dll_HeapCreate]
mov byte [ebp - 4], 0x15
cmp dword [ebp - 0x260], 0x6bdc
jge 0x10048410
push dword [ebp - 0x4b8]
call fcn.1004c14f
pop ecx
jmp 0x1004842c
mov dword [ebp - 4], 0x14
jmp 0x1004843c
mov byte [ebp - 0x52], 0
lea eax, [ebp - 0x52]
push eax
call fcn.10045de1
pop ecx
mov byte [ebp - 4], 0x13
lea ecx, [ebp - 0x588]
call fcn.100129e4
jmp 0x1004821e
push 0x1524
lea eax, [ebp - 0x438]
push eax
push 1
push 0x7b41
push 0x4ecb
push 0
push 0x3b16
lea eax, [ebp - 0x468]
push eax
lea eax, [ebp - 0x534]
push eax
push 0x2008
lea eax, [ebp - 0x268]
push eax
lea eax, [ebp - 0x34]
push eax
call fcn.10045132
add esp, 0x30
mov byte [ebp - 4], 0x12
lea ecx, [ebp - 0x534]
call fcn.100129e4
jmp 0x10048528
mov dword [ebp - 0x6a0], 0xf6658d83
mov dword [ebp - 0x5d8], 0xfffffff9
mov dword [ebp - 0x640], 0
mov dword [ebp - 0x5e0], 0xfffffffc
mov dword [ebp - 0x688], 8
mov dword [ebp - 0x680], 1
mov dword [ebp - 0x67c], 1
mov dword [ebp - 0x678], 1
mov dword [ebp - 0x674], 1
push 1
push 1
push 0x76fe
push 1
lea eax, [ebp - 0x444]
push eax
call fcn.10044830
add esp, 0x14
call fcn.10045e32
or dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0x66c]
call fcn.100129e4
push dword [ebp - 0x30]
call fcn.10034830
pop ecx
test eax, eax
jne 0x10048550
xor eax, eax
jmp 0x100495a7
mov dword [ebp - 0xa0], 0xe53d
mov dword [ebp - 0x70], 0xfffffff7
mov dword [ebp - 0x150], 0x1c946b43
mov dword [ebp - 0x98], 8
mov dword [ebp - 0x474], 0xf05c8a2d
mov dword [ebp - 0x270], 0x7d58
mov dword [ebp - 0x450], 0x1000ba18
cmp dword [ebp - 0x270], 0x7f7c
jle 0x10048678
and dword [ebp - 0xec], 0
jmp 0x100485b9
mov eax, dword [ebp - 0xec]
inc eax
mov dword [ebp - 0xec], eax
cmp dword [ebp - 0xec], 0x4ae4
jge 0x10048678
and dword [ebp - 0x120], 0
jmp 0x100485df
mov eax, dword [ebp - 0x120]
inc eax
mov dword [ebp - 0x120], eax
cmp dword [ebp - 0x120], 0x453f
jge 0x10048673
and dword [ebp - 0xf4], 0
jmp 0x10048605
mov eax, dword [ebp - 0xf4]
inc eax
mov dword [ebp - 0xf4], eax
cmp dword [ebp - 0xf4], 0x297c
jge 0x1004866e
mov eax, dword [ebp - 0xec]
and eax, dword [ebp - 0x120]
and eax, dword [ebp - 0xf4]
cdq
mov dword [ebp - 0x49c], eax
mov dword [ebp - 0x498], edx
push dword [ebp - 0x498]
push dword [ebp - 0x49c]
lea ecx, [ebp - 0x70c]
call fcn.1000d0ee
pop ecx
pop ecx
mov dword [ebp - 0x46c], eax
mov ecx, dword [ebp - 0x46c]
call fcn.1001271a
push eax
call fcn.1004c14f
pop ecx
lea ecx, [ebp - 0x70c]
call fcn.10012710
jmp 0x100485f8
jmp 0x100485d2
jmp 0x100485ac
mov dword [ebp - 4], 0x17
cmp dword [ebp - 0x270], 0x7be4
jge 0x10048697
push dword [ebp - 0x450]
call fcn.1004c14f
pop ecx
jmp 0x100486b3
or dword [ebp - 4], 0xffffffff
jmp 0x100486bd
mov dword [ebp - 0x128], 0
jmp 0x100486d6
mov eax, dword [ebp - 0x128]
inc eax
mov dword [ebp - 0x128], eax
cmp dword [ebp - 0x128], 1
jge 0x100486f2
mov eax, dword [ebp - 0x128]
mov dword [ebp + eax*4 - 0x3b0], 0xfffffffc
jmp 0x100486c9
lea eax, [ebp - 0x70]
push eax
lea eax, [ebp - 0x150]
push eax
lea eax, [ebp - 0xa0]
push eax
lea eax, [ebp - 0x98]
push eax
call fcn.10045e57
add esp, 0x10
mov dword [ebp - 0x70], 0xfffffff9
jmp 0x10048723
mov eax, dword [ebp - 0x70]
inc eax
mov dword [ebp - 0x70], eax
cmp dword [ebp - 0x70], 0xf
je 0x100489c7
mov dword [ebp - 0x180], 3
mov dword [ebp - 0x164], 0xedf66798
lea eax, [ebp - 0x98]
push eax
lea eax, [ebp - 0xa0]
push eax
lea eax, [ebp - 0x180]
push eax
lea eax, [ebp - 0x150]
push eax
lea eax, [ebp - 0x164]
push eax
lea eax, [ebp - 0x474]
push eax
call fcn.10045f4a
add esp, 0x18
mov dword [ebp - 0x278], 0x5528
mov dword [ebp - 0x47c], 0x1000baa8
cmp dword [ebp - 0x278], 0x5659
jle 0x1004887b
push 0
push 0x63f
call dword [sym.imp.KERNEL32.dll_TlsSetValue]
and dword [ebp - 0x94], 0
jmp 0x100487ba
mov eax, dword [ebp - 0x94]
inc eax
mov dword [ebp - 0x94], eax
cmp dword [ebp - 0x94], 0x17fd
jge 0x1004887b
and dword [ebp - 0x130], 0
jmp 0x100487e0
mov eax, dword [ebp - 0x130]
inc eax
mov dword [ebp - 0x130], eax
cmp dword [ebp - 0x130], 0x1355
jge 0x10048876
and dword [ebp - 0xfc], 0
jmp 0x10048806
mov eax, dword [ebp - 0xfc]
inc eax
mov dword [ebp - 0xfc], eax
cmp dword [ebp - 0xfc], 0x58ce
jge 0x10048871
mov eax, dword [ebp - 0x130]
mov ecx, dword [ebp - 0xfc]
sar eax, cl
xor eax, dword [ebp - 0x94]
cdq
mov dword [ebp - 0x4a8], eax
mov dword [ebp - 0x4a4], edx
push dword [ebp - 0x4a4]
push dword [ebp - 0x4a8]
lea ecx, [ebp - 0x73c]
call fcn.1000d0ee
pop ecx
pop ecx
mov dword [ebp - 0x45c], eax
mov ecx, dword [ebp - 0x45c]
call fcn.1001271a
push eax
call fcn.1004c14f
pop ecx
lea ecx, [ebp - 0x73c]
call fcn.10012710
jmp 0x100487f9
jmp 0x100487d3
jmp 0x100487ad
mov dword [ebp - 4], 0x19
cmp dword [ebp - 0x278], 0x5356
jge 0x1004889a
push dword [ebp - 0x47c]
call fcn.1004c14f
pop ecx
jmp 0x100488b6
or dword [ebp - 4], 0xffffffff
jmp 0x100488c0
push 9
pop eax
test eax, eax
je 0x1004897b
mov eax, dword [ebp - 0x180]
cmp eax, dword [ebp - 0x70]
je 0x100488e2
mov dword [ebp - 0x280], 1
jmp 0x100488e9
and dword [ebp - 0x280], 0
push 4
pop eax
imul eax, eax, 0
mov eax, dword [ebp + eax - 0x3b0]
cmp eax, dword [ebp - 0x280]
jle 0x10048910
cmp dword [ebp - 0xa0], 0
jne 0x10048910
and dword [ebp - 0x190], 0
jmp 0x1004891a
mov dword [ebp - 0x190], 1
mov eax, dword [ebp - 0x190]
mov dword [ebp - 0x98], eax
cmp dword [ebp - 0x98], 0x63d4
jge 0x1004893e
mov dword [ebp - 0x290], 1
jmp 0x10048945
and dword [ebp - 0x290], 0
cmp dword [ebp - 0x290], 1
jle 0x1004895a
mov dword [ebp - 0x298], 1
jmp 0x10048961
and dword [ebp - 0x298], 0
mov eax, dword [ebp - 0x164]
cmp eax, dword [ebp - 0x298]
jge 0x1004897b
mov dword [ebp - 0x2a0], 1
jmp 0x10048982
and dword [ebp - 0x2a0], 0
mov eax, dword [ebp - 0x164]
cmp dword [ebp - 0x2a0], eax
jle 0x100489a5
cmp dword [ebp - 0xa0], 0
je 0x100489a5
mov dword [ebp - 0x3b4], 1
jmp 0x100489ac
and dword [ebp - 0x3b4], 0
mov eax, dword [ebp - 0x180]
mov dword [ebp - 0x5e8], eax
mov dword [ebp - 0x150], 0xa52e963e
jmp 0x1004871c
push 0x1c26
lea eax, [ebp - 0x30]
push eax
push 0x6859
push 0x20e9
push 1
push 0x858
push 0x3694
push 1
push 0x7921
call fcn.1004499e
add esp, 0x24
push 4
lea ecx, [ebp - 0x170]
call fcn.10012962
mov dword [ebp - 4], 0x1b
mov dword [ebp - 0x20], 0
jmp 0x10048a19
mov eax, dword [ebp - 0x20]
inc eax
mov dword [ebp - 0x20], eax
cmp dword [ebp - 0x20], 3
jge 0x10048a2f
mov eax, dword [ebp - 0x20]
mov dword [ebp + eax*4 - 0x13c], 1
jmp 0x10048a12
mov dword [ebp - 0x20], 0
jmp 0x10048a3f
mov eax, dword [ebp - 0x20]
inc eax
mov dword [ebp - 0x20], eax
cmp dword [ebp - 0x20], 4
jge 0x10048a5b
push dword [ebp - 0x20]
lea ecx, [ebp - 0x170]
call fcn.10012a00
mov dword [eax], 0xe83c773
jmp 0x10048a38
mov dword [ebp - 0x20], 0
jmp 0x10048a6b
mov eax, dword [ebp - 0x20]
inc eax
mov dword [ebp - 0x20], eax
cmp dword [ebp - 0x20], 3
jge 0x10048a81
mov eax, dword [ebp - 0x20]
mov dword [ebp + eax*4 - 0x4f0], 0xffffffff
jmp 0x10048a64
push 3
lea ecx, [ebp - 0x170]
call fcn.10012a00
and dword [eax], 0
jmp 0x10048ab7
push 3
lea ecx, [ebp - 0x170]
call fcn.10012a00
mov dword [ebp - 0x2a8], eax
mov eax, dword [ebp - 0x2a8]
mov eax, dword [eax]
inc eax
mov ecx, dword [ebp - 0x2a8]
mov dword [ecx], eax
push 3
lea ecx, [ebp - 0x170]
call fcn.10012a00
cmp dword [eax], 2
jg 0x10048d7b
mov dword [ebp - 0x1c], 0x2bb11acc
mov dword [ebp - 0x158], 0xfffffffc
call fcn.10046046
mov dword [ebp - 0x1c], 2
jmp 0x10048af3
mov eax, dword [ebp - 0x1c]
dec eax
mov dword [ebp - 0x1c], eax
cmp dword [ebp - 0x1c], 0
jl 0x10048d76
mov dword [ebp - 0x64], 0
mov eax, dword [ebp - 0x1c]
cmp dword [ebp + eax*4 - 0x13c], 0
je 0x10048b77
mov eax, dword [ebp - 0x1c]
cmp dword [ebp + eax*4 - 0x13c], 0xb979cd32
jne 0x10048b36
mov eax, 0xe75d5f8
test eax, eax
je 0x10048b36
mov dword [ebp - 0x2b0], 1
jmp 0x10048b3d
and dword [ebp - 0x2b0], 0
cmp dword [ebp - 0x2b0], 0xb82c4475
jae 0x10048b58
cmp dword [ebp - 0x1c], 0
jne 0x10048b58
and dword [ebp - 0x2b8], 0
jmp 0x10048b62
mov dword [ebp - 0x2b8], 1
cmp dword [ebp - 0x2b8], 0xffffffff
jne 0x10048b77
mov dword [ebp - 0x2c0], 1
jmp 0x10048b7e
and dword [ebp - 0x2c0], 0
cmp dword [ebp - 0x2c0], 0xfffffffd
jg 0x10048ba3
push 4
pop eax
shl eax, 0
cmp dword [ebp + eax - 0x13c], 0
je 0x10048ba3
mov dword [ebp - 0x2c8], 1
jmp 0x10048baa
and dword [ebp - 0x2c8], 0
mov eax, dword [ebp - 0x1c]
mov eax, dword [ebp + eax*4 - 0x13c]
cmp eax, dword [ebp - 0x2c8]
jge 0x10048bc8
mov dword [ebp - 0x2d0], 1
jmp 0x10048bcf
and dword [ebp - 0x2d0], 0
mov eax, dword [ebp - 0x1c]
mov eax, dword [ebp + eax*4 - 0x13c]
cmp dword [ebp - 0x2d0], eax
jle 0x10048bed
mov dword [ebp - 0x2d8], 1
jmp 0x10048bf4
and dword [ebp - 0x2d8], 0
push 1
lea ecx, [ebp - 0x170]
call fcn.10012a00
mov ecx, dword [ebp - 0x2d8]
cmp ecx, dword [eax]
je 0x10048c1d
mov eax, 0x18e50348
test eax, eax
jne 0x10048c1d
and dword [ebp - 0x2e0], 0
jmp 0x10048c27
mov dword [ebp - 0x2e0], 1
mov eax, dword [ebp - 0x1c]
mov ecx, dword [ebp - 0x2e0]
mov dword [ebp + eax*4 - 0x13c], ecx
push 4
pop eax
imul eax, eax, 0
mov eax, dword [ebp + eax - 0x13c]
mov dword [ebp - 0x650], eax
mov eax, dword [ebp - 0x1c]
mov dword [ebp - 0x158], eax
mov eax, dword [ebp - 0x1c]
mov eax, dword [ebp + eax*4 - 0x13c]
cmp eax, dword [ebp - 0x158]
jle 0x10048c7a
mov eax, 0xffff
test eax, eax
je 0x10048c7a
mov dword [ebp - 0x2e8], 1
jmp 0x10048c81
and dword [ebp - 0x2e8], 0
cmp dword [ebp - 0x2e8], 0xdd4d14b7
jbe 0x10048c99
mov dword [ebp - 0x2f0], 1
jmp 0x10048ca0
and dword [ebp - 0x2f0], 0
mov eax, dword [ebp - 0x1c]
cmp dword [ebp - 0x2f0], eax
jg 0x10048cb7
mov dword [ebp - 0x3bc], 1
jmp 0x10048cbe
and dword [ebp - 0x3bc], 0
push 4
pop eax
shl eax, 0
mov eax, dword [ebp + eax - 0x13c]
mov dword [ebp - 0x5f0], eax
push 4
pop eax
imul eax, eax, 0
mov eax, dword [ebp + eax - 0x13c]
mov dword [ebp - 0x68c], eax
mov eax, dword [ebp - 0x1c]
mov ecx, dword [ebp - 0x158]
imul ecx, dword [ebp + eax*4 - 0x13c]
imul eax, ecx, 0x1432
test eax, eax
jne 0x10048d08
mov eax, 0x74f9af39
test eax, eax
je 0x10048d33
xor eax, eax
je 0x10048d33
push 1
lea eax, [ebp - 0x64]
push eax
push 0x4e0a
push 1
push 0x7db9
call fcn.10044e0f
add esp, 0x14
cmp dword [ebp - 0x1c], 0
je 0x10048d31
jmp 0x10048aec
jmp 0x10048d71
mov dword [ebp - 0x3c4], 0x8ac507b3
mov dword [ebp - 0x64], 0
jmp 0x10048d4d
mov eax, dword [ebp - 0x64]
inc eax
mov dword [ebp - 0x64], eax
cmp dword [ebp - 0x64], 3
jge 0x10048d63
mov eax, dword [ebp - 0x64]
mov dword [ebp + eax*4 - 0x13c], 1
jmp 0x10048d46
cmp dword [ebp - 0x3c4], 0
je 0x10048d71
jmp 0x10048aec
jmp 0x10048aec
jmp 0x10048a93
push 4
pop eax
shl eax, 0
mov dword [ebp + eax - 0x4f0], 0
jmp 0x10048da9
push 4
pop eax
shl eax, 0
mov eax, dword [ebp + eax - 0x4f0]
inc eax
push 4
pop ecx
shl ecx, 0
mov dword [ebp + ecx - 0x4f0], eax
push 4
pop eax
shl eax, 0
cmp dword [ebp + eax - 0x4f0], 3
jg 0x1004903e
mov dword [ebp - 0x40], 1
mov dword [ebp - 0x160], 0x381c4edd
mov dword [ebp - 0x308], 0
mov dword [ebp - 0x3dc], 0xfffffffb
mov dword [ebp - 0x40], 0
jmp 0x10048df2
mov eax, dword [ebp - 0x40]
inc eax
mov dword [ebp - 0x40], eax
cmp dword [ebp - 0x40], 3
jg 0x10049039
mov dword [ebp - 0x84], 0x74f207e8
mov dword [ebp - 0xa8], 0x104b5bc6
mov eax, dword [ebp - 0x160]
mov dword [ebp - 0x5f8], eax
cmp dword [ebp - 0x160], 0
je 0x10048e41
push 4
pop eax
shl eax, 0
cmp dword [ebp + eax - 0x4f0], 0
je 0x10048e41
mov dword [ebp - 0x2f8], 1
jmp 0x10048e48
and dword [ebp - 0x2f8], 0
mov eax, dword [ebp - 0x84]
mov dword [ebp - 0xa8], eax
mov eax, dword [ebp - 0xa8]
imul eax, dword [ebp - 0x84]
cmp eax, dword [ebp - 0x2f8]
jle 0x10048e75
mov dword [ebp - 0x3cc], 1
jmp 0x10048e7c
and dword [ebp - 0x3cc], 0
mov eax, dword [ebp - 0x84]
mov dword [ebp - 0x660], eax
cmp dword [ebp - 0xa8], 0x101f
jl 0x10048ea0
mov dword [ebp - 0x300], 1
jmp 0x10048ea7
and dword [ebp - 0x300], 0
mov eax, dword [ebp - 0x300]
mov dword [ebp - 0x308], eax
cmp dword [ebp - 0x308], 0
je 0x10048ed1
cmp dword [ebp - 0xa8], 0
je 0x10048ed1
mov dword [ebp - 0x310], 1
jmp 0x10048ed8
and dword [ebp - 0x310], 0
push dword [ebp - 0x40]
lea ecx, [ebp - 0x170]
call fcn.10012a00
mov esi, dword [ebp - 0x310]
add esi, dword [eax]
push 0
lea ecx, [ebp - 0x170]
call fcn.10012a00
cmp esi, dword [eax]
jg 0x10048f0b
mov dword [ebp - 0x318], 1
jmp 0x10048f12
and dword [ebp - 0x318], 0
mov eax, dword [ebp - 0x40]
cmp dword [ebp - 0x318], eax
jg 0x10048f29
mov dword [ebp - 0x320], 1
jmp 0x10048f30
and dword [ebp - 0x320], 0
push 3
lea ecx, [ebp - 0x170]
call fcn.10012a00
mov eax, dword [eax]
add eax, dword [ebp - 0x320]
mov dword [ebp - 0x3d4], eax
push dword [ebp - 0x40]
lea ecx, [ebp - 0x170]
call fcn.10012a00
mov ecx, dword [ebp - 0x3d4]
mov dword [eax], ecx
push 4
pop eax
imul eax, eax, 0
mov ecx, dword [ebp - 0x84]
imul ecx, dword [ebp - 0x84]
cmp ecx, dword [ebp + eax - 0x13c]
je 0x10048f8b
push dword [ebp - 0x40]
lea ecx, [ebp - 0x170]
call fcn.10012a00
cmp dword [ebp - 0x40], 0xfffffffd
jbe 0x10048f9d
mov dword [ebp - 0x328], 1
jmp 0x10048fa4
and dword [ebp - 0x328], 0
cmp dword [ebp - 0x328], 1
jl 0x10048fbf
mov eax, 0xebb9f2f7
test eax, eax
jne 0x10048fbf
and dword [ebp - 0x330], 0
jmp 0x10048fc9
mov dword [ebp - 0x330], 1
mov eax, dword [ebp - 0x160]
cmp dword [ebp - 0x330], eax
jne 0x10048fe3
mov dword [ebp - 0x338], 1
jmp 0x10048fea
and dword [ebp - 0x338], 0
cmp dword [ebp - 0x338], 0x3f7c
je 0x10049002
mov dword [ebp - 0x340], 1
jmp 0x10049009
and dword [ebp - 0x340], 0
cmp dword [ebp - 0x340], 0xd954
jle 0x10049021
mov dword [ebp - 0x348], 1
jmp 0x10049028
and dword [ebp - 0x348], 0
mov eax, dword [ebp - 0x348]
mov dword [ebp - 0x3dc], eax
jmp 0x10048deb
jmp 0x10048d8e
or dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0x170]
call fcn.100129e4
mov eax, dword [ebp - 0x30]
mov eax, dword [eax]
cmp dword [eax + 0x28], 0
je 0x100490a4
mov eax, dword [ebp - 0x30]
mov eax, dword [eax]
mov ecx, dword [ebp - 0xb0]
add ecx, dword [eax + 0x28]
mov dword [ebp - 0x350], ecx
jne 0x10049075
xor eax, eax
jmp 0x100495a7
push 0
push 1
push 0xdeadbeef
call dword [ebp - 0x350]
mov dword [ebp - 0x3e4], eax
cmp dword [ebp - 0x3e4], 0
jne 0x1004909a
xor eax, eax
jmp 0x100495a7
lea eax, [ebp - 0x30]
push eax
call fcn.10046078
pop ecx
mov dword [ebp - 0x358], 0x232d
mov dword [ebp - 0x3ec], 0x1000bb24
cmp dword [ebp - 0x358], 0x23d3
jle 0x1004913e
and dword [ebp - 0xb8], 0
jmp 0x100490da
mov eax, dword [ebp - 0xb8]
inc eax
mov dword [ebp - 0xb8], eax
cmp dword [ebp - 0xb8], 0x7034
jge 0x1004913e
and dword [ebp - 0xc0], 0
jmp 0x100490fc
mov eax, dword [ebp - 0xc0]
inc eax
mov dword [ebp - 0xc0], eax
cmp dword [ebp - 0xc0], 0x33a4
jge 0x1004913c
mov eax, dword [ebp - 0xb8]
cdq
idiv dword [ebp - 0xc0]
mov eax, edx
cdq
mov dword [ebp - 0x4b4], eax
mov dword [ebp - 0x4b0], edx
push dword [ebp - 0x4b0]
push dword [ebp - 0x4b4]
mov ecx, 0x10609d98
call fcn.1001273a
jmp 0x100490ef
jmp 0x100490cd
mov dword [ebp - 4], 0x1c
cmp dword [ebp - 0x358], 0x22a6
jge 0x10049161
mov edx, dword [ebp - 0x3ec]
mov ecx, 0x10609d98
call fcn.1001505e
jmp 0x1004917d
or dword [ebp - 4], 0xffffffff
jmp 0x10049187
mov dword [ebp - 0xc8], 0xfffffff9
mov dword [ebp - 0x41c], 0x5ee6
mov dword [ebp - 0xc8], 0xffffffeb
jmp 0x100491b4
mov eax, dword [ebp - 0xc8]
inc eax
mov dword [ebp - 0xc8], eax
cmp dword [ebp - 0xc8], 0xfffffff3
jle 0x10049586
mov dword [ebp - 0x60], 0xffffffff
mov dword [ebp - 0x60], 0xd
jmp 0x100491d8
mov eax, dword [ebp - 0x60]
inc eax
mov dword [ebp - 0x60], eax
cmp dword [ebp - 0x60], 0x1b
jg 0x10049581
push 1
lea ecx, [ebp - 0x500]
call fcn.10012962
mov dword [ebp - 4], 0x1e
mov dword [ebp - 0xd0], 0xa5fef9d7
mov dword [ebp - 0x404], 0xd8d9
push 0x601c
lea eax, [ebp - 0x500]
push eax
lea eax, [ebp - 0x600]
push eax
push 1
push 0x3025
push 1
call fcn.10044ed5
add esp, 0x18
mov dword [ebp - 0xd0], 0
jmp 0x10049247
mov eax, dword [ebp - 0xd0]
dec eax
mov dword [ebp - 0xd0], eax
cmp dword [ebp - 0xd0], 0
jl 0x10049558
mov dword [ebp - 0x8c], 0xffffffff
mov dword [ebp - 0x8c], 0
jmp 0x10049277
mov eax, dword [ebp - 0x8c]
dec eax
mov dword [ebp - 0x8c], eax
cmp dword [ebp - 0x8c], 0
jl 0x10049548
push 3
lea ecx, [ebp - 0x3a8]
call fcn.10012962
mov byte [ebp - 4], 0x1f
push 1
lea eax, [ebp - 0x694]
push eax
push 1
lea eax, [ebp - 0x3a8]
push eax
push 0x57c
push 0x2318
push 0x7a97
call fcn.10045078
add esp, 0x1c
push 2
lea ecx, [ebp - 0x3a8]
call fcn.10012a00
and dword [eax], 0
jmp 0x100492f4
push 2
lea ecx, [ebp - 0x3a8]
call fcn.10012a00
mov dword [ebp - 0x360], eax
mov eax, dword [ebp - 0x360]
mov eax, dword [eax]
inc eax
mov ecx, dword [ebp - 0x360]
mov dword [ecx], eax
push 2
lea ecx, [ebp - 0x3a8]
call fcn.10012a00
cmp dword [eax], 0
jg 0x10049534
mov dword [ebp - 0x6c], 0x377cc424
mov dword [ebp - 0x40c], 0xfffffff7
push 0x648d
push 0x3e9f
push 0x1215
push 1
lea eax, [ebp - 0x3a8]
push eax
push 0x7aa
push 0x6d02
push 1
lea eax, [ebp - 0x6c]
push eax
lea eax, [ebp - 0x500]
push eax
push 0x368
call fcn.10045505
add esp, 0x2c
mov dword [ebp - 0x368], 0x446e
mov dword [ebp - 0x414], 0x1000bb80
cmp dword [ebp - 0x368], 0x465f
jle 0x1004948b
and dword [ebp - 0xe8], 0
jmp 0x10049391
mov eax, dword [ebp - 0xe8]
inc eax
mov dword [ebp - 0xe8], eax
cmp dword [ebp - 0xe8], 0xea6
jge 0x1004948b
and dword [ebp - 0xd8], 0
jmp 0x100493b7
mov eax, dword [ebp - 0xd8]
inc eax
mov dword [ebp - 0xd8], eax
cmp dword [ebp - 0xd8], 0x48b9
jge 0x10049486
and dword [ebp - 0xe0], 0
jmp 0x100493dd
mov eax, dword [ebp - 0xe0]
inc eax
mov dword [ebp - 0xe0], eax
cmp dword [ebp - 0xe0], 0x69bc
jge 0x10049481
and dword [ebp - 0xf0], 0
jmp 0x10049403
mov eax, dword [ebp - 0xf0]
inc eax
mov dword [ebp - 0xf0], eax
cmp dword [ebp - 0xf0], 0x10b4
jge 0x1004947c
mov eax, dword [ebp - 0xd8]
cdq
idiv dword [ebp - 0xe0]
mov eax, dword [ebp - 0xe8]
mov ecx, edx
shl eax, cl
mov ecx, dword [ebp - 0xf0]
sar eax, cl
cdq
mov dword [ebp - 0x4c0], eax
mov dword [ebp - 0x4bc], edx
push dword [ebp - 0x4bc]
push dword [ebp - 0x4c0]
lea ecx, [ebp - 0x76c]
call fcn.1000d0ee
pop ecx
pop ecx
mov dword [ebp - 0x3f4], eax
mov ecx, dword [ebp - 0x3f4]
call fcn.1001271a
push eax
call fcn.1004c14f
pop ecx
lea ecx, [ebp - 0x76c]
call fcn.10012710
jmp 0x100493f6
jmp 0x100493d0
jmp 0x100493aa
jmp 0x10049384
mov dword [ebp - 0x6c], 0
jmp 0x1004949b
mov eax, dword [ebp - 0x6c]
inc eax
mov dword [ebp - 0x6c], eax
cmp dword [ebp - 0x6c], 0
jg 0x100494e7
mov dword [ebp - 0x3fc], 0xfb91e60e
lea eax, [ebp - 0x6c]
push eax
lea eax, [ebp - 0x3a8]
push eax
lea eax, [ebp - 0x500]
push eax
lea eax, [ebp - 0x60]
push eax
lea eax, [ebp - 0x8c]
push eax
lea eax, [ebp - 0x3fc]
push eax
lea eax, [ebp - 0x404]
push eax
lea eax, [ebp - 0x40c]
push eax
call fcn.10046092
add esp, 0x20
jmp 0x10049494
mov byte [ebp - 4], 0x20
cmp dword [ebp - 0x368], 0x434a
jge 0x10049503
push dword [ebp - 0x414]
call fcn.1004c14f
pop ecx
jmp 0x1004951f
mov dword [ebp - 4], 0x1f
jmp 0x1004952f
jmp 0x100492d0
mov byte [ebp - 4], 0x1e
lea ecx, [ebp - 0x3a8]
call fcn.100129e4
jmp 0x1004926a
cmp dword [ebp - 0x60], 0
je 0x10049553
jmp 0x1004923a
jmp 0x1004923a
lea eax, [ebp - 0x41c]
push eax
lea eax, [ebp - 0x500]
push eax
call fcn.10046161
pop ecx
pop ecx
or dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0x500]
call fcn.100129e4
jmp 0x100491d1
jmp 0x100491a7
mov eax, dword [ebp - 0x30]
cmp dword [eax + 0x10], 0
je 0x1004959a
mov eax, dword [ebp - 0x30]
mov dword [ebp - 0x370], eax
jmp 0x100495a1
and dword [ebp - 0x370], 0
mov eax, dword [ebp - 0x370]
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret