Function at 0x1800d7e20
Capabilities:
Create directory
Delete directory
Get common file path
Move file

Disassembly:
push rbp
push rsi
push rdi
push rbx
sub rsp, 0x2e8
lea rbp, [rsp + 0x80]
mov qword [rbp + 0x260], 0xfffffffffffffffe
mov rsi, rcx
xorps xmm0, xmm0
movaps xmmword [rbp + 0x1c0], xmm0
mov qword [rbp + 0x1d0], 0
cmp dword [0x180342bc4], 0xa
jl 0x1800d7e72
mov eax, dword [0x180342bc8]
lea ecx, [rax - 1]
imul ecx, eax
and ecx, 1
je 0x1800d7e72
jmp 0x1800d7e70
lea rdi, [rbp + 0x240]
mov rcx, rdi
call fcn.180003f90
mov rcx, rdi
call fcn.180004150
cmp dword [0x180342bc4], 0xa
jl 0x1800d7eea
mov eax, dword [0x180342bc8]
lea ecx, [rax - 1]
imul ecx, eax
and ecx, 1
je 0x1800d7eea
lea rdi, [rbp + 0x240]
nop word [rax + rax]
mov rcx, rdi
call fcn.180003f90
mov rcx, rdi
call fcn.180004150
mov rcx, rdi
call fcn.180003f90
mov rcx, rdi
call fcn.180004150
cmp dword [0x180342bc4], 0xa
jl 0x1800d7eea
mov eax, dword [0x180342bc8]
lea ecx, [rax - 1]
imul ecx, eax
and ecx, 1
jne 0x1800d7eb0
lea rdi, [rbp + 0x220]
mov rcx, rdi
call fcn.180003f90
mov rcx, rdi
call fcn.180004150
cmp dword [0x180342bc4], 0xa
jl 0x1800d7f6a
mov eax, dword [0x180342bc8]
lea ecx, [rax - 1]
imul ecx, eax
and ecx, 1
je 0x1800d7f6a
lea rdi, [rbp + 0x220]
nop word cs:[rax + rax]
nop dword [rax]
mov rcx, rdi
call fcn.180003f90
mov rcx, rdi
call fcn.180004150
mov rcx, rdi
call fcn.180003f90
mov rcx, rdi
call fcn.180004150
cmp dword [0x180342bc4], 0xa
jl 0x1800d7f6a
mov eax, dword [0x180342bc8]
lea ecx, [rax - 1]
imul ecx, eax
and ecx, 1
jne 0x1800d7f30
lea rdi, [rbp + 0x1e0]
mov rcx, rdi
call fcn.180003f90
mov rcx, rdi
call fcn.180004150
cmp dword [0x180342bc4], 0xa
jl 0x1800d7fea
mov eax, dword [0x180342bc8]
lea ecx, [rax - 1]
imul ecx, eax
and ecx, 1
je 0x1800d7fea
lea rdi, [rbp + 0x1e0]
nop word cs:[rax + rax]
nop dword [rax]
mov rcx, rdi
call fcn.180003f90
mov rcx, rdi
call fcn.180004150
mov rcx, rdi
call fcn.180003f90
mov rcx, rdi
call fcn.180004150
cmp dword [0x180342bc4], 0xa
jl 0x1800d7fea
mov eax, dword [0x180342bc8]
lea ecx, [rax - 1]
imul ecx, eax
and ecx, 1
jne 0x1800d7fb0
lea rdi, [rbp + 0x200]
mov rcx, rdi
call fcn.180003f90
mov rcx, rdi
call fcn.180004150
cmp dword [0x180342bc4], 0xa
jl 0x1800d806a
mov eax, dword [0x180342bc8]
lea ecx, [rax - 1]
imul ecx, eax
and ecx, 1
je 0x1800d806a
lea rdi, [rbp + 0x200]
nop word cs:[rax + rax]
nop dword [rax]
mov rcx, rdi
call fcn.180003f90
mov rcx, rdi
call fcn.180004150
mov rcx, rdi
call fcn.180003f90
mov rcx, rdi
call fcn.180004150
cmp dword [0x180342bc4], 0xa
jl 0x1800d806a
mov eax, dword [0x180342bc8]
lea ecx, [rax - 1]
imul ecx, eax
and ecx, 1
jne 0x1800d8030
lea rdx, [rbp + 0xb0]
mov ecx, 0x104
call qword [sym.imp.KERNEL32.dll_GetTempPathA]
cmp dword [0x180342128], 0xa
jl 0x1800d80e0
mov eax, dword [0x18034212c]
lea ecx, [rax - 1]
imul ecx, eax
and ecx, 1
je 0x1800d80e0
lea rdi, [rbp + 0x240]
lea rbx, [rbp + 0xb0]
nop word cs:[rax + rax]
nop
mov rcx, rdi
mov rdx, rbx
call fcn.180004fa0
mov rcx, rdi
mov rdx, rbx
call fcn.180004fa0
cmp dword [0x180342128], 0xa
jl 0x1800d80e0
mov eax, dword [0x18034212c]
lea ecx, [rax - 1]
imul ecx, eax
and ecx, 1
jne 0x1800d80b0
lea rdi, [rbp + 0x240]
lea rbx, [rbp + 0xb0]
nop
mov rcx, rdi
mov rdx, rbx
call fcn.180004fa0
cmp dword [0x180342128], 0xa
jl 0x1800d8122
mov eax, dword [0x18034212c]
lea ecx, [rax - 1]
imul ecx, eax
and ecx, 1
je 0x1800d8122
mov rcx, rdi
mov rdx, rbx
call fcn.180004fa0
jmp 0x1800d80f0
call qword [sym.imp.KERNEL32.dll_GetTickCount]
lea rbx, [rbp - 0x60]
mov ecx, eax
mov rdx, rbx
mov r8d, 0xa
call fcn.1800d7bf0
lea rdi, [rbp + 0x240]
mov rcx, rdi
mov rdx, rbx
call fcn.1800d8510
mov eax, dword [0x180342124]
lea edx, [rax - 1]
imul edx, eax
mov rax, qword [rbp + 0x258]
cmp dword [0x180342120], 9
setg cl
and cl, dl
jmp 0x1800d8174
test cl, cl
je 0x1800d8185
cmp rax, 0x10
jb 0x1800d8170
test cl, cl
jne 0x1800d8174
mov rdi, qword [rbp + 0x240]
lea rdx, [rbp + 0x1c0]
mov rcx, rdi
call qword [sym.imp.KERNEL32.dll_CreateDirectoryA]
mov eax, dword [0x18034211c]
lea ecx, [rax - 1]
imul ecx, eax
cmp dword [0x180342118], 0xa
setl dl
test cl, 1
sete al
or al, dl
nop word cs:[rax + rax]
nop dword [rax]
test al, al
je 0x1800d81c0
lea rdi, [rbp + 0x220]
lea rbx, [rbp + 0x240]
nop word cs:[rax + rax]
nop dword [rax]
mov rcx, rdi
mov rdx, rbx
call fcn.18005fbe0
cmp dword [0x180342118], 0xa
jl 0x1800d8212
mov eax, dword [0x18034211c]
lea ecx, [rax - 1]
imul ecx, eax
and ecx, 1
je 0x1800d8212
mov rcx, rdi
mov rdx, rbx
call fcn.18005fbe0
jmp 0x1800d81e0
lea rdx, str....._
lea rdi, [rbp + 0x220]
mov rcx, rdi
call fcn.1800d8510
mov eax, dword [0x180342124]
lea edx, [rax - 1]
imul edx, eax
mov rax, qword [rbp + 0x238]
cmp dword [0x180342120], 9
setg cl
and cl, dl
jmp 0x1800d8254
test cl, cl
je 0x1800d8265
cmp rax, 0x10
jb 0x1800d8250
test cl, cl
jne 0x1800d8254
mov rdi, qword [rbp + 0x220]
lea rdx, [rbp + 0x1c0]
mov rcx, rdi
call qword [sym.imp.KERNEL32.dll_CreateDirectoryA]
mov eax, dword [0x18034211c]
lea ecx, [rax - 1]
imul ecx, eax
cmp dword [0x180342118], 0xa
setl dl
test cl, 1
sete al
or al, dl
nop word cs:[rax + rax]
nop dword [rax]
test al, al
je 0x1800d82a0
lea rdi, [rbp + 0x1e0]
lea rbx, [rbp + 0x240]
nop word cs:[rax + rax]
nop dword [rax]
mov rcx, rdi
mov rdx, rbx
call fcn.18005fbe0
cmp dword [0x180342118], 0xa
jl 0x1800d82f2
mov eax, dword [0x18034211c]
lea ecx, [rax - 1]
imul ecx, eax
and ecx, 1
je 0x1800d82f2
mov rcx, rdi
mov rdx, rbx
call fcn.18005fbe0
jmp 0x1800d82c0
lea rdx, str.....TemporaryFile
lea rdi, [rbp + 0x1e0]
mov rcx, rdi
call fcn.1800d8510
mov eax, dword [0x180342124]
lea edx, [rax - 1]
imul edx, eax
mov rax, qword [rbp + 0x1f8]
cmp dword [0x180342120], 9
setg cl
and cl, dl
jmp 0x1800d8334
test cl, cl
je 0x1800d8345
cmp rax, 0x10
jb 0x1800d8330
test cl, cl
jne 0x1800d8334
mov rdi, qword [rbp + 0x1e0]
mov rcx, rsi
mov rdx, rdi
call qword [sym.imp.KERNEL32.dll_MoveFileA]
mov eax, dword [0x18034211c]
lea ecx, [rax - 1]
imul ecx, eax
cmp dword [0x180342118], 0xa
setl dl
test cl, 1
sete al
or al, dl
nop
test al, al
je 0x1800d8370
lea rdi, [rbp + 0x200]
lea rsi, [rbp + 0x240]
nop word cs:[rax + rax]
nop dword [rax]
mov rcx, rdi
mov rdx, rsi
call fcn.18005fbe0
cmp dword [0x180342118], 0xa
jl 0x1800d83c2
mov eax, dword [0x18034211c]
lea ecx, [rax - 1]
imul ecx, eax
and ecx, 1
je 0x1800d83c2
mov rcx, rdi
mov rdx, rsi
call fcn.18005fbe0
jmp 0x1800d8390
lea rdx, str.TemporaryFile
lea rdi, [rbp + 0x200]
mov rcx, rdi
call fcn.1800d8510
mov eax, dword [0x180342124]
lea edx, [rax - 1]
imul edx, eax
mov rax, qword [rbp + 0x218]
cmp dword [0x180342120], 9
setg cl
and cl, dl
jmp 0x1800d8404
test cl, cl
je 0x1800d8415
cmp rax, 0x10
jb 0x1800d8400
test cl, cl
jne 0x1800d8404
mov rdi, qword [rbp + 0x200]
cmp qword [rbp + 0x238], 0x10
jb 0x1800d8428
mov rcx, qword [rbp + 0x220]
jmp 0x1800d842f
lea rcx, [rbp + 0x220]
mov rdx, rdi
call qword [sym.imp.KERNEL32.dll_MoveFileA]
mov eax, dword [0x180342124]
lea edx, [rax - 1]
imul edx, eax
mov rax, qword [rbp + 0x258]
cmp dword [0x180342120], 9
setg cl
and cl, dl
jmp 0x1800d8464
test cl, cl
je 0x1800d8475
cmp rax, 0x10
jb 0x1800d8460
test cl, cl
jne 0x1800d8464
mov rsi, qword [rbp + 0x240]
mov rcx, rsi
call qword [sym.imp.KERNEL32.dll_RemoveDirectoryA]
lea rcx, [rbp + 0x200]
call section..text
lea rcx, [rbp + 0x1e0]
call section..text
lea rcx, [rbp + 0x220]
call section..text
lea rcx, [rbp + 0x240]
call section..text
nop
add rsp, 0x2e8
pop rbx
pop rdi
pop rsi
pop rbp
ret