Function at 0x1004f570
Capabilities:
Create directory

Disassembly:
push ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x1006a8b0
mov eax, dword fs:[0]
push eax
mov dword fs:[0], esp
sub esp, 0x48
push ebx
push esi
push edi
mov esi, ecx
mov dword [ebp - 0x2c], 0
mov dword [ebp - 0x28], 0
mov dword [ebp - 0x24], 0
mov dword [ebp - 4], 0
mov dword [ebp - 0x10], 0
call fcn.1002d050
push esi
lea edx, [ebp - 0x10]
mov dword [ebp - 0x1c], eax
lea ecx, [ebp - 0x2c]
call fcn.1004eed0
mov ebx, dword [ebp - 0x2c]
add esp, 4
mov edi, dword [ebp - 0x28]
test al, al
je 0x1004f720
add edi, 0xffffffe8
push ecx
mov ecx, edi
mov dword [ebp - 0x20], edi
call fcn.100185f0
xor eax, eax
mov dword [ebp - 0x28], edi
mov dword [ebp - 0x40], 7
mov dword [ebp - 0x44], 0
mov word [ebp - 0x54], ax
mov byte [ebp - 4], 1
lea edx, [ebp - 0x18]
mov eax, dword [ebp - 0x10]
push ecx
lea ecx, [ebp - 0x54]
mov dword [ebp - 0x18], ebx
lea eax, [eax + eax*2]
lea esi, [ebx + eax*8]
lea eax, [ebp - 0x14]
mov dword [ebp - 0x14], esi
push eax
call fcn.10050020
mov ecx, edi
mov eax, 0x2aaaaaab
sub ecx, ebx
add esp, 8
imul ecx
mov eax, dword [ebp - 0x10]
sar edx, 2
mov edi, edx
shr edi, 0x1f
add edi, edx
cmp eax, edi
je 0x1004f6ab
mov ebx, dword [ebp - 0x1c]
sub edi, eax
push 0xffffffffffffffff
push 0
push 0x1008da60
lea ecx, [ebp - 0x54]
call fcn.1000d680
push 0xffffffffffffffff
push 0
push esi
lea ecx, [ebp - 0x54]
call fcn.1000d680
lea edx, [ebp - 0x54]
lea ecx, [ebp - 0x3c]
call fcn.1004e550
test eax, eax
je 0x1004f6a0
cmp dword [ebp - 0x40], 8
lea eax, [ebp - 0x54]
cmovae eax, dword [ebp - 0x54]
push eax
call dword [sym.imp.api_ms_win_crt_filesystem_l1_1_0.dll__wmkdir]
add esp, 4
test eax, eax
je 0x1004f692
call dword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__errno]
mov eax, dword [eax]
push eax
lea edx, [ebp - 0x54]
mov ecx, ebx
call fcn.1004f350
add esp, 4
add esi, 0x18
sub edi, 1
jne 0x1004f644
mov ebx, dword [ebp - 0x2c]
mov eax, dword [ebp - 0x40]
cmp eax, 8
jb 0x1004f709
mov ecx, dword [ebp - 0x54]
inc eax
cmp eax, 0x7fffffff
jbe 0x1004f6c4
call dword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
add eax, eax
cmp eax, 0x1000
jb 0x1004f700
test byte [ebp - 0x54], 0x1f
je 0x1004f6d9
call dword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
mov eax, dword [ecx - 4]
cmp eax, ecx
jb 0x1004f6e6
call dword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
sub ecx, eax
cmp ecx, 4
jae 0x1004f6f3
call dword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
cmp ecx, 0x23
jbe 0x1004f6fe
call dword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
mov ecx, eax
push ecx
call fcn.10061b5c
add esp, 4
mov edi, dword [ebp - 0x20]
xor eax, eax
mov dword [ebp - 0x40], 7
mov dword [ebp - 0x44], 0
mov word [ebp - 0x54], ax
test ebx, ebx
je 0x1004f7aa
mov esi, ebx
cmp ebx, edi
je 0x1004f73f
nop
push ecx
mov ecx, esi
call fcn.100185f0
add esi, 0x18
cmp esi, edi
jne 0x1004f730
mov ecx, dword [ebp - 0x24]
mov eax, 0x2aaaaaab
sub ecx, ebx
imul ecx
sar edx, 2
mov eax, edx
shr eax, 0x1f
add eax, edx
cmp eax, 0xaaaaaaa
jbe 0x1004f762
call dword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
lea eax, [eax + eax*2]
shl eax, 3
cmp eax, 0x1000
jb 0x1004f7a1
test bl, 0x1f
je 0x1004f77a
call dword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
mov eax, dword [ebx - 4]
cmp eax, ebx
jb 0x1004f787
call dword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
sub ebx, eax
cmp ebx, 4
jae 0x1004f794
call dword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
cmp ebx, 0x23
jbe 0x1004f79f
call dword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
mov ebx, eax
push ebx
call fcn.10061b5c
add esp, 4
mov ecx, dword [ebp - 0xc]
pop edi
pop esi
pop ebx
mov dword fs:[0], ecx
mov esp, ebp
pop ebp
ret