Function at 0x43e6c948
Capabilities:
Create directory

Disassembly:
push ebp
mov ebp, esp
mov ecx, 7
push 0
push 0
dec ecx
jne 0x43e6c950
push ecx
push ebx
mov ebx, 0x43e729e4
xor eax, eax
push ebp
push 0x43e6cd31
push dword fs:[eax]
mov dword fs:[eax], esp
call fcn.43e52ae0
mov byte [0x43e729b4], 0
call fcn.43e6c6f4
mov byte [0x43e729b0], al
lea eax, [ebp - 4]
call fcn.43e68f8c
mov eax, dword [ebp - 4]
call fcn.43e537c0
test eax, eax
sete byte [0x43e729b1]
lea edx, [ebp - 8]
mov eax, 0x43e6cd48
call fcn.43e68f10
mov eax, dword [ebp - 8]
call fcn.43e68d54
mov byte [0x43e711c8], al
push 0x43e6cd54
mov eax, dword [0x43e72650]
push eax
call fcn.43e6a1a8
test eax, eax
setne byte [0x43e729b2]
mov edx, 0x43e6cd68
mov eax, 0x80000002
call fcn.43e672d4
mov byte [0x43e729b3], al
lea edx, [ebp - 0xc]
mov eax, 0x43e6cdbc
call fcn.43e68f10
mov edx, dword [ebp - 0xc]
mov eax, dword [0x43e712f4]
call fcn.43e53690
mov eax, dword [0x43e712ec]
mov byte [eax], 1
mov eax, dword [0x43e712f4]
mov eax, dword [eax]
call fcn.43e68870
cmp eax, 0x100000
jbe 0x43e6ca23
mov eax, dword [0x43e712f4]
mov eax, dword [eax]
call fcn.43e6873c
lea edx, [ebp - 0x10]
mov eax, 0x43e6cdd4
call fcn.43e6837c
mov edx, dword [ebp - 0x10]
mov eax, 0x43e729d8
mov ecx, 0x43e6cde8
call fcn.43e5380c
lea eax, [ebp - 0x14]
call fcn.43e683fc
mov edx, dword [ebp - 0x14]
mov eax, 0x43e729d4
mov ecx, 0x43e6cdf4
call fcn.43e5380c
cmp byte [0x43e729b0], 0
jne 0x43e6ca95
push 0
push 0x43e6ce00
call sub.kernel32.dll_CreateDirectoryA
mov eax, 0x43e729d4
mov edx, 0x43e6ce10
call fcn.43e53690
mov eax, dword [0x43e712f4]
mov ecx, 0x43e6ce2c
mov edx, dword [0x43e729d4]
call fcn.43e5380c
mov eax, dword [0x43e729d4]
call fcn.43e69370
test al, al
jne 0x43e6cab5
push 0
mov eax, dword [0x43e729d4]
call fcn.43e539c0
push eax
call sub.kernel32.dll_CreateDirectoryA
lea edx, [ebp - 0x18]
xor eax, eax
call fcn.43e52a7c
mov eax, dword [ebp - 0x18]
call fcn.43e6b880
mov dword [ebx], eax
mov eax, 0x43e6ce40
call fcn.43e6b880
mov dword [0x43e729e8], eax
mov eax, 0x43e6ce54
call fcn.43e6b880
mov dword [0x43e729ec], eax
cmp dword [ebx], 0
je 0x43e6cd16
push 0x43e6ce60
mov eax, dword [ebx]
add eax, 0x20c
push eax
call sub.kernel32.dll_lstrcpyA
mov eax, dword [ebx]
mov edx, dword [0x43e72650]
mov dword [eax + 0x200], edx
call sub.kernel32.dll_GetTickCount_1
mov edx, dword [ebx]
mov dword [edx + 0x208], eax
call sub.kernel32.dll_GetCurrentProcessId
mov edx, dword [ebx]
mov dword [edx + 0x204], eax
cmp byte [0x43e729b1], 0
jne 0x43e6cbee
lea eax, [ebp - 0x1c]
call fcn.43e68f8c
mov edx, dword [ebp - 0x1c]
mov eax, 0x43e729c4
call fcn.43e53690
mov eax, dword [0x43e729c4]
call fcn.43e539c0
push eax
mov eax, dword [ebx]
push eax
call sub.kernel32.dll_lstrcpyA
mov edx, 0x43e729dc
mov eax, dword [0x43e729c4]
call fcn.43e697b8
mov dword [0x43e729e0], eax
mov eax, dword [0x43e729e0]
call fcn.43e69b4c
test al, al
jne 0x43e6cb95
mov edx, 0x43e729dc
mov eax, dword [0x43e729c8]
call fcn.43e697b8
mov dword [0x43e729e0], eax
mov eax, dword [0x43e729e0]
call fcn.43e69b4c
test al, al
je 0x43e6cd16
mov edx, dword [ebx]
mov eax, dword [0x43e729dc]
mov dword [edx + 0x218], eax
cmp eax, 0x40000
jae 0x43e6cbe4
mov eax, dword [ebx]
add eax, 0x21c
mov edx, 0x40000
call fcn.43e541d0
mov eax, dword [ebx]
add eax, 0x21c
mov ecx, dword [0x43e729dc]
mov edx, dword [0x43e729e0]
call fcn.43e541c8
mov eax, dword [0x43e729e0]
call fcn.43e527f4
mov eax, 0x43e729c4
mov edx, dword [ebx]
mov ecx, pe_nt_image_headers32
call fcn.43e537a8
mov eax, dword [ebx]
mov eax, dword [eax + 0x218]
mov dword [0x43e729dc], eax
lea edx, [ebp - 0x20]
mov eax, 0x43e6ce6c
call fcn.43e68f10
mov edx, dword [ebp - 0x20]
mov eax, 0x43e729b8
call fcn.43e53690
lea edx, [ebp - 0x28]
xor eax, eax
call fcn.43e52a7c
mov eax, dword [ebp - 0x28]
lea edx, [ebp - 0x24]
call fcn.43e68c18
mov edx, dword [ebp - 0x24]
mov eax, 0x43e729cc
call fcn.43e53690
lea edx, [ebp - 0x34]
xor eax, eax
call fcn.43e52a7c
mov eax, dword [ebp - 0x34]
lea edx, [ebp - 0x30]
call fcn.43e68bc8
mov eax, dword [ebp - 0x30]
lea edx, [ebp - 0x2c]
call fcn.43e68b4c
mov edx, dword [ebp - 0x2c]
mov eax, 0x43e729bc
call fcn.43e53690
mov eax, 0x43e729c8
mov ecx, 0x43e6ce80
mov edx, dword [0x43e729d4]
call fcn.43e5380c
lea edx, [ebp - 0x3c]
mov eax, dword [0x43e729c4]
call fcn.43e68bc8
mov eax, dword [ebp - 0x3c]
lea edx, [ebp - 0x38]
call fcn.43e68b4c
mov edx, dword [ebp - 0x38]
mov eax, 0x43e729c0
call fcn.43e53690
push 0x43e6ce94
push dword [0x43e729bc]
push 0x43e6cea0
push 0x43e6ceac
push 0x43e6ceb8
push 0x43e6cec4
mov eax, 0x43e729d0
mov edx, 6
call fcn.43e53880
mov eax, dword [ebx]
add eax, 0x21c
call fcn.43e69b4c
test al, al
je 0x43e6ccfb
mov eax, dword [ebx]
add eax, 0x21c
mov dword [0x43e729e0], eax
jmp 0x43e6cd0f
mov edx, 0x43e729dc
mov eax, dword [0x43e729c8]
call fcn.43e697b8
mov dword [0x43e729e0], eax
mov byte [0x43e729b4], 1
xor eax, eax
pop edx
pop ecx
pop ecx
mov dword fs:[eax], edx
push 0x43e6cd38
lea eax, [ebp - 0x3c]
mov edx, 0xf
call fcn.43e53660
ret