Function at 0x42c140
Capabilities:
Create directory

Disassembly:
push ebp
mov ebp, esp
mov eax, 0x21e8
call fcn.0052f150
mov eax, dword [0x5a7634]
xor eax, ebp
mov dword [ebp - 4], eax
push esi
push edi
mov eax, dword [ebp + 8]
mov dword [ebp - 0x21a8], eax
lea ecx, [ebp - 0x110]
mov dword [ebp - 0x21ac], ecx
mov edx, dword [ebp - 0x21ac]
mov dword [ebp - 0x21b0], edx
mov eax, dword [ebp - 0x21a8]
mov cl, byte [eax]
mov byte [ebp - 0x21b1], cl
mov edx, dword [ebp - 0x21ac]
mov al, byte [ebp - 0x21b1]
mov byte [edx], al
mov ecx, dword [ebp - 0x21a8]
add ecx, 1
mov dword [ebp - 0x21a8], ecx
mov edx, dword [ebp - 0x21ac]
add edx, 1
mov dword [ebp - 0x21ac], edx
cmp byte [ebp - 0x21b1], 0
jne 0x42c17a
lea eax, [ebp - 0x110]
push eax
call fcn.0052f0ea
add esp, 4
mov cx, word [0x55b218]
mov word [ebp - 0x219c], cx
mov dl, byte [0x55b21a]
mov byte [ebp - 0x219a], dl
lea eax, [ebp - 0x219c]
push eax
lea ecx, [ebp - 0x110]
push ecx
call fcn.0052c9d4
add esp, 8
mov dword [ebp - 0x118], eax
mov dword [ebp - 0x114], 0
jmp 0x42c21d
mov edx, dword [ebp - 0x114]
add edx, 1
mov dword [ebp - 0x114], edx
cmp dword [ebp - 0x114], 0x20
jge 0x42c270
cmp dword [ebp - 0x118], 0
je 0x42c270
push 0x104
mov eax, dword [ebp - 0x118]
push eax
mov ecx, dword [ebp - 0x114]
imul ecx, ecx, 0x104
lea edx, [ebp + ecx - 0x2198]
push edx
call fcn.0052cb20
add esp, 0xc
lea eax, [ebp - 0x219c]
push eax
push 0
call fcn.0052c9d4
add esp, 8
mov dword [ebp - 0x118], eax
jmp 0x42c20e
mov byte [ebp - 0x110], 0
mov dword [ebp - 0x21a0], 0
jmp 0x42c292
mov ecx, dword [ebp - 0x21a0]
add ecx, 1
mov dword [ebp - 0x21a0], ecx
mov edx, dword [ebp - 0x21a0]
cmp edx, dword [ebp - 0x114]
jge 0x42c447
mov eax, dword [ebp - 0x21a0]
imul eax, eax, 0x104
lea ecx, [ebp + eax - 0x2198]
mov dword [ebp - 0x21b8], ecx
mov edx, dword [ebp - 0x21b8]
mov dword [ebp - 0x21bc], edx
mov eax, dword [ebp - 0x21b8]
mov cl, byte [eax]
mov byte [ebp - 0x21bd], cl
add dword [ebp - 0x21b8], 1
cmp byte [ebp - 0x21bd], 0
jne 0x42c2c9
mov edx, dword [ebp - 0x21b8]
sub edx, dword [ebp - 0x21bc]
mov eax, dword [ebp - 0x21bc]
mov dword [ebp - 0x21c4], eax
mov dword [ebp - 0x21c8], edx
lea ecx, [ebp - 0x110]
add ecx, 0xffffffff
mov dword [ebp - 0x21cc], ecx
mov edx, dword [ebp - 0x21cc]
mov al, byte [edx + 1]
mov byte [ebp - 0x21cd], al
add dword [ebp - 0x21cc], 1
cmp byte [ebp - 0x21cd], 0
jne 0x42c314
mov edi, dword [ebp - 0x21cc]
mov esi, dword [ebp - 0x21c4]
mov edx, dword [ebp - 0x21c8]
mov ecx, edx
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, edx
and ecx, 3
rep movsb byte es:[edi], byte [esi]
lea eax, [ebp - 0x110]
add eax, 0xffffffff
mov dword [ebp - 0x21d4], eax
mov ecx, dword [ebp - 0x21d4]
mov dl, byte [ecx + 1]
mov byte [ebp - 0x21d5], dl
add dword [ebp - 0x21d4], 1
cmp byte [ebp - 0x21d5], 0
jne 0x42c362
mov edi, dword [ebp - 0x21d4]
mov ax, word [0x55b21c]
mov word [edi], ax
cmp dword [ebp - 0x21a0], 0
jne 0x42c413
lea ecx, [ebp - 0x110]
mov dword [ebp - 0x21dc], ecx
mov edx, dword [ebp - 0x21dc]
add edx, 1
mov dword [ebp - 0x21e0], edx
mov eax, dword [ebp - 0x21dc]
mov cl, byte [eax]
mov byte [ebp - 0x21e1], cl
add dword [ebp - 0x21dc], 1
cmp byte [ebp - 0x21e1], 0
jne 0x42c3b4
mov edx, dword [ebp - 0x21dc]
sub edx, dword [ebp - 0x21e0]
mov dword [ebp - 0x21e8], edx
cmp dword [ebp - 0x21e8], 3
jne 0x42c413
movsx eax, byte [ebp - 0x110]
cmp eax, 0x41
jl 0x42c413
movsx ecx, byte [ebp - 0x110]
cmp ecx, 0x5a
jg 0x42c413
movsx edx, byte [ebp - 0x10f]
cmp edx, 0x3a
jne 0x42c413
jmp 0x42c442
push 0
lea eax, [ebp - 0x110]
push eax
call dword [sym.imp.KERNEL32.dll_CreateDirectoryA]
test eax, eax
jne 0x42c442
call dword [sym.imp.KERNEL32.dll_GetLastError]
mov dword [ebp - 0x21a4], eax
cmp dword [ebp - 0x21a4], 0xb7
je 0x42c442
xor al, al
jmp 0x42c449
jmp 0x42c283
mov al, 1
pop edi
pop esi
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.0052c40e
mov esp, ebp
pop ebp
ret