Function at 0x1005904a
Capabilities:
Create thread

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x118
movzx eax, byte [ebp + 0x10]
test eax, eax
je 0x100593bd
mov eax, dword [ebp + 0x18]
mov dword [ebp - 0xa8], eax
mov eax, dword [ebp + 0x20]
mov dword [ebp - 0x70], eax
lea eax, [ebp + 0x28]
mov dword [ebp - 0x60], eax
mov eax, dword [ebp + 0x3c]
mov dword [ebp - 0x68], eax
mov eax, dword [ebp + 0x24]
mov dword [ebp - 0xdc], eax
mov eax, dword [ebp + 0x38]
mov dword [ebp - 0x54], eax
mov dword [ebp - 0x44], 0x1205
mov dword [ebp - 0xa0], 0x1000d690
cmp dword [ebp - 0x44], 0x12db
jle 0x10059144
and dword [ebp - 0x28], 0
jmp 0x100590b4
mov eax, dword [ebp - 0x28]
inc eax
mov dword [ebp - 0x28], eax
cmp dword [ebp - 0x28], 0x6f34
jge 0x10059144
and dword [ebp - 0xc], 0
jmp 0x100590ce
mov eax, dword [ebp - 0xc]
inc eax
mov dword [ebp - 0xc], eax
cmp dword [ebp - 0xc], 0x3dcd
jge 0x1005913f
and dword [ebp - 0x1c], 0
jmp 0x100590e4
mov eax, dword [ebp - 0x1c]
inc eax
mov dword [ebp - 0x1c], eax
cmp dword [ebp - 0x1c], 0x6d52
jge 0x1005913d
mov eax, dword [ebp - 0x28]
sub eax, dword [ebp - 0xc]
mov ecx, dword [ebp - 0x1c]
shl eax, cl
cdq
mov dword [ebp - 0xd8], eax
mov dword [ebp - 0xd4], edx
push dword [ebp - 0xd4]
push dword [ebp - 0xd8]
lea ecx, [ebp - 0x100]
call fcn.100118ee
pop ecx
pop ecx
mov dword [ebp - 0x78], eax
mov ecx, dword [ebp - 0x78]
call fcn.10022827
push eax
call fcn.10077843
pop ecx
lea ecx, [ebp - 0x100]
call fcn.1002281d
jmp 0x100590dd
jmp 0x100590c7
jmp 0x100590ad
mov eax, dword [ebp + 0x34]
mov dword [ebp - 0xc4], eax
cmp dword [ebp - 0x44], 0xe52
jge 0x10059162
push dword [ebp - 0xa0]
call fcn.10077843
pop ecx
mov eax, dword [ebp + 0x30]
mov dword [ebp - 0xb0], eax
mov eax, dword [ebp + 0x1c]
mov dword [ebp - 0x80], eax
mov eax, dword [ebp - 0x60]
movzx eax, byte [eax]
test eax, eax
je 0x100593aa
mov eax, dword [ebp - 0xc4]
mov dword [ebp - 0xbc], eax
mov eax, dword [ebp - 0x68]
mov dword [ebp - 0x88], eax
mov eax, dword [ebp - 0xa8]
mov dword [ebp - 0xb8], eax
mov eax, dword [ebp - 0x70]
mov dword [ebp - 0x90], eax
mov eax, dword [ebp - 0xdc]
mov dword [ebp - 0xc0], eax
mov eax, dword [ebp - 0x54]
mov dword [ebp - 0x98], eax
mov eax, dword [ebp - 0xb0]
mov dword [ebp - 0xc8], eax
mov eax, dword [ebp - 0x80]
mov dword [ebp - 0x5c], eax
mov eax, dword [ebp - 0xbc]
mov dword [ebp - 0x8c], eax
mov eax, dword [ebp - 0x88]
mov dword [ebp - 0x10], eax
mov eax, dword [ebp - 0xb8]
mov dword [ebp - 0x6c], eax
mov eax, dword [ebp - 0x90]
mov dword [ebp - 0x7c], eax
mov eax, dword [ebp - 0xc0]
mov dword [ebp - 0x40], eax
mov eax, dword [ebp - 0x98]
mov dword [ebp - 0x30], eax
mov eax, dword [ebp - 0xc8]
mov dword [ebp - 0x74], eax
mov dword [ebp - 0x3c], 0x43c
mov dword [ebp - 0x64], 0x1000d6c0
cmp dword [ebp - 0x3c], 0x7b5
jle 0x100592c8
and dword [ebp - 0x14], 0
jmp 0x1005923a
mov eax, dword [ebp - 0x14]
inc eax
mov dword [ebp - 0x14], eax
cmp dword [ebp - 0x14], 0x4869
jge 0x100592c8
and dword [ebp - 0x24], 0
jmp 0x10059254
mov eax, dword [ebp - 0x24]
inc eax
mov dword [ebp - 0x24], eax
cmp dword [ebp - 0x24], 0x1da2
jge 0x100592c3
and dword [ebp - 8], 0
jmp 0x1005926a
mov eax, dword [ebp - 8]
inc eax
mov dword [ebp - 8], eax
cmp dword [ebp - 8], 0x703c
jge 0x100592c1
mov eax, dword [ebp - 0x14]
xor eax, dword [ebp - 0x24]
xor eax, dword [ebp - 8]
cdq
mov dword [ebp - 0xe4], eax
mov dword [ebp - 0xe0], edx
push dword [ebp - 0xe0]
push dword [ebp - 0xe4]
lea ecx, [ebp - 0x118]
call fcn.100118ee
pop ecx
pop ecx
mov dword [ebp - 0x58], eax
mov ecx, dword [ebp - 0x58]
call fcn.10022827
push eax
call fcn.10077843
pop ecx
lea ecx, [ebp - 0x118]
call fcn.1002281d
jmp 0x10059263
jmp 0x1005924d
jmp 0x10059233
mov eax, dword [ebp - 0x5c]
mov dword [ebp - 0x84], eax
cmp dword [ebp - 0x3c], 0x1b3
jge 0x100592e3
push dword [ebp - 0x64]
call fcn.10077843
pop ecx
mov eax, dword [ebp - 0x10]
mov eax, dword [eax]
mov dword [ebp - 0xe8], eax
mov eax, dword [ebp - 0x6c]
mov ecx, dword [ebp - 0x10]
mov ecx, dword [ecx]
cmp dword [eax], ecx
jne 0x10059303
mov dword [ebp - 0x34], 1
jmp 0x10059307
and dword [ebp - 0x34], 0
mov eax, dword [ebp - 0x74]
cmp dword [eax], 0xfffffff9
jne 0x10059318
mov dword [ebp - 0x2c], 1
jmp 0x1005931c
and dword [ebp - 0x2c], 0
mov eax, dword [ebp - 0x30]
push dword [eax]
mov ecx, dword [ebp - 0x40]
call fcn.10022bff
mov ecx, dword [ebp - 0x2c]
mov dword [eax], ecx
mov eax, dword [ebp - 0x30]
mov eax, dword [eax]
imul eax, dword [ebp - 0x2c]
mov ecx, dword [ebp - 0x10]
imul eax, dword [ecx]
mov ecx, dword [ebp - 0x7c]
mov dword [ecx], eax
mov eax, dword [ebp - 0x30]
cmp dword [eax], 0xe34f
jl 0x10059356
mov dword [ebp - 0x4c], 1
jmp 0x1005935a
and dword [ebp - 0x4c], 0
mov eax, dword [ebp - 0x84]
mov eax, dword [eax]
cmp dword [ebp - 0x4c], eax
jg 0x10059370
mov dword [ebp - 0x38], 1
jmp 0x10059374
and dword [ebp - 0x38], 0
mov eax, dword [ebp - 0x10]
mov eax, dword [eax]
add eax, dword [ebp - 0x34]
add eax, dword [ebp - 0x38]
jne 0x10059396
push 0
mov ecx, dword [ebp - 0x40]
call fcn.10022bff
cmp dword [eax], 0
jne 0x10059396
and dword [ebp - 0x48], 0
jmp 0x1005939d
mov dword [ebp - 0x48], 1
mov eax, dword [ebp - 0x8c]
mov ecx, dword [ebp - 0x48]
mov dword [eax], ecx
jmp 0x100593b8
push 0
push 0
push 0
push 0
call dword [sym.imp.GDI32.dll_CreateRectRgn]
jmp 0x100594c5
mov eax, dword [ebp + 8]
mov dword [ebp - 0x9c], eax
mov dword [ebp - 0x50], 0x3074
mov dword [ebp - 0x94], 0x1000d700
cmp dword [ebp - 0x50], 0x3240
jle 0x1005946a
and dword [ebp - 0x18], 0
jmp 0x100593f1
mov eax, dword [ebp - 0x18]
inc eax
mov dword [ebp - 0x18], eax
cmp dword [ebp - 0x18], 0x34de
jge 0x10059458
and dword [ebp - 0x20], 0
jmp 0x10059407
mov eax, dword [ebp - 0x20]
inc eax
mov dword [ebp - 0x20], eax
cmp dword [ebp - 0x20], 0x7816
jge 0x10059456
and dword [ebp - 4], 0
jmp 0x1005941d
mov eax, dword [ebp - 4]
inc eax
mov dword [ebp - 4], eax
cmp dword [ebp - 4], 0x70c3
jge 0x10059454
mov eax, dword [ebp - 0x18]
xor eax, dword [ebp - 0x20]
xor eax, dword [ebp - 4]
cdq
mov dword [ebp - 0xd0], eax
mov dword [ebp - 0xcc], edx
push dword [ebp - 0xcc]
push dword [ebp - 0xd0]
mov ecx, 0x10092b78
call fcn.10022847
jmp 0x10059416
jmp 0x10059400
jmp 0x100593ea
push 0
push 0
push 0
push 0
push 0
push 0
call dword [sym.imp.KERNEL32.dll_CreateThread]
mov eax, dword [ebp + 0xc]
mov dword [ebp - 0xa4], eax
cmp dword [ebp - 0x50], 0x2ff0
jge 0x1005948c
mov edx, dword [ebp - 0x94]
mov ecx, 0x10092b78
call fcn.10025597
mov eax, dword [ebp + 0x14]
mov dword [ebp - 0xb4], eax
mov eax, dword [ebp + 0x2c]
mov dword [ebp - 0xac], eax
push 0
push dword [ebp - 0x9c]
push dword [ebp - 0xa4]
push dword [ebp - 0xac]
push dword [ebp - 0xb4]
push 0x703d
call fcn.1004df53
add esp, 0x18
mov esp, ebp
pop ebp
ret