Function at 0x40783c
Capabilities:
Get common file path

Disassembly:
push 0x238
push 0x40eed0
call fcn.0040ee00
mov dword [ebp - 0x240], edx
mov edi, ecx
mov esi, dword [ebp + 0x14]
mov dword [ebp - 0x234], esi
push 0x208
xor ebx, ebx
push ebx
lea eax, [ebp - 0x224]
push eax
call sub.msvcrt.dll_memset
add esp, 0xc
mov eax, ebx
mov dword [ebp - 0x230], eax
mov dword [ebp - 0x228], ebx
mov dword [ebp - 0x22c], ebx
mov eax, dword [ebp + 8]
mov dword [eax], ebx
mov dword [eax + 8], ebx
mov eax, dword [ebp + 0xc]
mov dword [0x4128a4], eax
mov eax, dword [ebp + 0x10]
mov dword [0x4128d8], eax
mov dword [0x4128c0], ebx
mov dword [ebp - 4], ebx
test esi, esi
je 0x407a09
push ebx
push 0x40f024
push 0x40122c
push ebx
push ebx
push edi
call dword [sym.imp.WLDAP32.dll_Ordinal_190]
lea ecx, [ebp - 0x228]
push ecx
mov edx, eax
mov ecx, edi
call fcn.0040e19d
add esp, 0x1c
test eax, eax
je 0x4078e8
mov esi, ebx
mov dword [ebp - 0x244], esi
jmp 0x407a01
push dword [ebp - 0x228]
push edi
call dword [sym.imp.WLDAP32.dll_Ordinal_26]
pop ecx
mov ebx, eax
pop ecx
test ebx, ebx
je 0x4079d9
lea eax, [ebp - 0x22c]
push eax
push ebx
push edi
call dword [sym.imp.WLDAP32.dll_Ordinal_127]
mov esi, eax
add esp, 0xc
test esi, esi
je 0x4079c5
push esi
push 0x4019d8
call dword [sym.imp.msvcrt.dll__wcsicmp]
pop ecx
pop ecx
test eax, eax
jne 0x4079a3
and dword [ebp - 0x238], eax
push esi
push ebx
push edi
call dword [sym.imp.WLDAP32.dll_Ordinal_140]
add esp, 0xc
mov dword [ebp - 0x23c], eax
mov ecx, dword [ebp - 0x238]
mov edx, dword [eax + ecx*4]
test edx, edx
je 0x40799b
mov esi, 0x4015e8
mov ax, word [edx]
cmp ax, word [esi]
jne 0x40797f
test ax, ax
je 0x40797b
mov ax, word [edx + 2]
cmp ax, word [esi + 2]
jne 0x40797f
add edx, 4
add esi, 4
test ax, ax
jne 0x407959
xor eax, eax
jmp 0x407984
sbb eax, eax
or eax, 1
test eax, eax
jne 0x4079b6
inc eax
mov dword [ebp - 0x230], eax
mov dword [ebp - 0x244], eax
mov eax, dword [ebp - 0x23c]
push eax
call dword [sym.imp.WLDAP32.dll_Ordinal_224]
pop ecx
push dword [ebp - 0x22c]
push ebx
push edi
call dword [sym.imp.WLDAP32.dll_Ordinal_167]
jmp 0x407910
inc ecx
mov dword [ebp - 0x238], ecx
mov eax, dword [ebp - 0x23c]
jmp 0x40794d
and dword [ebp - 0x22c], 0
push ebx
push edi
call dword [sym.imp.WLDAP32.dll_Ordinal_27]
jmp 0x4078f5
cmp dword [ebp - 0x228], 0
je 0x4079f9
push dword [ebp - 0x228]
call dword [sym.imp.WLDAP32.dll_Ordinal_41]
pop ecx
xor ebx, ebx
mov dword [ebp - 0x228], ebx
jmp 0x4079fb
xor ebx, ebx
mov esi, dword [ebp - 0x230]
mov eax, dword [ebp - 0x234]
mov dword [eax], esi
mov dword [0x413560], ebx
mov ebx, 0x4014e0
cmp byte [0x412664], 0
jne 0x407a91
push ebx
push dword [ebp - 0x240]
call dword [sym.imp.msvcrt.dll__wfopen]
pop ecx
pop ecx
mov edi, eax
mov esi, 0x300
test edi, edi
jne 0x407a41
push eax
push eax
push eax
push esi
call dword [sym.imp.api_ms_win_core_errorhandling_l1_1_0.dll_RaiseException]
push edi
call dword [sym.imp.msvcrt.dll_fgetwc]
pop ecx
movzx eax, ax
mov dword [ebp - 0x234], eax
mov ecx, 0xffff
cmp ax, cx
jne 0x407a76
push edi
call dword [sym.imp.msvcrt.dll_fclose]
pop ecx
xor eax, eax
push eax
push eax
push eax
push esi
call dword [sym.imp.api_ms_win_core_errorhandling_l1_1_0.dll_RaiseException]
mov ecx, 0xfeff
cmp ax, cx
jne 0x407a87
mov byte [0x412664], 1
push edi
call dword [sym.imp.msvcrt.dll_fclose]
pop ecx
jmp 0x407a96
mov esi, 0x300
mov dword [0x4128e4], ebx
push ebx
mov ebx, dword [ebp - 0x240]
push ebx
call dword [sym.imp.msvcrt.dll__wfopen]
pop ecx
pop ecx
mov dword [0x4128e0], eax
xor edi, edi
test eax, eax
jne 0x407ac1
push edi
push edi
push edi
push esi
call dword [sym.imp.api_ms_win_core_errorhandling_l1_1_0.dll_RaiseException]
lea edx, [ebp - 0x224]
call fcn.0040e212
test eax, eax
jne 0x407ae0
call dword [sym.imp.KERNEL32.dll_GetLastError]
push edi
push edi
push edi
push esi
call dword [sym.imp.api_ms_win_core_errorhandling_l1_1_0.dll_RaiseException]
push 0x412670
push edi
push 0x4012ac
lea eax, [ebp - 0x224]
push eax
call dword [sym.imp.KERNEL32.dll_GetTempFileNameW]
test eax, eax
jne 0x407b0c
call dword [sym.imp.KERNEL32.dll_GetLastError]
push edi
push edi
push edi
push esi
call dword [sym.imp.api_ms_win_core_errorhandling_l1_1_0.dll_RaiseException]
push 1
call fcn.0040edd9
pop ecx
mov dword [0x412938], eax
mov eax, dword [0x4128e0]
mov dword [0x4128e8], eax
mov ecx, ebx
call fcn.0040b4fa
mov dword [ebp - 4], 0xfffffffe
mov esi, dword [ebp + 8]
jmp 0x407b66
mov eax, esi
mov ecx, dword [ebp - 0x10]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
pop ebx
leave
ret 0x10