Function at 0x401e50
Capabilities:
Resolve function by parsing pe exports

Disassembly:
mov eax, dword fs:[0]
push 0xffffffffffffffff
push 0x477f56
push eax
mov dword fs:[0], esp
sub esp, 0xd8
push ebp
mov ebp, ecx
push 1
call fcn.0046cd00
mov ecx, ebp
call fcn.00402b40
test eax, eax
jne 0x401efe
mov eax, dword [0x491ac4]
mov dword [esp + 4], eax
lea ecx, [esp + 8]
push 0x73
push ecx
mov dword [esp + 0xec], 0
call fcn.004025c0
add esp, 8
push eax
lea ecx, [esp + 8]
mov byte [esp + 0xe8], 1
call fcn.0046e29b
lea ecx, [esp + 8]
mov byte [esp + 0xe4], 0
call fcn.0046e162
mov edx, dword [esp + 4]
push 0
push 0x40
push edx
call fcn.004722e6
lea ecx, [esp + 4]
mov dword [esp + 0xe4], 0xffffffff
call fcn.0046e162
pop ebp
mov ecx, dword [esp + 0xd8]
mov dword fs:[0], ecx
add esp, 0xe4
ret
push ebx
push esi
push edi
mov edi, dword [0x4bb6e8]
xor ebx, ebx
cmp edi, ebx
jne 0x401f11
xor edx, edx
jmp 0x401f2a
mov ecx, dword [0x4bb6ec]
mov eax, 0x2aaaaaab
sub ecx, edi
imul ecx
sar edx, 5
mov eax, edx
shr eax, 0x1f
add edx, eax
cmp dword [ebp + 0x188], edx
jb 0x402051
lea ecx, [esp + 0x18]
or esi, 0xffffffff
push ecx
mov byte [esp + 0x2c], 0
mov byte [esp + 0x3c], 0
mov dword [esp + 0x70], ebx
mov byte [esp + 0x74], 0
mov dword [esp + 0x84], ebx
mov dword [esp + 0x8c], ebx
mov dword [esp + 0x88], ebx
mov dword [esp + 0x90], ebx
mov dword [esp + 0x94], 0x1fe
mov dword [esp + 0x98], esi
mov dword [esp + 0x9c], esi
mov dword [esp + 0xa0], esi
mov dword [esp + 0xa4], esi
mov dword [esp + 0xa8], ebx
mov dword [esp + 0xac], ebx
mov dword [esp + 0xb8], 1
mov dword [esp + 0xbc], ebx
mov byte [esp + 0xc0], 0
mov dword [esp + 0xd0], ebx
mov dword [esp + 0xd4], ebx
mov dword [esp + 0xb4], ebx
mov dword [esp + 0xb0], ebx
call dword [sym.imp.KERNEL32.dll_GetLocalTime]
mov edx, dword [esp + 0x24]
mov eax, dword [esp + 0x22]
mov ecx, dword [esp + 0x20]
and edx, 0xffff
and eax, 0xffff
push edx
mov edx, dword [esp + 0x22]
and ecx, 0xffff
push eax
mov eax, dword [esp + 0x22]
push ecx
mov ecx, dword [esp + 0x24]
and edx, 0xffff
and eax, 0xffff
push edx
and ecx, 0xffff
push eax
push ecx
lea edx, [esp + 0xec]
push str._04d__02d__02d__02d:_02d:_02d
push edx
call fcn.00457c43
mov ecx, dword [0x4bb6ec]
add esp, 0x20
lea eax, [esp + 0x28]
push eax
push ecx
mov ecx, 0x4bb6e4
call fcn.00403a80
mov edi, dword [0x4bb6e8]
jmp 0x402054
or esi, 0xffffffff
mov eax, dword [ebp + 0x188]
mov ecx, esi
push 0x48d1a8
lea edx, [eax + eax*2]
xor eax, eax
shl edx, 6
add edx, edi
mov edi, dword [ebp + 0x134]
repne scasb al, byte es:[edi]
not ecx
sub edi, ecx
mov eax, ecx
mov esi, edi
mov edi, edx
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, eax
and ecx, 3
rep movsb byte es:[edi], byte [esi]
mov eax, dword [ebp + 0x188]
mov edx, dword [0x4bb6e8]
mov edi, dword [ebp + 0x128]
lea ecx, [eax + eax*2]
xor eax, eax
shl ecx, 6
lea edx, [ecx + edx + 0x10]
or ecx, 0xffffffff
repne scasb al, byte es:[edi]
not ecx
sub edi, ecx
mov eax, ecx
mov esi, edi
mov edi, edx
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, eax
and ecx, 3
rep movsb byte es:[edi], byte [esi]
mov eax, dword [ebp + 0x188]
mov edx, dword [0x4bb6e8]
mov edi, dword [ebp + 0x11c]
lea ecx, [eax + eax*2]
xor eax, eax
shl ecx, 6
lea edx, [ecx + edx + 0x48]
or ecx, 0xffffffff
repne scasb al, byte es:[edi]
not ecx
sub edi, ecx
mov eax, ecx
mov esi, edi
mov edi, edx
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, eax
and ecx, 3
rep movsb byte es:[edi], byte [esi]
mov eax, dword [ebp + 0x118]
push eax
call fcn.00457ca0
mov edi, eax
add esp, 8
cmp edi, ebx
je 0x402159
mov eax, dword [ebp + 0x188]
mov ebx, dword [sym.imp.WS2_32.dll_inet_addr]
lea ecx, [edi + 1]
lea esi, [eax + eax*2]
mov eax, dword [0x4bb6e8]
shl esi, 6
push ecx
add esi, eax
call ebx
mov dword [esi + 0x60], eax
mov byte [edi], 0
mov eax, dword [ebp + 0x188]
mov ecx, dword [ebp + 0x118]
mov edx, dword [0x4bb6e8]
push ecx
lea esi, [eax + eax*2]
shl esi, 6
add esi, edx
call ebx
mov dword [esi + 0x5c], eax
xor ebx, ebx
jmp 0x402192
mov eax, dword [ebp + 0x118]
push eax
call dword [sym.imp.WS2_32.dll_inet_addr]
mov ecx, dword [ebp + 0x188]
lea edx, [ecx + ecx*2]
mov ecx, dword [0x4bb6e8]
shl edx, 6
mov dword [edx + ecx + 0x60], eax
mov ecx, dword [ebp + 0x188]
lea edx, [ecx + ecx*2]
mov ecx, dword [0x4bb6e8]
shl edx, 6
mov dword [edx + ecx + 0x5c], eax
mov eax, dword [ebp + 0x188]
mov ecx, dword [0x4bb6e8]
lea edx, [eax + eax*2]
mov eax, dword [ebp + 0x144]
shl edx, 6
mov dword [edx + ecx + 0x6c], eax
mov eax, dword [ebp + 0x188]
mov ecx, dword [0x4bb6e8]
lea edx, [eax + eax*2]
mov eax, dword [ebp + 0x16c]
shl edx, 6
mov dword [edx + ecx + 0x70], eax
mov eax, dword [ebp + 0x148]
cmp eax, ebx
je 0x4021dc
mov ecx, dword [ebp + 0x13c]
jmp 0x4021df
or ecx, 0xffffffff
mov eax, dword [ebp + 0x188]
lea edx, [eax + eax*2]
mov eax, dword [0x4bb6e8]
shl edx, 6
mov dword [edx + eax + 0x78], ecx
mov eax, dword [ebp + 0x14c]
cmp eax, ebx
je 0x402206
mov ecx, dword [ebp + 0x140]
jmp 0x402209
or ecx, 0xffffffff
mov eax, dword [ebp + 0x188]
lea edx, [eax + eax*2]
mov eax, dword [0x4bb6e8]
shl edx, 6
mov dword [edx + eax + 0x74], ecx
mov eax, dword [ebp + 0x124]
mov ecx, dword [ebp + 0x12c]
mov edx, dword [ebp + 0x138]
neg eax
sbb eax, eax
and eax, 0x80
neg ecx
sbb ecx, ecx
and ecx, 0x40
or eax, ecx
mov ecx, dword [ebp + 0x130]
neg edx
sbb edx, edx
and edx, 2
or eax, edx
mov edx, dword [ebp + 0x114]
neg ecx
sbb ecx, ecx
and ecx, 8
or eax, ecx
mov ecx, dword [ebp + 0x120]
neg edx
sbb edx, edx
and edx, 0x20
or eax, edx
mov edx, dword [ebp + 0x110]
neg ecx
sbb ecx, ecx
and ecx, 4
or eax, ecx
mov ecx, dword [ebp + 0x188]
neg edx
sbb edx, edx
lea ecx, [ecx + ecx*2]
and edx, 0x10
or eax, edx
mov dword [ebp + 0x18c], eax
mov edx, dword [0x4bb6e8]
shl ecx, 6
mov dword [ecx + edx + 0x68], eax
mov eax, dword [ebp + 0x188]
mov edx, dword [0x4bb6e8]
mov ecx, dword [ebp + 0x158]
lea eax, [eax + eax*2]
shl eax, 6
mov dword [eax + edx + 0x44], ecx
mov eax, dword [ebp + 0x188]
mov edx, dword [0x4bb6e8]
mov ecx, dword [ebp + 0x150]
lea eax, [eax + eax*2]
shl eax, 6
mov dword [eax + edx + 0x64], ecx
mov eax, dword [ebp + 0x188]
mov edx, dword [0x4bb6e8]
mov ecx, dword [ebp + 0x154]
lea eax, [eax + eax*2]
shl eax, 6
mov dword [eax + edx + 0x58], ecx
mov eax, dword [ebp + 0x188]
mov edx, dword [0x4bb6e8]
mov ecx, dword [ebp + 0x160]
lea eax, [eax + eax*2]
shl eax, 6
mov dword [eax + edx + 0x90], ecx
mov eax, dword [ebp + 0x188]
mov edx, dword [0x4bb6e8]
mov ecx, dword [ebp + 0x15c]
lea eax, [eax + eax*2]
shl eax, 6
mov dword [eax + edx + 0x8c], ecx
mov eax, dword [ebp + 0x188]
mov edx, dword [0x4bb6e8]
mov ecx, dword [ebp + 0x164]
lea eax, [eax + eax*2]
shl eax, 6
mov dword [eax + edx + 0xa4], ecx
mov eax, dword [ebp + 0x188]
mov ecx, dword [0x4bb6e8]
push 0x10
lea eax, [eax + eax*2]
shl eax, 6
lea edx, [eax + ecx + 0x94]
lea ecx, [ebp + 0x5c]
push edx
call fcn.0046dca0
mov eax, dword [ebp + 0x188]
mov edx, dword [0x4bb6e8]
mov ecx, dword [ebp + 0x168]
lea edi, [ebp + 0x17c]
lea eax, [eax + eax*2]
lea ebx, [ebp + 0x170]
shl eax, 6
mov dword [eax + edx + 0xa8], ecx
mov esi, dword [ebp + 0x188]
mov edx, dword [0x4bb6e8]
mov ecx, edi
lea esi, [esi + esi*2]
shl esi, 6
add esi, edx
call fcn.0044fa9b
push eax
mov ecx, edi
call fcn.0044fa71
push eax
mov ecx, edi
call fcn.0044fa47
push eax
mov ecx, ebx
call fcn.0044fa1d
push eax
mov ecx, ebx
call fcn.0044f9c1
push eax
mov ecx, ebx
call fcn.0044f964
push eax
add esi, 0xac
push str._04d__02d__02d__02d:_02d:_02d
push esi
call fcn.00457c43
mov eax, dword [ebp + 0x188]
mov ecx, dword [0x4bb6e8]
mov ebx, dword [sym.imp.USER32.dll_GetParent]
add esp, 0x20
lea eax, [eax + eax*2]
shl eax, 6
mov edx, dword [eax + ecx + 0xa4]
test edx, edx
je 0x402560
xor edi, edi
xor esi, esi
test ecx, ecx
je 0x402560
mov edx, dword [0x4bb6ec]
mov eax, 0x2aaaaaab
sub edx, ecx
imul edx
sar edx, 5
mov eax, edx
shr eax, 0x1f
add edx, eax
cmp edi, edx
jae 0x402560
mov eax, dword [esi + ecx + 0xa4]
test eax, eax
jne 0x402554
mov eax, dword [esi + ecx + 0x90]
test eax, eax
je 0x402554
mov eax, dword [ebp + 0x188]
lea edx, [eax + eax*2]
lea eax, [ecx + esi + 0x94]
shl edx, 6
add edx, ecx
push edx
push eax
call fcn.0045c970
add esp, 8
test eax, eax
jne 0x40254e
mov ecx, dword [ebp + 0x188]
mov eax, dword [0x4bb6e8]
lea ecx, [ecx + ecx*2]
shl ecx, 6
mov edx, dword [ecx + eax + 0x6c]
mov dword [eax + esi + 0x6c], edx
mov ecx, dword [ebp + 0x188]
mov eax, dword [0x4bb6e8]
lea ecx, [ecx + ecx*2]
shl ecx, 6
mov edx, dword [ecx + eax + 0x70]
mov dword [eax + esi + 0x70], edx
mov ecx, dword [ebp + 0x188]
mov eax, dword [0x4bb6e8]
lea ecx, [ecx + ecx*2]
shl ecx, 6
mov edx, dword [ecx + eax + 0x78]
mov dword [eax + esi + 0x78], edx
mov ecx, dword [ebp + 0x188]
mov eax, dword [0x4bb6e8]
lea ecx, [ecx + ecx*2]
shl ecx, 6
mov edx, dword [ecx + eax + 0x74]
mov dword [eax + esi + 0x74], edx
mov ecx, dword [ebp + 0x188]
mov eax, dword [0x4bb6e8]
lea ecx, [ecx + ecx*2]
shl ecx, 6
mov edx, dword [ecx + eax + 0x68]
mov dword [eax + esi + 0x68], edx
mov ecx, dword [ebp + 0x188]
mov eax, dword [0x4bb6e8]
lea ecx, [ecx + ecx*2]
shl ecx, 6
mov edx, dword [ecx + eax + 0x8c]
mov dword [eax + esi + 0x8c], edx
mov eax, dword [ebp + 0x1c]
push eax
call ebx
push eax
call fcn.0046af22
mov ecx, dword [eax + 0x1c]
push 0
push edi
push 0x4c9
push ecx
call dword [sym.imp.USER32.dll_SendMessageA]
mov ecx, dword [0x4bb6e8]
inc edi
add esi, 0xc0
jmp 0x402426
mov edx, dword [ebp + 0x1c]
push edx
call ebx
push eax
call fcn.0046af22
mov ecx, dword [ebp + 0x188]
mov edx, dword [eax + 0x1c]
push 0
push ecx
push 0x4c9
push edx
call dword [sym.imp.USER32.dll_SendMessageA]
push 1
push 0x48a
mov ecx, ebp
call fcn.0046db89
mov ecx, eax
call fcn.0046ddbc
mov ecx, dword [esp + 0xe8]
pop edi
pop esi
pop ebx
pop ebp
mov dword fs:[0], ecx
add esp, 0xe4
ret