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

Disassembly:
push 0xffffffffffffffff
push 0x52f5b6
mov eax, dword fs:[0]
push eax
sub esp, 0x1c
push ebx
push ebp
push esi
push edi
mov eax, dword [0x568fd0]
xor eax, esp
push eax
lea eax, [esp + 0x30]
mov dword fs:[0], eax
mov ecx, dword [0x56e7e8]
mov eax, dword [ecx]
mov edx, dword [eax + 4]
xor bl, bl
mov esi, ecx
mov byte [esp + 0x1b], bl
call edx
test al, al
je 0x4304ba
mov edi, esi
call fcn.00430600
test al, al
je 0x4304ba
mov eax, dword [esi]
mov edx, dword [eax + 0x28]
mov ecx, esi
call edx
mov edi, eax
cmp edi, 0xffffffff
je 0x43036e
mov ebx, edi
shr ebx, 0x10
movzx ebp, di
cmp bx, di
jbe 0x4302fb
call dword [sym.imp.KERNEL32.dll_GetTickCount]
movzx ecx, di
movzx ebx, bx
sub ebx, ecx
xor edx, edx
div ebx
add edx, edi
movzx ebp, dx
push 0xac
call fcn.00501e17
add esp, 4
mov dword [esp + 0x24], eax
mov dword [esp + 0x38], 0
test eax, eax
je 0x430327
mov edx, dword [esi + 0x1c]
mov ebx, dword [esi + 0x14]
push edx
push eax
call fcn.004273b0
jmp 0x430329
xor eax, eax
mov dword [esp + 0x38], 0xffffffff
mov dword [esi + 0x18], eax
test eax, eax
je 0x4304d0
add eax, 4
mov ecx, eax
call fcn.004d5b80
movzx ecx, bp
add ecx, 0x3b
mov eax, 0x88888889
imul ecx
add edx, ecx
mov ecx, dword [0x56e7e8]
mov ecx, dword [ecx + 0x18]
sar edx, 5
mov eax, edx
shr eax, 0x1f
add eax, edx
push eax
call fcn.00427980
push 0x18
call fcn.00501e17
add esp, 4
mov dword [esp + 0x24], eax
mov dword [esp + 0x38], 1
test eax, eax
je 0x430397
mov edx, dword [esi + 0x14]
mov ecx, dword [esi + 0x1c]
push edx
push eax
call fcn.0043a3a0
jmp 0x430399
xor eax, eax
mov dword [esp + 0x38], 0xffffffff
mov dword [esi + 0x20], eax
mov edx, dword [eax]
mov ecx, eax
mov eax, dword [edx]
call eax
mov eax, dword [esi + 0x24]
push eax
call dword [sym.imp.SHLWAPI.dll_PathFindFileNameW]
push eax
push str.Explorer.exe
mov dword [esp + 0x28], 0
mov dword [esp + 0x24], 0x11
call dword [sym.imp.SHLWAPI.dll_StrCmpIW]
test eax, eax
jne 0x430447
call dword [sym.imp.KERNEL32.dll_GetTickCount]
cmp eax, 0x2bf20
jae 0x43044f
mov ecx, dword [esi + 0x14]
mov edx, dword [ecx]
mov eax, dword [edx + 0x50]
call eax
mov ebp, eax
test ebp, ebp
je 0x430435
xor ecx, ecx
cmp cx, word [ebp]
je 0x430435
mov eax, dword [esi + 0x38]
lea edi, [esi + 0x28]
mov dword [esp + 0x24], eax
cmp dword [edi + 0xc], eax
jbe 0x43040f
call fcn.00501daa
mov ebx, dword [edi]
push ebp
lea edx, [esp + 0x2c]
push edx
push edi
call fcn.00414d70
mov edi, eax
test ebx, ebx
je 0x430427
cmp ebx, dword [edi]
je 0x43042c
call fcn.00501daa
mov eax, dword [esp + 0x24]
cmp eax, dword [edi + 4]
je 0x43044f
mov dword [esp + 0x20], 0x78
mov dword [esp + 0x1c], 0xc
jmp 0x43044f
mov dword [esp + 0x1c], 0x10
mov ecx, dword [esi + 0x14]
mov edx, dword [esp + 0x20]
mov eax, dword [ecx]
push edx
mov edx, dword [eax + 0x78]
call edx
mov ecx, dword [esp + 0x20]
movzx eax, al
push eax
push ecx
mov ecx, dword [esi + 0x20]
call fcn.0043a650
mov ecx, dword [esi + 0x14]
mov edx, dword [ecx]
mov eax, dword [edx + 0x3c]
call eax
test eax, eax
je 0x43048e
mov ecx, dword [esi + 0x1c]
push ecx
mov ecx, dword [esi + 0x14]
push 0
call fcn.0043b1d0
add esp, 8
mov edx, dword [esi]
mov eax, dword [edx + 0x24]
mov ecx, esi
call eax
test al, al
je 0x4304a4
call fcn.004304f0
test al, al
je 0x4304d0
mov al, 1
mov ecx, dword [esp + 0x30]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x28
ret
mov al, bl
mov ecx, dword [esp + 0x30]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x28
ret
mov al, byte [esp + 0x1b]
mov ecx, dword [esp + 0x30]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x28
ret