Function at 0x401d35
Capabilities:
Create thread

Disassembly:
push 0xffffffffffffffff
push 0x5ad5ff
mov eax, dword fs:[0]
push eax
sub esp, 0x2c
push ebx
push ebp
push esi
push edi
mov eax, dword [0x606c40]
xor eax, esp
push eax
lea eax, [esp + 0x40]
mov dword fs:[0], eax
mov ecx, str.__hostwnd
mov esi, edx
call fcn.004246d6
mov ebx, dword [0x5b1794]
push eax
mov dword [0x621c10], eax
call ebx
mov ebp, dword [0x5b1784]
test eax, eax
je 0x401d8d
push 0x621c14
push dword [0x621c10]
call ebp
xor esi, esi
cmp dword [0x621c10], esi
je 0x401f61
cmp dword [0x621c14], esi
je 0x401f61
call fcn.0047a902
push 0x4a
mov dword [0x6205ec], eax
call fcn.0047d1b3
pop ecx
call fcn.00462fe8
lea ecx, [eax + 4]
push ecx
push esi
push eax
push 0x46301a
push esi
push esi
call fcn.0057e701
mov edi, dword [0x5b13a0]
add esp, 0x18
cmp eax, esi
je 0x401de0
push eax
call edi
call fcn.004dafa9
lea ecx, [eax + 4]
push ecx
push esi
push eax
push 0x4dafe5
push esi
push esi
call fcn.0057e701
add esp, 0x18
cmp eax, esi
je 0x401e01
push eax
call edi
call fcn.004d9065
lea ecx, [eax + 4]
push ecx
push esi
push eax
push 0x4d9097
push esi
push esi
call fcn.0057e701
add esp, 0x18
cmp eax, esi
je 0x401e22
push eax
call edi
call fcn.00448c6c
lea ecx, [eax + 4]
push ecx
push esi
push eax
push 0x448ccc
push esi
push esi
call fcn.0057e701
add esp, 0x18
cmp eax, esi
je 0x401e43
push eax
call edi
call fcn.004f077a
push 1
call fcn.004f07b6
mov edi, eax
cmp edi, esi
je 0x401e60
call fcn.004f077a
push eax
call fcn.004f0844
call fcn.0045f661
call fcn.0045f779
call fcn.0045f661
push esi
call fcn.0045f68c
push dword [0x621c10]
call ebx
test eax, eax
jne 0x401ea7
mov dword [0x621c10], esi
mov dword [0x621c14], esi
call fcn.004014ca
mov dword [0x621c10], eax
cmp eax, esi
je 0x401f61
push 0x621c14
push eax
call ebp
mov eax, dword [0x621c10]
cmp eax, esi
je 0x401f61
cmp dword [0x621c14], esi
je 0x401f61
push esi
push esi
push 0x2501
push eax
call dword [0x5b1790]
cmp edi, esi
jne 0x401eec
call fcn.004f077a
push esi
call fcn.004f07b6
test eax, eax
je 0x401eec
call fcn.004f077a
push eax
call fcn.004f0844
push dword [0x621c14]
push esi
push 0x100000
call dword [0x5b13a4]
mov dword [esp + 0x20], eax
cmp eax, esi
je 0x401f61
push 6
pop ecx
xor eax, eax
lea edi, [esp + 0x28]
mov dword [esp + 0x24], esi
rep stosd dword es:[edi], eax
mov edi, dword [0x5b177c]
jmp 0x401f33
lea eax, [esp + 0x24]
push eax
call dword [0x5b1778]
lea eax, [esp + 0x24]
push eax
call dword [0x5b1774]
push 1
push esi
push esi
push esi
lea eax, [esp + 0x34]
push eax
call edi
test eax, eax
jne 0x401f1d
push 0xff
push 0xffffffffffffffff
push esi
lea eax, [esp + 0x2c]
push eax
push 1
call dword [0x5b1770]
cmp eax, esi
je 0x401f61
cmp eax, 0xffffffff
jne 0x401f33
call fcn.0045f661
push 1
call fcn.0045f68c
call fcn.004dafa9
mov ebx, dword [0x5b16c4]
mov ebp, dword [0x5b121c]
mov edi, eax
mov eax, dword [edi + 4]
cmp eax, esi
je 0x401fd0
push esi
push esi
push 0x12
push eax
call ebx
push dword [edi + 4]
push esi
push 0x1f03ff
call ebp
mov dword [esp + 0x18], eax
cmp eax, esi
je 0x401fcd
push 0x64
push eax
call dword [0x5b1380]
test eax, eax
je 0x401fc3
push dword [esp + 0x18]
call dword [0x5b11d0]
push esi
push dword [esp + 0x1c]
call dword [0x5b11d4]
push dword [esp + 0x18]
call dword [0x5b13a0]
mov dword [edi + 4], esi
call fcn.004d9065
mov edi, eax
mov eax, dword [edi + 4]
mov dword [esp + 0x1c], edi
cmp eax, esi
je 0x402032
push esi
push esi
push 0x12
push eax
call ebx
push dword [edi + 4]
mov edi, 0x1f03ff
push esi
push edi
call ebp
mov dword [esp + 0x18], eax
cmp eax, esi
je 0x402029
push 0x64
push eax
call dword [0x5b1380]
test eax, eax
je 0x40201f
push dword [esp + 0x18]
call dword [0x5b11d0]
push esi
push dword [esp + 0x1c]
call dword [0x5b11d4]
push dword [esp + 0x18]
call dword [0x5b13a0]
mov eax, dword [esp + 0x1c]
mov dword [eax + 4], esi
jmp 0x402037
mov edi, 0x1f03ff
call fcn.00462fe8
mov dword [esp + 0x1c], eax
mov eax, dword [eax + 4]
cmp eax, esi
je 0x402097
push esi
push esi
push 0x12
push eax
call ebx
mov eax, dword [esp + 0x1c]
push dword [eax + 4]
push esi
push edi
call ebp
mov dword [esp + 0x18], eax
cmp eax, esi
je 0x402090
push 0x2710
push eax
call dword [0x5b1380]
test eax, eax
je 0x402086
push dword [esp + 0x18]
call dword [0x5b11d0]
push esi
push dword [esp + 0x1c]
call dword [0x5b11d4]
push dword [esp + 0x18]
call dword [0x5b13a0]
mov eax, dword [esp + 0x1c]
mov dword [eax + 4], esi
call fcn.00448c6c
mov dword [esp + 0x20], eax
mov eax, dword [eax + 4]
cmp eax, esi
je 0x4020e8
push esi
push esi
push 0x12
push eax
call ebx
mov ebx, dword [esp + 0x20]
push dword [ebx + 4]
push esi
push edi
call ebp
mov edi, eax
cmp edi, esi
je 0x4020e5
push 0x3e8
push edi
call dword [0x5b1380]
test eax, eax
je 0x4020de
push edi
call dword [0x5b11d0]
push esi
push edi
call dword [0x5b11d4]
push edi
call dword [0x5b13a0]
mov dword [ebx + 4], esi
mov ecx, dword [esp + 0x40]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x38
ret