Function at 0x405750
Capabilities:
Create directory
Get common file path

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x27c
mov eax, dword [0x421280]
xor eax, ebp
mov dword [ebp - 4], eax
mov eax, dword [ebp + 8]
push ebx
push esi
mov dword [ebp - 0x278], eax
mov eax, dword [ebp + 0xc]
push edi
mov dword [ebp - 0x27c], eax
mov eax, dword [ebp + 0x10]
push 0x63
mov dword [ebp - 0x274], eax
lea eax, [ebp - 0x67]
push 0
push eax
mov byte [ebp - 0x68], 0
call fcn.00411080
mov ebx, dword [sym.imp.KERNEL32.dll_WideCharToMultiByte]
add esp, 0xc
push 0
push 0
push 0
push 0
push 0xffffffffffffffff
push str.wpnfMULNMCFvMdKNGu
push 0
push 0
call ebx
mov esi, eax
test esi, esi
jle 0x405818
lea eax, [esi + 1]
push eax
call fcn.0040d4c1
mov edi, eax
add esp, 4
test edi, edi
je 0x405818
lea eax, [esi + 1]
push eax
push 0
push edi
call fcn.00411080
add esp, 0xc
push 0
push 0
push esi
push edi
push 0xffffffffffffffff
push str.wpnfMULNMCFvMdKNGu
push 0
push 0
call ebx
mov ecx, edi
call fcn.004056f0
mov esi, eax
test esi, esi
je 0x405802
push esi
lea eax, [ebp - 0x68]
push eax
call dword [sym.imp.KERNEL32.dll_lstrcpyA]
push edi
call fcn.0040d553
add esp, 4
test esi, esi
je 0x405818
push esi
call fcn.0040d553
add esp, 4
push 0
push 0
push 0
push 0
push 0xffffffffffffffff
push str.WPNOML_fFNN
push 0
push 0
call ebx
mov edi, eax
test edi, edi
jle 0x405869
lea eax, [edi + 1]
push eax
call fcn.0040d4c1
mov esi, eax
add esp, 4
test esi, esi
je 0x405869
lea eax, [edi + 1]
push eax
push 0
push esi
call fcn.00411080
add esp, 0xc
push 0
push 0
push edi
push esi
push 0xffffffffffffffff
push str.WPNOML_fFNN
push 0
push 0
call ebx
jmp 0x40586b
xor esi, esi
xor ebx, ebx
test esi, esi
je 0x40589d
mov ecx, esi
call fcn.004056f0
mov edi, eax
test edi, edi
je 0x405887
mov ecx, edi
call fcn.00406a00
mov ebx, eax
push esi
call fcn.0040d553
add esp, 4
test edi, edi
je 0x40589d
push edi
call fcn.0040d553
add esp, 4
xor eax, eax
push 0x206
push eax
mov word [ebp - 0x270], ax
lea eax, [ebp - 0x26e]
push eax
call fcn.00411080
add esp, 0xc
lea eax, [ebp - 0x270]
push eax
push 0x104
call dword [sym.imp.KERNEL32.dll_GetTempPathW]
push 2
push 0x104
call fcn.0040d5e0
mov edi, eax
add esp, 8
test edi, edi
je 0x405986
push 0x208
push 0
push edi
call fcn.00411080
mov esi, dword [sym.imp.KERNEL32.dll_lstrcatW]
lea eax, [ebp - 0x270]
add esp, 0xc
push eax
push edi
call esi
push 0x41f090
push edi
call esi
push 0
push edi
call dword [sym.imp.KERNEL32.dll_CreateDirectoryW]
push dword [ebp - 0x27c]
push edi
call esi
push ebx
call dword [sym.imp.KERNEL32.dll_LoadLibraryW]
mov esi, eax
test esi, esi
je 0x40597d
lea eax, [ebp - 0x68]
push eax
push esi
call dword [sym.imp.KERNEL32.dll_GetProcAddress]
test eax, eax
je 0x405976
push 0
push 0
push edi
push dword [ebp - 0x278]
push 0
call eax
test eax, eax
jne 0x405976
mov eax, dword [ebp - 0x274]
test eax, eax
je 0x405961
push edi
push eax
call dword [sym.imp.KERNEL32.dll_lstrcpyW]
pop edi
pop esi
mov al, 1
pop ebx
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.0040d13e
mov esp, ebp
pop ebp
ret 0xc
push esi
call dword [sym.imp.KERNEL32.dll_FreeLibrary]
push edi
call fcn.0040d553
add esp, 4
mov ecx, dword [ebp - 4]
xor al, al
pop edi
pop esi
xor ecx, ebp
pop ebx
call fcn.0040d13e
mov esp, ebp
pop ebp
ret 0xc