Function at 0x4158e0
Capabilities:
Create directory

Disassembly:
push ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x5c1cc4
mov eax, dword fs:[0]
push eax
sub esp, 0x180
mov eax, dword [0x629af0]
xor eax, ebp
mov dword [ebp - 0x3c], eax
push eax
lea eax, [ebp - 0xc]
mov dword fs:[0], eax
mov dword [ebp - 0x17c], ecx
mov dword [ebp - 0x18], 0
lea ecx, [ebp - 0x58]
call fcn.00409830
mov dword [ebp - 4], 0
lea eax, [ebp - 0x58]
push eax
mov ecx, 0x632b90
call fcn.0041b320
mov dword [ebp - 0x18], eax
lea ecx, [ebp - 0x74]
call fcn.00416850
mov byte [ebp - 4], 1
lea ecx, [ebp - 0x74]
call fcn.00416990
call fcn.00402c20
mov ecx, eax
call fcn.00402ca0
push eax
lea ecx, [ebp - 0x38]
call fcn.00405970
mov byte [ebp - 4], 2
lea ecx, [ebp - 0x14]
push ecx
lea ecx, [ebp - 0x38]
call fcn.00409c80
jmp 0x41597b
lea ecx, [ebp - 0x14]
call fcn.0040aa00
lea edx, [ebp - 0xc0]
push edx
lea ecx, [ebp - 0x38]
call fcn.00409ce0
push eax
lea ecx, [ebp - 0x14]
call fcn.0040aa20
movzx eax, al
test eax, eax
je 0x415a9d
lea ecx, [ebp - 0x14]
call fcn.0040a9e0
push eax
lea ecx, [ebp - 0x9c]
call fcn.004098a0
mov byte [ebp - 4], 3
mov ecx, dword [0x6024f4]
push ecx
push 0x6012e8
lea ecx, [ebp - 0x9c]
call fcn.00416690
mov dword [ebp - 0x80], eax
mov edx, dword [ebp - 0x80]
cmp edx, dword [0x6024f4]
je 0x415a89
mov eax, dword [ebp - 0x80]
push eax
push 0
lea ecx, [ebp - 0xdc]
push ecx
lea ecx, [ebp - 0x9c]
call fcn.004166c0
mov dword [ebp - 0x180], eax
mov edx, dword [ebp - 0x180]
mov dword [ebp - 0x184], edx
mov byte [ebp - 4], 4
mov eax, dword [ebp - 0x184]
push eax
lea ecx, [ebp - 0x9c]
call fcn.00409900
mov byte [ebp - 4], 3
lea ecx, [ebp - 0xdc]
call fcn.004098e0
lea ecx, [ebp - 0x9c]
push ecx
lea edx, [ebp - 0x58]
push edx
lea eax, [ebp - 0xb8]
push eax
call fcn.0040ed50
add esp, 0xc
mov byte [ebp - 4], 5
lea ecx, [ebp - 0xb8]
push ecx
lea ecx, [ebp - 0x74]
call fcn.00416950
mov edx, dword [0x6024f4]
push edx
push 0x6012ec
lea ecx, [ebp - 0x9c]
call fcn.00416690
mov dword [ebp - 0x80], eax
mov byte [ebp - 4], 3
lea ecx, [ebp - 0xb8]
call fcn.004098e0
jmp 0x4159d0
mov byte [ebp - 4], 2
lea ecx, [ebp - 0x9c]
call fcn.004098e0
jmp 0x415973
lea ecx, [ebp - 0x74]
call fcn.00416b00
lea ecx, [ebp - 0x74]
call fcn.00416a30
lea eax, [ebp - 0x7c]
push eax
lea ecx, [ebp - 0x74]
call fcn.004168f0
jmp 0x415ac3
lea ecx, [ebp - 0x7c]
call fcn.00416e20
lea ecx, [ebp - 0xe4]
push ecx
lea ecx, [ebp - 0x74]
call fcn.00416920
push eax
lea ecx, [ebp - 0x7c]
call fcn.00416e40
movzx edx, al
test edx, edx
je 0x415be5
push 0
lea ecx, [ebp - 0x7c]
call fcn.00416e00
mov ecx, eax
call fcn.004099f0
push eax
call fcn.0057a949
add esp, 8
test eax, eax
je 0x415be0
push 0
lea ecx, [ebp - 0x7c]
call fcn.00416e00
mov ecx, eax
call fcn.004099f0
push eax
call dword [sym.imp.KERNEL32.dll_CreateDirectoryW]
test eax, eax
jne 0x415be0
lea eax, [ebp - 0x170]
push eax
mov ecx, 0x632cd8
call fcn.0042af50
mov dword [ebp - 0x188], eax
mov ecx, dword [ebp - 0x188]
mov dword [ebp - 0x18c], ecx
mov byte [ebp - 4], 6
push str.create_path_failure__n
push 0x6012f0
mov ecx, dword [ebp - 0x18c]
call fcn.0040eb00
mov ecx, eax
call fcn.0040ec50
mov byte [ebp - 4], 2
lea ecx, [ebp - 0x170]
call fcn.0042ad30
mov edx, dword [ebp - 0x17c]
cmp dword [edx + 0x34], 0
je 0x415ba7
push 0x60132c
call dword [sym.imp.KERNEL32.dll_GetLastError]
push eax
push 0x4e0
mov eax, dword [ebp - 0x17c]
mov ecx, dword [eax + 0x34]
push ecx
call dword [sym.imp.USER32.dll_SendMessageW]
mov dword [ebp - 0x174], 0x16
mov byte [ebp - 4], 1
lea ecx, [ebp - 0x38]
call fcn.004055e0
mov byte [ebp - 4], 0
lea ecx, [ebp - 0x74]
call fcn.004168d0
mov dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0x58]
call fcn.004098e0
mov eax, dword [ebp - 0x174]
jmp 0x415c1b
jmp 0x415abb
mov edx, dword [ebp - 0x18]
mov dword [ebp - 0x178], edx
mov byte [ebp - 4], 1
lea ecx, [ebp - 0x38]
call fcn.004055e0
mov byte [ebp - 4], 0
lea ecx, [ebp - 0x74]
call fcn.004168d0
mov dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0x58]
call fcn.004098e0
mov eax, dword [ebp - 0x178]
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop ecx
mov ecx, dword [ebp - 0x3c]
xor ecx, ebp
call fcn.0057976c
mov esp, ebp
pop ebp
ret