Function at 0x44f550
Capabilities:
Create directory

Disassembly:
push ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x46606f
mov eax, dword fs:[0]
push eax
sub esp, 0x4c
push ebx
push esi
push edi
mov eax, dword [0x479008]
xor eax, ebp
push eax
lea eax, [ebp - 0xc]
mov dword fs:[0], eax
mov edi, ecx
mov dword [ebp - 0x10], edi
mov eax, dword [ebp + 8]
xor cl, cl
mov esi, dword [ebp + 0xc]
cmp dword [eax + 4], 0
je 0x44f5b9
mov eax, dword [eax]
mov eax, dword [eax]
cmp dword [eax + 4], 0
jne 0x44f599
mov cl, 1
jmp 0x44f5b9
mov edx, dword [eax]
movzx eax, word [edx]
or eax, 0x20
sub eax, 0x61
cmp eax, 0x19
ja 0x44f5b9
cmp word [edx + 2], 0x3a
mov eax, 1
movzx ecx, cl
cmove ecx, eax
cmp dword [edi + 0x44], 3
jne 0x44f5d3
test cl, cl
je 0x44f5d3
mov eax, dword [esi]
xor ecx, ecx
mov dword [esi + 4], 0
mov word [eax], cx
jmp 0x44f5de
lea eax, [edi + 0x5c]
mov ecx, esi
push eax
call fcn.00435880
mov ecx, dword [ebp + 8]
xor ebx, ebx
mov dword [ebp + 0xc], ebx
cmp dword [ecx + 4], ebx
jbe 0x44f7eb
nop
mov edx, dword [esi + 4]
test ebx, ebx
je 0x44f621
cmp dword [esi + 8], edx
jne 0x44f609
mov ecx, esi
call fcn.00435630
mov edx, dword [esi + 4]
mov ecx, dword [ebp + 8]
mov eax, dword [esi]
mov edi, 0x5c
mov word [eax + edx*2], di
inc edx
xor edi, edi
mov word [eax + edx*2], di
mov edi, dword [ebp - 0x10]
mov dword [esi + 4], edx
mov eax, dword [ecx]
mov eax, dword [eax + ebx*4]
mov dword [ebp - 0x14], eax
mov ecx, dword [eax + 4]
mov eax, dword [esi + 8]
sub eax, edx
cmp ecx, eax
jbe 0x44f6af
add ecx, edx
mov eax, ecx
shr eax, 1
add eax, 0x10
add eax, ecx
and eax, 0xfffffff0
dec eax
cmp eax, edx
jb 0x44f64f
cmp eax, 0x3ffffffe
jbe 0x44f654
mov eax, 0x3ffffffe
cmp eax, edx
jbe 0x44f7ff
mov ecx, eax
sub ecx, edx
mov edx, dword [ebp - 0x14]
cmp ecx, dword [edx + 4]
jb 0x44f7ff
xor ecx, ecx
lea ebx, [eax - 1]
mov edx, 2
mul edx
seto cl
neg ecx
or ecx, eax
push ecx
call fcn.0041bfdb
mov ecx, dword [esi + 4]
mov edi, eax
lea ecx, [ecx*2 + 2]
push ecx
push dword [esi]
push edi
call fcn.0041f8c0
push dword [esi]
call fcn.0041bebc
mov dword [esi], edi
add esp, 0x14
mov edi, dword [ebp - 0x10]
mov dword [esi + 8], ebx
mov ebx, dword [ebp + 0xc]
mov eax, dword [esi]
mov ecx, dword [esi + 4]
mov edx, dword [ebp - 0x14]
lea ecx, [eax + ecx*2]
mov eax, dword [edx + 4]
lea eax, [eax*2 + 2]
push eax
push dword [edx]
push ecx
call fcn.0041f8c0
mov edx, dword [ebp - 0x14]
add esp, 0xc
mov eax, dword [ebp + 8]
mov ecx, dword [edx + 4]
add ecx, dword [esi + 4]
mov dword [esi + 4], ecx
mov eax, dword [eax + 4]
dec eax
cmp ebx, eax
jne 0x44f6f4
cmp byte [edi + 0x8c], 0
je 0x44f6f4
mov bl, 1
jmp 0x44f6f6
xor bl, bl
test ecx, ecx
jne 0x44f70b
test bl, bl
je 0x44f7d8
mov byte [edi + 0x3a], 1
jmp 0x44f7d8
cmp dword [edi + 0x44], 3
jne 0x44f745
cmp dword [ebp + 0xc], 0
jne 0x44f745
cmp dword [edx + 4], 2
jne 0x44f745
mov ecx, dword [edx]
movzx eax, word [ecx]
or eax, 0x20
sub eax, 0x61
cmp eax, 0x19
ja 0x44f745
cmp word [ecx + 2], 0x3a
jne 0x44f745
test bl, bl
je 0x44f7d8
mov byte [edi + 0x3a], 1
jmp 0x44f7d8
cmp byte [0x47b1a1], 0
mov eax, dword [esi]
jne 0x44f771
mov edx, eax
lea ecx, [ebp - 0x20]
call fcn.00433e70
push 0
push dword [eax]
call dword [sym.imp.KERNEL32.dll_CreateDirectoryA]
push dword [ebp - 0x20]
call fcn.0041bebc
add esp, 4
jmp 0x44f77a
push 0
push eax
call dword [sym.imp.KERNEL32.dll_CreateDirectoryW]
test bl, bl
je 0x44f7d8
mov edi, dword [esi]
lea ecx, [ebp - 0x58]
call fcn.00402130
push 0
push edi
lea ecx, [ebp - 0x58]
mov dword [ebp - 4], 0
call fcn.00439160
test al, al
je 0x44f7ac
mov eax, dword [ebp - 0x38]
shr eax, 4
test al, 1
je 0x44f7ac
mov bl, 1
jmp 0x44f7ae
xor bl, bl
mov dword [ebp - 4], 0xffffffff
push dword [ebp - 0x30]
call fcn.0041bebc
mov edi, dword [ebp - 0x10]
add esp, 4
test bl, bl
jne 0x44f7d8
push esi
push str.Cannot_create_folder
mov ecx, edi
mov byte [edi + 0x3a], 1
call fcn.0044f1a0
mov ebx, dword [ebp + 0xc]
mov ecx, dword [ebp + 8]
inc ebx
mov dword [ebp + 0xc], ebx
cmp ebx, dword [ecx + 4]
jb 0x44f5f0
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret 8
push 0x473048
lea eax, [ebp + 8]
mov dword [ebp + 8], 0x13329ac
push eax
call fcn.0041db1a
int3