Function at 0x140034fa0
Capabilities:
Create directory
Get common file path

Disassembly:
mov qword [rsp + 0x10], rbx
mov qword [rsp + 0x18], rsi
mov qword [rsp + 0x20], rdi
push rbp
push r12
push r13
push r14
push r15
lea rbp, [rsp - 0x1b0]
sub rsp, 0x2b0
mov rax, qword [0x14007f058]
xor rax, rsp
mov qword [rbp + 0x1a0], rax
mov r13, rcx
xor r14d, r14d
xor edx, edx
mov r8d, 0x208
lea rcx, [rbp - 0x70]
call fcn.14003a310
lea rdx, [rbp - 0x70]
mov ecx, 0x104
call qword [sym.imp.KERNEL32.dll_GetTempPathW]
test eax, eax
je 0x1400353e4
xorps xmm0, xmm0
movups xmmword [rsp + 0x28], xmm0
mov qword [rsp + 0x38], r14
mov qword [rsp + 0x40], r14
lea rax, [rbp - 0x70]
mov rbx, 0xffffffffffffffff
inc rbx
cmp word [rax + rbx*2], r14w
jne 0x140035023
movabs r12, 0x7ffffffffffffffe
cmp rbx, r12
ja 0x14003541a
mov eax, 0xa
mov qword [rsp + 0x40], 7
cmp rbx, 8
jae 0x140035075
mov qword [rsp + 0x38], rbx
add rbx, rbx
mov r8, rbx
lea rdx, [rbp - 0x70]
lea rcx, [rsp + 0x28]
call fcn.140039c70
mov word [rsp + rbx + 0x28], r14w
jmp 0x1400350c4
mov rsi, rbx
or rsi, 7
cmp rsi, r12
jbe 0x140035086
mov rsi, r12
jmp 0x14003508d
cmp rsi, rax
cmovb rsi, rax
lea rdx, [rsi + 1]
lea rcx, [rsp + 0x28]
call fcn.140002790
mov rdi, rax
mov qword [rsp + 0x28], rax
mov qword [rsp + 0x38], rbx
mov qword [rsp + 0x40], rsi
add rbx, rbx
mov r8, rbx
lea rdx, [rbp - 0x70]
mov rcx, rax
call fcn.140039c70
mov word [rbx + rdi], r14w
lea r10, [rsp + 0x28]
cmp qword [rsp + 0x40], 8
cmovae r10, qword [rsp + 0x28]
lea rbx, [0x140063148]
mov r11, qword [rsp + 0x38]
cmp r11, 1
jb 0x14003513d
lea rcx, [r11 - 1]
mov rax, 0xffffffffffffffff
cmp rcx, rax
cmovb rax, rcx
lea r8, [r10 + rax*2]
mov r9, r8
sub r9, rbx
cmp word [r8], 0x5c
jne 0x14003512e
mov edx, 1
mov rcx, rbx
movzx eax, word [rcx]
cmp word [r9 + rcx], ax
jne 0x14003512e
add rcx, 2
sub rdx, 1
jne 0x140035112
sub r8, r10
sar r8, 1
jmp 0x140035144
cmp r8, r10
je 0x14003513d
sub r8, 2
sub r9, 2
jmp 0x140035103
mov r8, 0xffffffffffffffff
lea rax, [r11 - 1]
cmp r8, rax
je 0x140035160
mov r8d, 1
mov rdx, rbx
lea rcx, [rsp + 0x28]
call fcn.140002890
mov r8d, 0x10
lea rdx, str.FLiNGTrainerTemp
lea rcx, [rsp + 0x28]
call fcn.140002890
lea rcx, [rsp + 0x28]
call fcn.14001f3e0
test al, al
jne 0x14003519e
lea rcx, [rsp + 0x28]
cmp qword [rsp + 0x40], 8
cmovae rcx, qword [rsp + 0x28]
xor edx, edx
call qword [sym.imp.KERNEL32.dll_CreateDirectoryW]
lea rcx, [rsp + 0x28]
call fcn.14001f3e0
test al, al
je 0x1400353a6
mov rsi, qword [rsp + 0x38]
mov rax, r12
sub rax, rsi
cmp rax, 1
jb 0x140035420
lea r15, [rsp + 0x28]
cmp qword [rsp + 0x40], 8
cmovae r15, qword [rsp + 0x28]
xorps xmm0, xmm0
movups xmmword [rsp + 0x48], xmm0
xorps xmm1, xmm1
movdqu xmmword [rsp + 0x58], xmm1
lea r14, [rsi + 1]
mov ebx, 7
lea rdi, [rsp + 0x48]
cmp r14, rbx
jbe 0x1400352a5
mov rbx, r14
or rbx, 7
cmp rbx, r12
jbe 0x14003521d
mov rbx, r12
movabs rax, 0x7fffffffffffffff
lea rcx, [rax + rax]
jmp 0x14003524d
cmp rbx, 0xa
mov eax, 0xa
cmovb rbx, rax
lea rcx, [rbx + 1]
movabs rax, 0x7fffffffffffffff
cmp rcx, rax
ja 0x140035426
add rcx, rcx
cmp rcx, 0x1000
jb 0x140035281
lea rax, [rcx + 0x27]
cmp rax, rcx
jbe 0x140035426
mov rcx, rax
call fcn.1400379bc
test rax, rax
je 0x140035432
lea rdi, [rax + 0x27]
and rdi, 0xffffffffffffffe0
mov qword [rdi - 8], rax
xor r12d, r12d
mov qword [rsp + 0x48], rdi
jmp 0x1400352a8
test rcx, rcx
je 0x140035298
call fcn.1400379bc
mov rdi, rax
xor r12d, r12d
mov qword [rsp + 0x48], rax
jmp 0x1400352a8
xor r12d, r12d
mov edi, r12d
mov qword [rsp + 0x48], r12
jmp 0x1400352a8
xor r12d, r12d
mov qword [rsp + 0x58], r14
mov qword [rsp + 0x60], rbx
lea rbx, [rsi + rsi]
mov r8, rbx
mov rdx, r15
mov rcx, rdi
call fcn.140039c70
mov word [rdi + rbx], 0x5c
mov word [rdi + r14*2], r12w
lea rdx, [r13 + 0x70]
cmp qword [r13 + 0x88], 8
jb 0x1400352e1
mov rdx, qword [r13 + 0x70]
mov r8, qword [r13 + 0x80]
lea rcx, [rsp + 0x48]
call fcn.140002890
movups xmm0, xmmword [rax]
movups xmmword [rsp + 0x68], xmm0
movups xmm1, xmmword [rax + 0x10]
movups xmmword [rsp + 0x78], xmm1
mov qword [rax + 0x10], r12
mov qword [rax + 0x18], 7
mov word [rax], r12w
lea rcx, [r13 + 0x50]
lea rdx, [rsp + 0x68]
call fcn.1400022e0
mov rdx, qword [rbp - 0x80]
cmp rdx, 8
jb 0x140035363
lea rdx, [rdx*2 + 2]
mov rcx, qword [rsp + 0x68]
mov rax, rcx
cmp rdx, 0x1000
jb 0x14003535d
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x14003542c
call fcn.1400379f8
nop
mov rdx, qword [rsp + 0x60]
cmp rdx, 8
jb 0x1400353a6
lea rdx, [rdx*2 + 2]
mov rcx, qword [rsp + 0x48]
mov rax, rcx
cmp rdx, 0x1000
jb 0x1400353a0
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x140035432
call fcn.1400379f8
nop
mov rdx, qword [rsp + 0x40]
cmp rdx, 8
jb 0x1400353e4
lea rdx, [rdx*2 + 2]
mov rcx, qword [rsp + 0x28]
mov rax, rcx
cmp rdx, 0x1000
jb 0x1400353df
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x140035414
call fcn.1400379f8
mov rcx, qword [rbp + 0x1a0]
xor rcx, rsp
call fcn.140037b10
lea r11, [rsp + 0x2b0]
mov rbx, qword [r11 + 0x38]
mov rsi, qword [r11 + 0x40]
mov rdi, qword [r11 + 0x48]
mov rsp, r11
pop r15
pop r14
pop r13
pop r12
pop rbp
ret
call fcn.14003e524
int3
call fcn.1400026f0
nop
call fcn.1400026f0
nop
call fcn.140002620
nop
call fcn.14003e524
nop
call fcn.14003e524
int3