Function at 0x1004c061
Capabilities:
Resume thread

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x2c
push ebx
xor ebx, ebx
mov dword [ebp - 0xc], ebx
push esi
mov dword [ebp - 8], 0xcd9d7
mov esi, ecx
mov dword [ebp - 0x10], 0x78254981
push edi
mov dword [ebp - 0xc], ebx
jmp 0x1004c0db
push 3
lea ecx, [ebp - 0x2c]
call fcn.10017b3d
mov dword [ebp - 8], 0x1836ccb0
mov dword [ebp - 8], ebx
jmp 0x1004c0a7
mov ecx, dword [ebp - 8]
mov eax, dword [ebp - 0x2c]
or dword [eax + ecx*4], 0xffffffff
inc dword [ebp - 8]
cmp dword [ebp - 8], 3
jl 0x1004c09a
mov eax, dword [ebp - 0x2c]
cmp dword [eax + 8], ebx
je 0x1004c0c9
mov byte [ebp - 1], bl
cmp byte [ebp - 1], bl
je 0x1004c0d0
push ebx
push ebx
push ebx
push ebx
call dword [sym.imp.KERNEL32.dll_WritePrivateProfileStringW]
jmp 0x1004c0d0
mov dword [ebp - 8], 0xffffffff
lea ecx, [ebp - 0x2c]
call fcn.10018378
inc dword [ebp - 0xc]
cmp dword [ebp - 0xc], 0x1a
je 0x1004c084
mov dword [ebp - 8], 0x8932
cmp dword [ebp - 8], ebx
jne 0x1004c104
mov eax, dword [ebp - 8]
mov eax, dword [ebp - 0xc]
cmp dword [ebp - 0xc], ebx
je 0x1004c0fb
mov eax, dword [ebp - 8]
mov eax, dword [ebp - 0xc]
mov eax, dword [ebp - 8]
mov eax, dword [ebp - 0xc]
mov eax, dword [ebp - 0xc]
xor ecx, ecx
mov eax, dword [ebp - 0xc]
mov eax, dword [ebp - 8]
mov dword [ebp - 0xc], eax
mov edx, dword [ebp - 0x10]
add edx, dword [ebp - 0xc]
mov eax, dword [ebp - 0x10]
cmp edx, eax
push esi
setg cl
xor edi, edi
push 0x1404
inc edi
mov dword [ebp - 0x10], ecx
push edi
push 0x6911
call fcn.10047b73
mov dword [ebp - 8], edi
add esp, 0x10
mov dword [ebp - 0x10], ebx
mov dword [ebp - 0xc], 0xc23a
mov eax, dword [ebp - 0x10]
add eax, dword [ebp - 8]
je 0x1004c15b
mov dword [ebp - 0x10], 3
dec dword [ebp - 0x10]
jmp 0x1004c16a
mov byte [ebp - 1], bl
cmp byte [ebp - 1], bl
je 0x1004c16a
push ebx
call dword [sym.imp.KERNEL32.dll_ResumeThread]
inc dword [ebp - 0xc]
push esi
call fcn.100305db
pop ecx
mov dword [ebp - 0xc], ebx
lea ecx, [ebp - 0x20]
push 2
mov dword [ebp - 0x14], eax
call fcn.10017b3d
mov dword [ebp - 0x10], 0xf6657eef
mov dword [ebp - 0x10], edi
mov dword [ebp - 0xc], ebx
jmp 0x1004c1a3
mov ecx, dword [ebp - 0xc]
mov eax, dword [ebp - 0x20]
mov dword [eax + ecx*4], 0x65683c8f
inc dword [ebp - 0xc]
cmp dword [ebp - 0xc], 2
jl 0x1004c193
mov dword [ebp - 0xc], 0xfffffff7
jmp 0x1004c1c4
mov byte [ebp - 1], bl
cmp byte [ebp - 1], bl
je 0x1004c1c1
push ebx
call dword [sym.imp.USER32.dll_RegisterClassW]
dec dword [ebp - 0xc]
cmp dword [ebp - 0xc], 0xffffffef
jl 0x1004c1b2
mov dword [ebp - 0xc], ebx
jmp 0x1004c2e6
mov dword [ebp - 8], 0xddbc3707
mov dword [ebp - 0x10], 9
mov dword [ebp - 8], ebx
jmp 0x1004c1f5
mov ecx, dword [ebp - 8]
mov eax, dword [ebp - 0x20]
mov dword [eax + ecx*4], 8
inc dword [ebp - 8]
cmp dword [ebp - 8], 2
jl 0x1004c1e5
mov dword [ebp - 8], ebx
cmp dword [ebp - 8], edi
jg 0x1004c2e3
mov dword [ebp - 0x10], 0xffffffff
mov eax, dword [ebp - 8]
mov eax, dword [ebp - 0xc]
mov eax, dword [ebp - 0xc]
mov eax, dword [ebp - 8]
mov eax, dword [ebp - 8]
mov eax, dword [ebp - 8]
mov eax, dword [ebp - 8]
mov eax, dword [ebp - 8]
mov esi, dword [ebp - 8]
mov edx, dword [ebp - 0xc]
mov eax, dword [ebp - 0xc]
add edx, 0xa7323eb5
neg edx
sbb edx, edx
xor ecx, ecx
inc edx
cmp edx, eax
mov eax, dword [ebp - 0x20]
setle cl
cmp ecx, dword [eax + esi*4]
jle 0x1004c250
cmp dword [ebp - 8], ebx
je 0x1004c250
mov ebx, edi
mov eax, dword [ebp - 8]
xor edx, edx
mov esi, dword [ebp - 8]
mov edi, dword [ebp - 8]
mov ecx, dword [ebp - 0x20]
mov dword [ebp - 0x10], eax
mov eax, dword [ebp - 8]
push 0
cmp dword [ecx + esi*4], eax
mov eax, dword [ebp - 0x20]
setl dl
xor ecx, ecx
cmp edx, ebx
setl cl
xor edx, edx
cmp ecx, dword [eax + edi*4]
mov ecx, dword [ebp - 0x10]
setne dl
xor ebx, ebx
cmp dword [eax + ecx*4], edx
mov eax, dword [ebp - 8]
setg bl
xor ecx, ecx
cmp ebx, eax
pop ebx
setg cl
mov dword [ebp - 0x10], ecx
xor ecx, ecx
mov eax, dword [ebp - 8]
mov eax, dword [ebp - 8]
mov eax, dword [ebp - 8]
mov eax, dword [ebp - 0xc]
imul eax, dword [ebp - 0xc]
mov dword [ebp - 0x10], eax
mov esi, dword [ebp - 8]
mov eax, dword [ebp - 0x10]
mov edx, dword [ebp - 0x20]
neg eax
cmp dword [edx + esi*4], eax
setle cl
xor edi, edi
mov dword [ebp - 0x10], ecx
inc edi
mov esi, dword [ebp - 8]
mov ecx, dword [ebp - 0x10]
mov eax, dword [ebp - 0x20]
mov edx, dword [ebp - 0x20]
add ecx, dword [eax]
add ecx, dword [edx + esi*4]
mov dword [ebp - 0x10], ecx
inc dword [ebp - 8]
cmp dword [ebp - 8], edi
jle 0x1004c207
inc dword [ebp - 0xc]
cmp dword [ebp - 0xc], edi
jle 0x1004c1d2
lea ecx, [ebp - 0x20]
call fcn.10018378
mov eax, dword [ebp - 0x14]
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret