Function at 0x1043a9f
Capabilities:
Get common file path

Disassembly:
mov edi, edi
push ebp
mov ebp, esp
push ecx
and dword [ebp - 4], 0
cmp dword [ebp + 8], 0
push ebx
push esi
mov ebx, 0x80004005
push edi
mov edi, ebx
je 0x1043e56
mov esi, dword [ebp + 0xc]
test esi, esi
je 0x1043e56
lea eax, [ebp - 4]
push eax
push 0x1006c78
push dword [ebp + 8]
call dword [sym.imp.msvcrt.dll_swscanf]
add esp, 0xc
test eax, eax
jne 0x1043aeb
mov eax, 0x80070057
jmp 0x1043e5b
mov eax, dword [ebp - 4]
cmp eax, 0xffffffff
je 0x1043ae1
cmp eax, 0x19
ja 0x1043d37
je 0x1043d26
cmp eax, 0x11
ja 0x1043c22
je 0x1043bdf
sub eax, 0
je 0x1043e52
dec eax
je 0x1043bcd
sub eax, 9
je 0x1043d26
dec eax
je 0x1043b94
dec eax
jne 0x1043e52
shr esi, 1
push esi
push dword [ebp + 8]
call dword [sym.imp.KERNEL32.dll_GetSystemDirectoryW]
test eax, eax
je 0x1043b48
xor edi, edi
jmp 0x1043b6d
call dword [sym.imp.KERNEL32.dll_GetLastError]
test eax, eax
jne 0x1043b57
push 0x57
pop eax
test eax, eax
jle 0x1043b63
and eax, 0xffff
or eax, 0x80070000
mov edi, eax
test edi, edi
jne 0x1043e52
push 0
push 4
call fcn.010328f3
test eax, eax
je 0x1043b81
push 0x100d29c
jmp 0x1043b86
push 0x100d288
push esi
push dword [ebp + 8]
call fcn.01028adc
jmp 0x1043e52
shr esi, 1
push esi
push dword [ebp + 8]
call dword [sym.imp.KERNEL32.dll_GetSystemDirectoryW]
jmp 0x1043bd9
xor edi, edi
jmp 0x1043e52
call dword [sym.imp.KERNEL32.dll_GetLastError]
test eax, eax
jne 0x1043bb8
push 0x57
pop eax
test eax, eax
jle 0x1043e50
and eax, 0xffff
or eax, 0x80070000
jmp 0x1043e50
push dword [ebp + 8]
shr esi, 1
push esi
call dword [sym.imp.KERNEL32.dll_GetCurrentDirectoryW]
test eax, eax
jne 0x1043ba2
jmp 0x1043ba9
shr esi, 1
push esi
push dword [ebp + 8]
call dword [sym.imp.KERNEL32.dll_GetSystemWindowsDirectoryW]
test eax, eax
je 0x1043bf3
xor edi, edi
jmp 0x1043c18
call dword [sym.imp.KERNEL32.dll_GetLastError]
test eax, eax
jne 0x1043c02
push 0x57
pop eax
test eax, eax
jle 0x1043c0e
and eax, 0xffff
or eax, 0x80070000
mov edi, eax
test edi, edi
jne 0x1043e52
push 0x100d27c
jmp 0x1043b86
sub eax, 0x12
je 0x1043ce3
dec eax
dec eax
je 0x1043ca0
dec eax
je 0x1043e52
dec eax
dec eax
je 0x1043e52
dec eax
jne 0x1043e52
shr esi, 1
push esi
push dword [ebp + 8]
call dword [sym.imp.KERNEL32.dll_GetSystemDirectoryW]
test eax, eax
je 0x1043c59
xor edi, edi
jmp 0x1043c7e
call dword [sym.imp.KERNEL32.dll_GetLastError]
test eax, eax
jne 0x1043c68
push 0x57
pop eax
test eax, eax
jle 0x1043c74
and eax, 0xffff
or eax, 0x80070000
mov edi, eax
test edi, edi
jne 0x1043e52
push 0x1006cbc
push dword [ebp + 8]
call dword [sym.imp.msvcrt.dll_wcsstr]
test eax, eax
pop ecx
pop ecx
je 0x1043e52
and word [eax + 4], 0
jmp 0x1043e52
shr esi, 1
push esi
push dword [ebp + 8]
call dword [sym.imp.KERNEL32.dll_GetSystemWindowsDirectoryW]
test eax, eax
je 0x1043cb4
xor edi, edi
jmp 0x1043cd9
call dword [sym.imp.KERNEL32.dll_GetLastError]
test eax, eax
jne 0x1043cc3
push 0x57
pop eax
test eax, eax
jle 0x1043ccf
and eax, 0xffff
or eax, 0x80070000
mov edi, eax
test edi, edi
jne 0x1043e52
push 0x100d26c
jmp 0x1043b86
shr esi, 1
push esi
push dword [ebp + 8]
call dword [sym.imp.KERNEL32.dll_GetSystemWindowsDirectoryW]
test eax, eax
je 0x1043cf7
xor edi, edi
jmp 0x1043d1c
call dword [sym.imp.KERNEL32.dll_GetLastError]
test eax, eax
jne 0x1043d06
push 0x57
pop eax
test eax, eax
jle 0x1043d12
and eax, 0xffff
or eax, 0x80070000
mov edi, eax
test edi, edi
jne 0x1043e52
push 0x100d260
jmp 0x1043b86
shr esi, 1
push esi
push dword [ebp + 8]
call dword [sym.imp.KERNEL32.dll_GetSystemWindowsDirectoryW]
jmp 0x1043bd9
cmp eax, 0x4019
ja 0x1043def
cmp eax, 0x4016
jae 0x1043e52
cmp eax, 0x1e
je 0x1043e52
cmp eax, 0x32
je 0x1043e52
cmp eax, 0x33
je 0x1043db0
cmp eax, 0x34
jne 0x1043e52
shr esi, 1
push esi
push dword [ebp + 8]
call dword [sym.imp.KERNEL32.dll_GetSystemWindowsDirectoryW]
test eax, eax
je 0x1043d81
xor edi, edi
jmp 0x1043da6
call dword [sym.imp.KERNEL32.dll_GetLastError]
test eax, eax
jne 0x1043d90
push 0x57
pop eax
test eax, eax
jle 0x1043d9c
and eax, 0xffff
or eax, 0x80070000
mov edi, eax
test edi, edi
jne 0x1043e52
push 0x100d240
jmp 0x1043b86
shr esi, 1
push esi
push dword [ebp + 8]
call dword [sym.imp.KERNEL32.dll_GetSystemWindowsDirectoryW]
test eax, eax
je 0x1043dc4
xor edi, edi
jmp 0x1043de5
call dword [sym.imp.KERNEL32.dll_GetLastError]
test eax, eax
jne 0x1043dd3
push 0x57
pop eax
test eax, eax
jle 0x1043ddf
and eax, 0xffff
or eax, 0x80070000
mov edi, eax
test edi, edi
jne 0x1043e52
push 0x100d230
jmp 0x1043b86
sub eax, 0x401f
je 0x1043e52
sub eax, 4
je 0x1043e45
sub eax, 3
je 0x1043e38
sub eax, 5
je 0x1043e2b
sub eax, 0x3825
jne 0x1043e52
push 0x104
push 1
push dword [ebp + 8]
call fcn.01034382
mov edi, eax
neg edi
sbb edi, edi
and edi, 0x7fffbffb
add edi, ebx
jmp 0x1043e52
shr esi, 1
push esi
push dword [ebp + 8]
call fcn.010437ec
jmp 0x1043e50
shr esi, 1
push esi
push dword [ebp + 8]
call fcn.01043562
jmp 0x1043e50
shr esi, 1
push esi
push dword [ebp + 8]
call fcn.0104394a
mov edi, eax
mov eax, edi
jmp 0x1043e5b
mov eax, 0x80004003
pop edi
pop esi
pop ebx
leave
ret 8