Function at 0x406850
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.00407930
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 0x4068f3
push 0x7f00
push eax
mov dword [esp + 0x2c], ebx
mov dword [esp + 0x20], 0x405960
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 0x406ab4
push 0x18
call fcn.00422aa0
mov esi, eax
test esi, esi
je 0x406934
lea ecx, [esi + 0x10]
mov dword [esi + 0xc], 0x43608c
call fcn.00415330
mov eax, dword [esi + 0xc]
mov dword [esi + 4], 0
mov byte [esi + 8], 0
mov byte [esi + 9], 0
mov dword [esi], 0x435fe0
mov ecx, dword [eax + 4]
mov dword [ecx + esi + 0xc], 0x435fdc
jmp 0x406936
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 0x50000000
push 0x4354f0
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 0x40698a
int3
push eax
call fcn.00415340
test edi, edi
je 0x406ab4
mov eax, dword [esp + 0x15c]
push eax
push edi
call fcn.0041a3c0
test eax, eax
jl 0x406ab4
mov ebp, dword [esp + 0x160]
push 5
push str.http:
push ebp
call fcn.0042b3a0
add esp, 0xc
test eax, eax
je 0x406a98
push 6
push str.https:
push ebp
call fcn.0042b3a0
add esp, 0xc
test eax, eax
je 0x406a98
push 4
push str.res:
push ebp
call fcn.0042b3a0
add esp, 0xc
test eax, eax
je 0x406a98
lea ecx, [esp + 0x3c]
push ecx
push 0x104
call dword [sym.imp.KERNEL32.dll_GetCurrentDirectoryA]
mov esi, eax
test esi, esi
je 0x406ab4
push 0x2f
lea edx, [esp + 0x40]
push 0x5c
push edx
call fcn.0040e960
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.00422aa0
mov esi, eax
test esi, esi
je 0x406ab4
mov al, byte [ebx]
cmp al, 0x2f
mov eax, 0x4354f0
je 0x406a6e
mov eax, 0x435fb4
push ebp
lea ecx, [esp + 0x40]
push eax
push ecx
push str.file:____s_s_s
push esi
call fcn.0042b1af
mov edx, dword [esp + 0x24]
add esp, 0x14
push esi
push edx
call fcn.0041ab70
push esi
mov edi, eax
call fcn.00422f50
jmp 0x406aa1
push ebp
push edi
call fcn.0041ab70
mov edi, eax
test edi, edi
jl 0x406ab4
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