Function at 0x62f4ad
Capabilities:
Create thread

Disassembly:
push 0x3a0
mov eax, 0x6c2811
call fcn.0064d018
mov ebx, ecx
mov dword [ebp - 0x3a4], ebx
mov eax, dword [ebx + 0xcc]
mov dword [ebp - 0x3ac], eax
inc eax
mov dword [ebx + 0xcc], eax
mov eax, dword [ebx + 0x94]
push 8
mov dword [ebp - 0x3a0], eax
lea eax, [ebx + 0x84]
pop ecx
mov dword [ebp - 0x3a8], eax
cmp dword [eax + 0x14], ecx
jb 0x62f4ff
mov eax, dword [eax]
mov dword [ebp - 0x3a8], eax
mov esi, dword [ebx + 0x168]
mov edi, dword [ebx + 0x164]
push 0
push 0
call dword [sym.imp.KERNEL32.dll_GetModuleHandleW]
push eax
push dword [ebp - 0x3ac]
mov eax, dword [ebx + 0x170]
mov ecx, 0x5003008b
push dword [ebx + 0x1cc]
sub eax, esi
mov edx, str.STATIC
push eax
mov eax, dword [ebx + 0x16c]
sub eax, edi
cmp dword [ebp - 0x3a0], 0
push eax
push esi
push edi
mov eax, 0x5000008b
cmovne eax, ecx
xor ecx, ecx
push eax
push dword [ebp - 0x3a8]
call fcn.0044fd15
push 1
mov dword [ebx + 0x1e4], eax
call fcn.0062c6a1
push eax
push 0x30
push dword [ebx + 0x1e4]
call dword [sym.imp.USER32.dll_SendMessageW]
mov esi, dword [ebx + 0xcc]
mov edi, dword [ebx + 0x158]
push 0
push 0
lea eax, [esi + 1]
mov dword [ebx + 0xcc], eax
mov eax, dword [ebx + 0x94]
mov ebx, dword [ebx + 0x154]
mov dword [ebp - 0x3a0], eax
call dword [sym.imp.KERNEL32.dll_GetModuleHandleW]
push eax
push esi
mov esi, dword [ebp - 0x3a4]
mov ecx, 0x50000000
push dword [esi + 0x1cc]
mov eax, dword [esi + 0x160]
sub eax, edi
push eax
mov eax, dword [esi + 0x15c]
sub eax, ebx
cmp dword [ebp - 0x3a0], 0
push eax
push edi
push ebx
mov eax, 0x50030000
cmove ecx, eax
xor eax, eax
cmp dword [esi + 0x78], 2
push 8
pop edx
cmove eax, edx
xor edi, edi
or ecx, eax
mov edx, str.msctls_progress32
push ecx
push edi
xor ecx, ecx
call fcn.0044fd15
mov ecx, 0x6f6bfc
mov dword [esi + 0x1e0], eax
push ecx
push ecx
push eax
call dword [sym.imp.UxTheme.dll_SetWindowTheme]
movzx eax, word [0x831440]
shl eax, 0x10
push eax
push edi
push 0x401
push dword [esi + 0x1e0]
mov ebx, dword [sym.imp.USER32.dll_SendMessageW]
call ebx
push edi
push 1
push 0x404
push dword [esi + 0x1e0]
call ebx
push 5
call dword [sym.imp.USER32.dll_GetSysColor]
push eax
push edi
push 0x2001
push dword [esi + 0x1e0]
call ebx
xor edx, edx
mov ecx, 0x3ceb
cmp dword [0x831494], 2
cmove ecx, edx
cmp dword [0x831494], 1
mov edx, 0xffffff
cmove ecx, edx
push ecx
push edi
push 0x409
push dword [esi + 0x1e0]
call ebx
cmp dword [esi + 0x78], 2
jne 0x62f69e
push 0x64
push 1
push 0x40a
push dword [esi + 0x1e0]
call ebx
cmp dword [esi + 0x7c], edi
je 0x62f73b
push 0x2c
call fcn.006707e1
pop ecx
test eax, eax
je 0x62f741
mov dword [ebp - 0x3a4], eax
push ecx
push 1
mov ecx, eax
mov dword [ebp - 4], edi
call fcn.004f980d
or dword [ebp - 4], 0xffffffff
lea edi, [esi + 0x104]
push eax
mov ecx, edi
call fcn.0061443b
xor eax, eax
push eax
push eax
push esi
push 0x62d260
push eax
push eax
call dword [sym.imp.KERNEL32.dll_CreateThread]
mov ebx, eax
test ebx, ebx
je 0x62f746
push 0x14
call fcn.006707e1
pop ecx
test eax, eax
je 0x62f741
push ecx
push ebx
mov ecx, eax
call fcn.006155df
test eax, eax
je 0x62f711
lock inc dword [eax + 4]
mov ecx, dword [esi + 0x9c]
mov dword [esi + 0x9c], eax
test ecx, ecx
je 0x62f726
call fcn.004f96a9
mov eax, dword [edi]
test eax, eax
jne 0x62f731
call fcn.0050643c
or edx, 0xffffffff
mov ecx, eax
call fcn.004f9703
call fcn.0064cfc2
ret
call fcn.004f732c
push str.CreateThread_call_failed.
call dword [sym.imp.KERNEL32.dll_GetLastError]
push eax
push 0xf
lea ecx, [ebp - 0x39c]
call fcn.004fabff
push 0x811494
lea eax, [ebp - 0x39c]
push eax
call fcn.0064f293
int3