Function at 0x10025710
Capabilities:
Create directory

Disassembly:
push 0xffffffffffffffff
push 0x10042ac8
mov eax, dword fs:[0]
push eax
sub esp, 0x58
mov eax, dword [0x10054020]
xor eax, esp
mov dword [esp + 0x54], eax
push ebp
push edi
mov eax, dword [0x10054020]
xor eax, esp
push eax
lea eax, [esp + 0x64]
mov dword fs:[0], eax
mov eax, dword [esp + 0x74]
xor ebp, ebp
push 0xffffffffffffffff
push ebp
lea ecx, [esp + 0x4c]
mov dword [esp + 0x64], 7
mov dword [esp + 0x60], ebp
mov word [esp + 0x50], bp
call fcn.100020a0
mov dword [esp + 0x6c], ebp
cmp dword [esp + 0x58], ebp
jne 0x10025783
lea ecx, [esp + 0x44]
call fcn.10023d70
test al, al
jne 0x10025783
lea edi, [esp + 0x44]
call fcn.10001fc0
test byte [0x100557f0], 1
jne 0x100257a7
or dword [0x100557f0], 1
push ebp
call dword [sym.imp.MSVCR80.dll__time64]
add esp, 4
push eax
call dword [sym.imp.MSVCR80.dll_srand]
add esp, 4
test byte [0x100557f0], 2
mov edi, dword [sym.imp.MSVCR80.dll_rand]
jne 0x100257cd
or dword [0x100557f0], 2
call edi
cdq
mov ecx, 0x3e8
idiv ecx
mov dword [0x100557ec], edx
mov eax, 4
test byte [0x100557f0], al
jne 0x100257ec
or dword [0x100557f0], eax
call edi
cdq
mov ecx, 0x1388
idiv ecx
jmp 0x100257f2
mov edx, dword [0x100557e8]
mov dword [esp + 0x40], 7
mov dword [esp + 0x3c], ebp
mov word [esp + 0x2c], bp
add edx, 1
mov byte [esp + 0x6c], 1
push edx
mov dword [0x100557e8], edx
mov edx, dword [0x100557ec]
push edx
mov eax, ebx
call fcn.10002060
push eax
push str._sD._.03d._.03d
lea ecx, [esp + 0x38]
call fcn.10022b50
add esp, 0x10
cmp dword [esp + 0x3c], ebp
mov edi, 8
je 0x100258ed
lea eax, [esp + 0x28]
push eax
lea ecx, [esp + 0x48]
push ecx
lea ecx, [esp + 0x14]
call fcn.10024290
add esp, 8
push 0xffffffffffffffff
push ebp
mov ecx, esi
mov byte [esp + 0x74], 2
call fcn.100020a0
mov byte [esp + 0x6c], 1
cmp dword [esp + 0x24], edi
jb 0x1002587e
mov edx, dword [esp + 0x10]
push edx
call sub.MSVCR80.dll_void___cdecl_operator_delete_void__
add esp, 4
cmp dword [esi + 0x18], edi
jb 0x10025888
mov eax, dword [esi + 4]
jmp 0x1002588b
lea eax, [esi + 4]
push ebp
push eax
call dword [sym.imp.KERNEL32.dll_CreateDirectoryW]
test eax, eax
jne 0x10025922
call dword [sym.imp.KERNEL32.dll_GetLastError]
cmp eax, 0xb7
jne 0x10025969
mov ecx, dword [0x100557e8]
mov eax, dword [0x100557ec]
add ecx, 1
add eax, 1
push ecx
mov dword [0x100557ec], eax
push eax
mov eax, ebx
mov dword [0x100557e8], ecx
call fcn.10002060
push eax
push str._sD._.03d._.03d
lea ecx, [esp + 0x38]
call fcn.10022b50
add esp, 0x10
cmp dword [esp + 0x3c], ebp
jne 0x10025841
cmp dword [esp + 0x40], edi
jb 0x10025900
mov eax, dword [esp + 0x2c]
push eax
call sub.MSVCR80.dll_void___cdecl_operator_delete_void__
add esp, 4
cmp dword [esp + 0x5c], edi
mov dword [esp + 0x40], 7
mov dword [esp + 0x3c], ebp
mov word [esp + 0x2c], bp
jb 0x100259a0
mov ecx, dword [esp + 0x48]
push ecx
jmp 0x10025998
push 0x10
mov ecx, esi
call fcn.10024150
add esp, 4
cmp dword [esp + 0x40], edi
jb 0x10025941
mov edx, dword [esp + 0x2c]
push edx
call sub.MSVCR80.dll_void___cdecl_operator_delete_void__
add esp, 4
cmp dword [esp + 0x5c], edi
mov dword [esp + 0x40], 7
mov dword [esp + 0x3c], ebp
mov word [esp + 0x2c], bp
jb 0x10025965
mov eax, dword [esp + 0x48]
push eax
call sub.MSVCR80.dll_void___cdecl_operator_delete_void__
add esp, 4
mov al, 1
jmp 0x100259a2
cmp dword [esp + 0x40], edi
jb 0x1002597c
mov ecx, dword [esp + 0x2c]
push ecx
call sub.MSVCR80.dll_void___cdecl_operator_delete_void__
add esp, 4
cmp dword [esp + 0x5c], edi
mov dword [esp + 0x40], 7
mov dword [esp + 0x3c], ebp
mov word [esp + 0x2c], bp
jb 0x100259a0
mov edx, dword [esp + 0x48]
push edx
call sub.MSVCR80.dll_void___cdecl_operator_delete_void__
add esp, 4
xor al, al
mov ecx, dword [esp + 0x64]
mov dword fs:[0], ecx
pop ecx
pop edi
pop ebp
mov ecx, dword [esp + 0x54]
xor ecx, esp
call fcn.1003ec9d
add esp, 0x64
ret