Function at 0x460730
Capabilities:
Create directory

Disassembly:
mov eax, 0x285c
call fcn.004f87d0
mov eax, dword [0x589758]
xor eax, esp
mov dword [esp + 0x2858], eax
mov eax, dword [esp + 0x2868]
mov edx, dword [esp + 0x2870]
push esi
mov esi, dword [esp + 0x2864]
push edi
mov edi, dword [esp + 0x286c]
mov dword [esp + 0x10], ecx
mov ecx, dword [esp + 0x2874]
mov dword [esp + 0x20], esi
mov dword [esp + 0x1c], edi
mov dword [esp + 8], eax
mov dword [esp + 0x14], ecx
mov dword [esp + 0xc], edx
test esi, esi
je 0x460a4c
cmp byte [esi], 0
je 0x460a4c
cmp dword [0x7c8f8c], 0
je 0x4607a6
mov eax, 1
jmp 0x46081b
push ebx
mov ebx, dword [sym.imp.KERNEL32.dll_lstrcpynA]
push 0x400
push esi
lea eax, [esp + 0x186c]
push eax
call ebx
push 0x400
lea ecx, [esp + 0x1868]
push ecx
lea edx, [esp + 0x206c]
push edx
call ebx
push 0x400
push edi
lea eax, [esp + 0x246c]
push eax
call ebx
push 0x400
lea ecx, [esp + 0x2468]
push ecx
lea edx, [esp + 0x1c6c]
push edx
call ebx
lea eax, [esp + 0x28]
push eax
lea ecx, [esp + 0x1868]
push ecx
mov ecx, 0x809040
call fcn.0041abf0
mov dword [esp + 0x1c], eax
test eax, eax
jne 0x460834
pop ebx
mov ecx, dword [esp + 0x2860]
pop edi
pop esi
xor ecx, esp
call fcn.004f6592
add esp, 0x285c
ret 0x18
push ebp
mov ebp, dword [sym.imp.KERNEL32.dll_lstrcatA]
jmp 0x460840
test byte [esp + 0x2c], 0x10
je 0x46090e
cmp byte [esp + 0x58], 0x2e
jne 0x46086d
mov al, byte [esp + 0x59]
test al, al
je 0x460a16
cmp al, 0x2e
jne 0x46086d
cmp byte [esp + 0x5a], 0
je 0x460a16
push 0x400
push esi
lea edx, [esp + 0x1470]
push edx
call ebx
push 0x53b900
lea eax, [esp + 0x146c]
push eax
call ebp
lea ecx, [esp + 0x58]
push ecx
lea edx, [esp + 0x146c]
push edx
call ebp
push 0x400
push edi
lea eax, [esp + 0x1070]
push eax
call ebx
push 0x539558
lea ecx, [esp + 0x106c]
push ecx
call ebp
lea edx, [esp + 0x58]
push edx
lea eax, [esp + 0x106c]
push eax
call ebp
push 0
lea ecx, [esp + 0x106c]
push ecx
call dword [sym.imp.KERNEL32.dll_CreateDirectoryA]
mov edx, dword [esp + 0x2884]
mov eax, dword [esp + 0x14]
mov ecx, dword [esp + 0x1c]
push edx
mov edx, dword [esp + 0x14]
push eax
push ecx
push edx
lea eax, [esp + 0x1078]
push eax
lea ecx, [esp + 0x147c]
push ecx
mov ecx, dword [esp + 0x30]
call fcn.00460730
jmp 0x460a16
xor eax, eax
mov cl, byte [esp + eax + 0x2068]
mov byte [esp + eax + 0x1468], cl
inc eax
test cl, cl
jne 0x460910
lea edi, [esp + 0x1468]
dec edi
jmp 0x460930
mov al, byte [edi + 1]
inc edi
test al, al
jne 0x460930
mov dx, word [0x53b900]
lea eax, [esp + 0x58]
mov word [edi], dx
mov edx, eax
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x460948
lea edi, [esp + 0x1468]
sub eax, edx
dec edi
lea esp, [esp]
mov cl, byte [edi + 1]
inc edi
test cl, cl
jne 0x460960
mov ecx, eax
shr ecx, 2
mov esi, edx
rep movsd dword es:[edi], dword [esi]
mov ecx, eax
and ecx, 3
rep movsb byte es:[edi], byte [esi]
xor eax, eax
lea ebx, [ebx]
mov cl, byte [esp + eax + 0x1c68]
mov byte [esp + eax + 0x1068], cl
inc eax
test cl, cl
jne 0x460980
lea edi, [esp + 0x1068]
dec edi
jmp 0x4609a0
mov al, byte [edi + 1]
inc edi
test al, al
jne 0x4609a0
mov ax, word [0x539558]
mov word [edi], ax
lea eax, [esp + 0x58]
mov esi, eax
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x4609b7
lea edi, [esp + 0x1068]
sub eax, esi
dec edi
mov cl, byte [edi + 1]
inc edi
test cl, cl
jne 0x4609c8
mov edx, dword [esp + 0x14]
mov ecx, eax
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, eax
mov eax, dword [esp + 0x1c]
and ecx, 3
rep movsb byte es:[edi], byte [esi]
mov ecx, dword [esp + 0x2884]
push ecx
mov ecx, dword [esp + 0x14]
push edx
push eax
push ecx
mov ecx, dword [esp + 0x28]
lea edx, [esp + 0x1078]
push edx
lea eax, [esp + 0x147c]
push eax
call fcn.0045c0d0
mov esi, dword [esp + 0x28]
mov edi, dword [esp + 0x24]
mov edx, dword [esp + 0x20]
lea ecx, [esp + 0x2c]
push ecx
push edx
mov ecx, 0x809040
call fcn.0041ac30
test eax, eax
jne 0x460840
mov eax, dword [esp + 0x20]
push eax
mov ecx, 0x809040
call fcn.0041ac70
mov eax, 1
pop ebp
jmp 0x46081a
xor eax, eax
jmp 0x46081b