Function at 0x4f0fd0
Capabilities:
Get common file path
Print debug messages
Resolve function by parsing pe exports

Disassembly:
mov eax, 0x1894
call fcn.0050c720
mov eax, dword [0x596c60]
xor eax, esp
mov dword [esp + 0x188c], eax
mov eax, dword [esp + 0x189c]
push ebx
push ebp
push esi
push edi
mov dword [esp + 0x30], eax
mov ebx, ecx
mov ecx, dword [esp + 0x18a8]
xor eax, eax
push 0x20a
push eax
mov word [esp + 0x88], ax
lea eax, [esp + 0x8a]
push eax
mov dword [esp + 0x44], edx
mov dword [esp + 0x38], ebx
mov dword [esp + 0x40], ecx
mov dword [ecx], 0
call fcn.0050c510
mov esi, ebx
add esp, 0xc
lea ecx, [esi + 2]
mov ax, word [esi]
add esi, 2
test ax, ax
jne 0x4f1037
sub esi, ecx
sar esi, 1
cmp esi, 0x104
jb 0x4f1058
mov eax, 0x57
jmp 0x4f152e
mov byte [esp + 0x16], 0
mov dword [esp + 0x18], ebx
cmp esi, 2
jbe 0x4f1097
cmp word [ebx], 0x5c
je 0x4f1097
cmp word [ebx + 2], 0x3a
je 0x4f1097
push ecx
lea eax, [esp + 0x84]
mov edx, ebx
push eax
call fcn.004f0e50
add esp, 8
test al, al
je 0x4f109c
lea eax, [esp + 0x80]
mov dword [esp + 0x18], eax
jmp 0x4f109c
mov byte [esp + 0x16], 1
lea ebp, [esi + 0x106]
lea eax, [ebp*2]
push eax
call fcn.0050828d
mov edi, eax
mov dword [esp + 0x74], 0xaac56b
add esp, 4
mov dword [esp + 0x74], 0x11d0cd44
mov dword [esp + 0x78], 0xc000c28c
mov dword [esp + 0x7c], 0xee95c24f
mov byte [esp + 0x17], 1
test edi, edi
jne 0x4f10e7
mov eax, 8
jmp 0x4f152e
lea eax, [ebp*2]
push eax
push 0
push edi
call fcn.0050c510
mov eax, dword [esp + 0x24]
add esp, 0xc
sub ebp, 2
cmp eax, ebx
jne 0x4f11bc
cmp byte [esp + 0x16], 0
jne 0x4f11bc
push edi
push ebp
call dword [sym.imp.KERNEL32.dll_GetCurrentDirectoryW]
mov ebx, eax
test ebx, ebx
je 0x4f11b8
lea ecx, [ebx + esi]
cmp ecx, ebp
jbe 0x4f1189
push edi
call fcn.00507b54
lea eax, [ebx*2 + 0x20c]
push eax
call fcn.0050828d
mov edi, eax
add esp, 8
test edi, edi
je 0x4f10dd
lea eax, [ebx*2 + 0x20c]
mov ebp, ebx
push eax
push 0
push edi
call fcn.0050c510
add esp, 0xc
push edi
push ebx
call dword [sym.imp.KERNEL32.dll_GetCurrentDirectoryW]
mov ebx, eax
test ebx, ebx
je 0x4f1183
cmp ebx, ebp
jbe 0x4f1183
push edi
call fcn.00507b54
add esp, 4
mov eax, 3
jmp 0x4f152e
add ebp, 0x104
lea eax, [edi + ebx*2]
mov ecx, 0x5c
mov word [eax], cx
mov ecx, dword [esp + 0x2c]
sub eax, ecx
lea edx, [eax + 2]
lea ecx, [ecx]
movzx eax, word [ecx]
lea ecx, [ecx + 2]
mov word [edx + ecx - 2], ax
test ax, ax
jne 0x4f11a0
mov eax, edi
mov dword [esp + 0x18], eax
jmp 0x4f11bc
mov eax, dword [esp + 0x18]
xor ecx, ecx
mov dword [esp + 0x20], ecx
push 0x30
mov dword [esp + 0x24], eax
lea eax, [esp + 0x44]
push ecx
mov dword [esp + 0x24], ecx
mov dword [esp + 0x2c], ecx
mov dword [esp + 0x30], ecx
push eax
mov dword [esp + 0x28], 0x10
mov dword [esp + 0x30], ecx
mov dword [esp + 0x34], ecx
call fcn.0050c510
add esp, 0xc
mov dword [esp + 0x40], 0x30
lea eax, [esp + 0x1c]
mov dword [esp + 0x44], 0
mov dword [esp + 0x58], eax
lea eax, [esp + 0x40]
mov dword [esp + 0x48], 0
push eax
lea eax, [esp + 0x74]
mov dword [esp + 0x50], 2
push eax
push 0xffffffffffffffff
mov dword [esp + 0x5c], 0
mov dword [esp + 0x68], 1
mov dword [esp + 0x6c], 0
mov dword [esp + 0x70], 0
mov dword [esp + 0x78], 0
mov dword [esp + 0x60], 1
mov dword [esp + 0x74], 0x1010
call dword [sym.imp.WINTRUST.dll_WinVerifyTrust]
mov ebx, eax
cmp ebx, 2
je 0x4f1277
cmp ebx, 0x80092003
jne 0x4f13bf
cmp byte [esp + 0x16], 0
jne 0x4f13bf
push str.NotComDllGetInterface:_DLL_not_found_in_install_location__looking_in_current_directory
call dword [sym.imp.KERNEL32.dll_OutputDebugStringW]
lea eax, [ebp*2]
push eax
push 0
push edi
call fcn.0050c510
add esp, 0xc
push ebp
push edi
push dword [esp + 0x38]
call dword [sym.imp.KERNEL32.dll_GetModuleFileNameW]
mov dword [esp + 0x3c], eax
test eax, eax
je 0x4f13bf
add eax, esi
cmp eax, ebp
jb 0x4f132a
push edi
lea esi, [eax*2 + 0x20c]
call fcn.00507b54
push esi
mov dword [esp + 0x28], 0
call fcn.0050828d
mov edi, eax
add esp, 8
test edi, edi
jne 0x4f12f0
mov esi, dword [sym.imp.WINTRUST.dll_WinVerifyTrust]
lea ebx, [eax + 8]
jmp 0x4f13fd
push esi
push 0
push edi
call fcn.0050c510
mov esi, dword [esp + 0x48]
add esp, 0xc
add esi, 0x104
push esi
push edi
push dword [esp + 0x38]
call dword [sym.imp.KERNEL32.dll_GetModuleFileNameW]
test eax, eax
je 0x4f132a
cmp eax, esi
jb 0x4f132a
mov esi, dword [sym.imp.WINTRUST.dll_WinVerifyTrust]
mov ebx, 8
jmp 0x4f13fd
push 0x5c
push edi
call fcn.005083fc
mov edx, eax
add esp, 8
test edx, edx
je 0x4f1350
mov ecx, dword [esp + 0x2c]
sub edx, ecx
movzx eax, word [ecx]
lea ecx, [ecx + 2]
mov word [edx + ecx], ax
test ax, ax
jne 0x4f1341
cmp dword [esp + 0x60], 0
mov esi, dword [sym.imp.WINTRUST.dll_WinVerifyTrust]
mov dword [esp + 0x18], edi
je 0x4f1387
lea eax, [esp + 0x40]
mov dword [esp + 0x5c], 2
push eax
lea eax, [esp + 0x74]
push eax
push 0
call esi
mov dword [esp + 0x60], 0
mov dword [esp + 0x5c], 1
xor eax, eax
mov dword [esp + 0x24], eax
mov dword [esp + 0x28], eax
mov dword [esp + 0x1c], eax
mov dword [esp + 0x20], eax
mov dword [esp + 0x24], eax
mov dword [esp + 0x28], eax
lea eax, [esp + 0x40]
push eax
lea eax, [esp + 0x74]
mov dword [esp + 0x20], 0x10
push eax
push 0xffffffffffffffff
mov dword [esp + 0x2c], edi
call esi
mov ebx, eax
jmp 0x4f13c5
mov esi, dword [sym.imp.WINTRUST.dll_WinVerifyTrust]
cmp ebx, 0x800b010e
jg 0x4f13f5
je 0x4f148e
cmp ebx, 0x80092026
je 0x4f148e
cmp ebx, 0x800b0101
je 0x4f148e
test ebx, ebx
je 0x4f1489
jmp 0x4f13fd
test ebx, ebx
je 0x4f148e
xor eax, eax
push 0x7fe
push eax
mov word [esp + 0x298], ax
lea eax, [esp + 0x29a]
push eax
call fcn.0050c510
xor eax, eax
push 0xe06
push eax
mov word [esp + 0xaa4], ax
lea eax, [esp + 0xaa6]
push eax
call fcn.0050c510
add esp, 0x18
lea eax, [esp + 0x290]
push 0x400
push eax
push 0
call dword [sym.imp.KERNEL32.dll_GetModuleFileNameW]
mov eax, dword [esp + 0x20]
test eax, eax
jne 0x4f145b
mov eax, dword [esp + 0x2c]
push ebx
push eax
lea eax, [esp + 0x298]
push eax
lea eax, [esp + 0xa9c]
push str.NotComDllGetInterface:__s_loading__s__WinVerifyTrust_failed_with__08x_n
push eax
call dword [sym.imp.USER32.dll_wsprintfW]
add esp, 0x14
lea eax, [esp + 0xa90]
push eax
call dword [sym.imp.KERNEL32.dll_OutputDebugStringW]
mov byte [esp + 0x17], 0
cmp dword [esp + 0x60], 0
je 0x4f14ab
lea eax, [esp + 0x40]
mov dword [esp + 0x5c], 2
push eax
lea eax, [esp + 0x74]
push eax
push 0
call esi
cmp byte [esp + 0x17], 0
jne 0x4f14c3
test edi, edi
je 0x4f14bf
push edi
call fcn.00507b54
add esp, 4
mov eax, ebx
jmp 0x4f152e
push 8
push 0
push dword [esp + 0x20]
call dword [sym.imp.KERNEL32.dll_LoadLibraryExW]
mov ebx, eax
test ebx, ebx
je 0x4f1510
push str.NotComDllGetInterface
push ebx
call dword [sym.imp.KERNEL32.dll_GetProcAddress]
test eax, eax
je 0x4f14ff
push dword [esp + 0x34]
push dword [esp + 0x3c]
call eax
add esp, 8
mov esi, eax
push ebx
call dword [sym.imp.KERNEL32.dll_FreeLibrary]
jmp 0x4f151f
call dword [sym.imp.KERNEL32.dll_GetLastError]
push ebx
mov esi, eax
call dword [sym.imp.KERNEL32.dll_FreeLibrary]
jmp 0x4f151f
call dword [sym.imp.KERNEL32.dll_GetLastError]
mov esi, eax
test esi, esi
jne 0x4f151f
lea esi, [eax + 2]
test edi, edi
je 0x4f152c
push edi
call fcn.00507b54
add esp, 4
mov eax, esi
mov ecx, dword [esp + 0x189c]
pop edi
pop esi
pop ebp
pop ebx
xor ecx, esp
call fcn.005072fd
add esp, 0x1894
ret