Function at 0x40f760
Capabilities:
Create directory

Disassembly:
mov dword [rsp + 0x18], r8d
mov dword [rsp + 0x10], edx
mov qword [rsp + 8], rcx
sub rsp, 0x188
mov rax, qword [0x0042d620]
xor rax, rsp
mov qword [rsp + 0x178], rax
mov dword [0x004303cc], 0
mov dword [rsp + 0x170], 0
mov qword [rsp + 0x48], 0
mov r8d, 0x103
mov rdx, qword [rsp + 0x190]
lea rcx, [rsp + 0x60]
call fcn.00416d70
cmp dword [rsp + 0x198], 0
jne 0x40f879
mov qword [rsp + 0x30], 0
mov dword [rsp + 0x28], 0x8000080
mov dword [rsp + 0x20], 2
xor r9d, r9d
xor r8d, r8d
mov edx, 0xc0000000
mov rcx, qword [rsp + 0x190]
call qword [sym.imp.KERNEL32.dll_CreateFileA]
mov qword [rsp + 0x48], rax
cmp qword [rsp + 0x48], 0xffffffffffffffff
jne 0x40f83b
call qword [sym.imp.KERNEL32.dll_GetLastError]
cmp eax, 5
jne 0x40f83b
mov r9, qword [0x0042e9e8]
mov r8d, 0x8000080
lea rdx, [0x00426f04]
mov rcx, qword [rsp + 0x190]
call fcn.00413170
mov qword [rsp + 0x48], rax
cmp qword [rsp + 0x48], 0xffffffffffffffff
jne 0x40f859
call qword [sym.imp.KERNEL32.dll_GetLastError]
mov ecx, eax
call fcn.0040ef00
mov dword [rsp + 0x170], eax
jmp 0x40f877
mov dword [rsp + 0x170], 0
xor r9d, r9d
xor r8d, r8d
xor edx, edx
mov rcx, qword [rsp + 0x48]
call qword [sym.imp.KERNEL32.dll_SetFilePointer]
jmp 0x40f8ac
mov rcx, qword [rsp + 0x190]
call fcn.0040f320
test eax, eax
jne 0x40f897
mov dword [rsp + 0x170], 2
jmp 0x40f8a2
mov dword [rsp + 0x170], 0
lea rcx, [rsp + 0x60]
call fcn.0040f030
cmp dword [rsp + 0x170], 2
jne 0x40faf8
mov edx, 0x5c
lea rcx, [rsp + 0x60]
call fcn.00416650
mov qword [rsp + 0x50], rax
cmp qword [rsp + 0x50], 0
je 0x40f8e4
mov rax, qword [rsp + 0x50]
add rax, 1
mov qword [rsp + 0x50], rax
movsx eax, byte [rsp + 0x60]
cmp eax, 0x5c
jne 0x40f946
movsx eax, byte [rsp + 0x61]
cmp eax, 0x5c
jne 0x40f946
lea rax, [rsp + 0x62]
mov edx, 0x5c
mov rcx, rax
call fcn.004162f0
mov qword [rsp + 0x40], rax
cmp qword [rsp + 0x40], 0
je 0x40f944
mov rax, qword [rsp + 0x40]
add rax, 1
mov edx, 0x5c
mov rcx, rax
call fcn.004162f0
mov qword [rsp + 0x40], rax
cmp qword [rsp + 0x40], 0
jne 0x40f944
lea rax, [rsp + 0x60]
mov qword [rsp + 0x40], rax
jmp 0x40f96c
mov edx, 0x5c
lea rcx, [rsp + 0x60]
call fcn.004162f0
mov qword [rsp + 0x40], rax
cmp qword [rsp + 0x40], 0
jne 0x40f96c
lea rax, [rsp + 0x60]
mov qword [rsp + 0x40], rax
mov rax, qword [rsp + 0x40]
add rax, 1
mov edx, 0x5c
mov rcx, rax
call fcn.004162f0
mov qword [rsp + 0x40], rax
cmp qword [rsp + 0x40], 0
je 0x40fa59
mov rax, qword [rsp + 0x50]
cmp qword [rsp + 0x40], rax
je 0x40fa59
mov rax, qword [rsp + 0x40]
mov byte [rax], 0
lea rcx, [rsp + 0x60]
call fcn.0040f320
test eax, eax
jne 0x40fa26
xor edx, edx
lea rcx, [rsp + 0x60]
call qword [sym.imp.KERNEL32.dll_CreateDirectoryA]
test eax, eax
je 0x40f9d7
mov dword [rsp + 0x170], 0
jmp 0x40fa24
call qword [sym.imp.KERNEL32.dll_GetLastError]
mov dword [rsp + 0x170], eax
cmp dword [rsp + 0x170], 5
jne 0x40fa10
mov rdx, qword [0x0042e9e8]
lea rcx, [rsp + 0x60]
call fcn.00412f60
test eax, eax
je 0x40fa10
mov dword [rsp + 0x170], 0
jmp 0x40fa24
call qword [sym.imp.KERNEL32.dll_GetLastError]
mov ecx, eax
call fcn.0040ef00
mov dword [rsp + 0x170], eax
jmp 0x40fa31
mov dword [rsp + 0x170], 0
mov rax, qword [rsp + 0x40]
mov byte [rax], 0x5c
mov rax, qword [rsp + 0x40]
add rax, 1
mov edx, 0x5c
mov rcx, rax
call fcn.004162f0
mov qword [rsp + 0x40], rax
jmp 0x40f987
cmp dword [rsp + 0x198], 0
jne 0x40faf8
mov qword [rsp + 0x30], 0
mov dword [rsp + 0x28], 0x8000080
mov dword [rsp + 0x20], 2
xor r9d, r9d
xor r8d, r8d
mov edx, 0xc0000000
mov rcx, qword [rsp + 0x190]
call qword [sym.imp.KERNEL32.dll_CreateFileA]
mov qword [rsp + 0x48], rax
call qword [sym.imp.KERNEL32.dll_GetLastError]
cmp eax, 5
jne 0x40facf
mov r9, qword [0x0042e9e8]
mov r8d, 0x8000080
lea rdx, [0x00426f04]
mov rcx, qword [rsp + 0x190]
call fcn.00413170
mov qword [rsp + 0x48], rax
cmp qword [rsp + 0x48], 0xffffffffffffffff
jne 0x40faed
call qword [sym.imp.KERNEL32.dll_GetLastError]
mov ecx, eax
call fcn.0040ef00
mov dword [rsp + 0x170], eax
jmp 0x40faf8
mov dword [rsp + 0x170], 0
mov eax, dword [rsp + 0x170]
mov dword [0x004303cc], eax
mov rax, qword [rsp + 0x48]
mov rcx, qword [rsp + 0x178]
xor rcx, rsp
call fcn.00416330
add rsp, 0x188
ret