Function at 0x428c87
Capabilities:
Create directory
Get common file path
Set current directory

Disassembly:
push 0x22c
mov eax, 0x67b878
call fcn.005b8597
mov dword [ebp - 0x230], ecx
xor ebx, ebx
lea ecx, [ebp + 8]
mov dword [ebp - 4], ebx
mov dword [ebp - 0x21c], 1
call fcn.0040cb97
lea ecx, [ebp + 8]
call fcn.0040cbe9
push 0x5c
lea ecx, [ebp + 8]
call fcn.0041ef1e
lea ecx, [ebp + 8]
call fcn.0040cb97
mov esi, 0x69cdcc
push esi
call fcn.005b80b0
pop ecx
push eax
push esi
lea ecx, [ebp + 8]
call fcn.00403c44
lea eax, [ebp - 0x218]
push eax
mov edi, 0x104
push edi
call dword [0x69b590]
mov eax, dword [ebp + 8]
mov eax, dword [eax - 0xc]
push edi
mov dword [ebp - 0x224], eax
lea eax, [ebp - 0x114]
push ebx
push eax
call fcn.005b8ac0
add esp, 0xc
cmp dword [ebp - 0x224], 2
jle 0x429057
mov ecx, dword [ebp + 8]
cmp dword [ecx - 0xc], 1
jge 0x428d33
push 0x80070057
call fcn.004012e4
cmp byte [ecx + 1], 0x3a
jne 0x428e91
xor edi, edi
cmp dword [ebp - 0x224], ebx
jle 0x42905d
mov esi, str.Create_folder:
cmp dword [ebp - 0x21c], ebx
je 0x42905d
cmp edi, ebx
jl 0x428d29
cmp edi, dword [ecx - 0xc]
jg 0x428d29
mov al, byte [edi + ecx]
mov byte [ebp + edi - 0x114], al
cmp al, 0x5c
jne 0x428e7f
cmp edi, 2
je 0x428e7f
lea eax, [ebp - 0x114]
push eax
call dword [0x69b594]
test eax, eax
jne 0x428e7c
push ebx
lea eax, [ebp - 0x114]
push eax
call dword [0x69b598]
mov dword [ebp - 0x21c], eax
lea eax, [ebp - 0x114]
push eax
lea ecx, [ebp - 0x220]
call fcn.00401b65
mov byte [ebp - 4], 1
cmp dword [ebp - 0x21c], ebx
je 0x428e28
push ecx
lea eax, [ebp - 0x114]
mov ecx, esp
mov dword [ebp - 0x234], esp
push eax
call fcn.00401b65
mov ecx, dword [ebp - 0x230]
lea eax, [ecx + 0x84]
push eax
call fcn.00425636
lea eax, [ebp - 0x220]
push eax
lea eax, [ebp - 0x22c]
push esi
push eax
call fcn.0040ccc6
add esp, 0xc
mov eax, dword [eax]
mov ecx, dword [0x7534c4]
push ebx
push ebx
push ebx
push eax
add ecx, 0x6dc
mov byte [ebp - 4], 2
call fcn.0043b7c8
mov ecx, dword [ebp - 0x22c]
jmp 0x428e62
lea eax, [ebp - 0x220]
push eax
lea eax, [ebp - 0x228]
push esi
push eax
call fcn.0040ccc6
add esp, 0xc
mov eax, dword [eax]
mov ecx, dword [0x7534c4]
push ebx
push 1
push 1
push eax
add ecx, 0x6dc
mov byte [ebp - 4], 3
call fcn.0043b7c8
mov ecx, dword [ebp - 0x228]
add ecx, 0xfffffff0
call fcn.0040124d
mov ecx, dword [ebp - 0x220]
add ecx, 0xfffffff0
mov byte [ebp - 4], 0
call fcn.0040124d
mov ecx, dword [ebp + 8]
inc edi
cmp edi, dword [ebp - 0x224]
jl 0x428d50
jmp 0x42905d
push 2
lea eax, [ebp - 0x228]
push eax
lea ecx, [ebp + 8]
call fcn.00403bfd
push 0x6a04f0
mov ecx, eax
mov byte [ebp - 4], 4
call fcn.0040234b
mov ecx, dword [ebp - 0x228]
mov ebx, eax
neg ebx
sbb bl, bl
add ecx, 0xfffffff0
mov byte [ebp - 4], 0
call fcn.0040124d
inc bl
je 0x42904e
push 2
push esi
lea ecx, [ebp + 8]
call fcn.0040ca39
xor ebx, ebx
xor edi, edi
mov dword [ebp - 0x22c], eax
cmp dword [ebp - 0x224], ebx
jle 0x42905d
mov esi, str.Create_folder:
cmp dword [ebp - 0x21c], ebx
je 0x42905d
cmp dword [ebp - 0x22c], 0xffffffff
je 0x42905d
cmp edi, ebx
jl 0x428d29
mov eax, dword [ebp + 8]
cmp edi, dword [eax - 0xc]
jg 0x428d29
mov al, byte [edi + eax]
mov byte [ebp + edi - 0x114], al
cmp al, 0x5c
jne 0x42903f
cmp edi, dword [ebp - 0x22c]
jle 0x42903f
lea eax, [ebp - 0x114]
push eax
call dword [0x69b594]
test eax, eax
jne 0x42903f
push ebx
lea eax, [ebp - 0x114]
push eax
call dword [0x69b598]
mov dword [ebp - 0x21c], eax
lea eax, [ebp - 0x114]
push eax
lea ecx, [ebp - 0x220]
call fcn.00401b65
mov byte [ebp - 4], 5
cmp dword [ebp - 0x21c], ebx
je 0x428feb
push ecx
lea eax, [ebp - 0x114]
mov ecx, esp
mov dword [ebp - 0x238], esp
push eax
call fcn.00401b65
mov ecx, dword [ebp - 0x230]
lea eax, [ecx + 0x84]
push eax
call fcn.00425636
lea eax, [ebp - 0x220]
push eax
lea eax, [ebp - 0x228]
push esi
push eax
call fcn.0040ccc6
add esp, 0xc
mov eax, dword [eax]
mov ecx, dword [0x7534c4]
push ebx
push ebx
push ebx
push eax
add ecx, 0x6dc
mov byte [ebp - 4], 6
call fcn.0043b7c8
mov ecx, dword [ebp - 0x228]
jmp 0x429025
lea eax, [ebp - 0x220]
push eax
lea eax, [ebp - 0x234]
push esi
push eax
call fcn.0040ccc6
add esp, 0xc
mov eax, dword [eax]
mov ecx, dword [0x7534c4]
push ebx
push 2
push 1
push eax
add ecx, 0x6dc
mov byte [ebp - 4], 7
call fcn.0043b7c8
mov ecx, dword [ebp - 0x234]
add ecx, 0xfffffff0
call fcn.0040124d
mov ecx, dword [ebp - 0x220]
add ecx, 0xfffffff0
mov byte [ebp - 4], 0
call fcn.0040124d
inc edi
cmp edi, dword [ebp - 0x224]
jl 0x428ef8
jmp 0x42905d
and dword [ebp - 0x21c], 0
jmp 0x42905d
mov dword [ebp - 0x21c], ebx
lea eax, [ebp - 0x218]
push eax
call dword [0x69b594]
mov ecx, dword [ebp + 8]
add ecx, 0xfffffff0
call fcn.0040124d
mov eax, dword [ebp - 0x21c]
call fcn.005b861a
ret 4