Function at 0x406880
Capabilities:
Get common file path

Disassembly:
sub esp, 0x134
mov eax, dword [esp + 0x14c]
push ebx
push ebp
push esi
push edi
xor edi, edi
push eax
mov dword [esp + 0x144], edi
call fcn.00407770
mov esi, dword [sym.imp.USER32.dll_GetWindowLongA]
push 0xfffffffffffffffa
mov ebp, dword [esp + 0x14c]
mov dword [esp + 0x14], eax
push ebp
call esi
mov ebx, eax
mov dword [esp + 0x14], edi
mov ecx, 9
xor eax, eax
lea edi, [esp + 0x18]
rep stosd dword es:[edi], eax
lea ecx, [esp + 0x14]
push ecx
push str.BrowserHostClass
push 0xfffffffffffffffa
push ebp
call esi
push eax
call dword [sym.imp.USER32.dll_GetClassInfoA]
test eax, eax
jne 0x406923
push 0x7f00
push eax
mov dword [esp + 0x2c], ebx
mov dword [esp + 0x20], 0x405820
mov dword [esp + 0x28], 4
call dword [sym.imp.USER32.dll_LoadCursorA]
lea edx, [esp + 0x14]
mov dword [esp + 0x38], str.BrowserHostClass
push edx
mov dword [esp + 0x30], eax
call dword [sym.imp.USER32.dll_RegisterClassA]
test ax, ax
je 0x406ae4
push 0x18
call fcn.00427860
mov esi, eax
test esi, esi
je 0x406964
lea ecx, [esi + 0x10]
mov dword [esi + 0xc], 0x43fea4
call fcn.004194e0
mov eax, dword [esi + 0xc]
mov dword [esi + 4], 0
mov byte [esi + 8], 0
mov byte [esi + 9], 0
mov dword [esi], 0x43fde0
mov ecx, dword [eax + 4]
mov dword [ecx + esi + 0xc], 0x43fddc
jmp 0x406966
xor esi, esi
mov edx, dword [esp + 0x10]
mov eax, dword [esp + 0x158]
mov ecx, dword [esp + 0x154]
push esi
push ebx
push edx
mov edx, dword [esp + 0x15c]
push ebp
push eax
mov eax, dword [esp + 0x160]
push ecx
push edx
push eax
push 0x54000000
push 0x43f4a8
push str.BrowserHostClass
push 0
call dword [sym.imp.USER32.dll_CreateWindowExA]
mov ecx, dword [esi + 0xc]
mov edi, eax
mov dword [esp + 0x10], edi
mov edx, dword [ecx + 4]
lea eax, [edx + esi + 0xc]
cmp eax, eax
je 0x4069ba
int3
push eax
call fcn.004194f0
test edi, edi
je 0x406ae4
mov eax, dword [esp + 0x15c]
push eax
push edi
call fcn.0041ec30
test eax, eax
jl 0x406ae4
mov ebp, dword [esp + 0x160]
push 5
push str.http:
push ebp
call fcn.00435c60
add esp, 0xc
test eax, eax
je 0x406ac8
push 6
push str.https:
push ebp
call fcn.00435c60
add esp, 0xc
test eax, eax
je 0x406ac8
push 4
push str.res:
push ebp
call fcn.00435c60
add esp, 0xc
test eax, eax
je 0x406ac8
lea ecx, [esp + 0x3c]
push ecx
push 0x104
call dword [sym.imp.KERNEL32.dll_GetCurrentDirectoryA]
mov esi, eax
test esi, esi
je 0x406ae4
push 0x2f
lea edx, [esp + 0x40]
push 0x5c
push edx
call fcn.00410ff0
mov edi, str.file:___
or ecx, 0xffffffff
xor eax, eax
lea ebx, [esp + esi + 0x3b]
repne scasb al, byte es:[edi]
not ecx
dec ecx
mov edi, ebp
mov edx, ecx
or ecx, 0xffffffff
repne scasb al, byte es:[edi]
not ecx
dec ecx
add ecx, esi
cmp byte [ebx], 0x2f
setne al
add ecx, edx
lea eax, [eax + ecx + 1]
push eax
call fcn.00427860
mov esi, eax
test esi, esi
je 0x406ae4
mov al, byte [ebx]
cmp al, 0x2f
mov eax, 0x43f4a8
je 0x406a9e
mov eax, 0x43fdb4
push ebp
lea ecx, [esp + 0x40]
push eax
push ecx
push str.file:____s_s_s
push esi
call fcn.00435a6f
mov edx, dword [esp + 0x24]
add esp, 0x14
push esi
push edx
call fcn.0041f3e0
push esi
mov edi, eax
call fcn.00427d30
jmp 0x406ad1
push ebp
push edi
call fcn.0041f3e0
mov edi, eax
test edi, edi
jl 0x406ae4
pop edi
pop esi
pop ebp
mov al, 1
pop ebx
add esp, 0x134
ret 0x1c
pop edi
pop esi
pop ebp
xor al, al
pop ebx
add esp, 0x134
ret 0x1c