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

Disassembly:
mov qword [rsp + 0x20], rbx
mov qword [rsp + 8], rcx
push rbp
push rsi
push rdi
push r12
push r13
push r14
push r15
lea rbp, [rsp - 0x7b0]
sub rsp, 0x8b0
xor edx, edx
mov r8d, 0x800
lea rcx, [rbp - 0x50]
call fcn.1400141d0
lea rdx, [rbp - 0x50]
mov ecx, 0x400
call qword [sym.imp.KERNEL32.dll_GetTempPathW]
xor r12d, r12d
mov qword [rsp + 0x50], r12
mov qword [rsp + 0x60], r12
mov qword [rsp + 0x68], 7
mov word [rsp + 0x50], r12w
lea rax, [rbp - 0x50]
mov rbx, 0xffffffffffffffff
nop dword [rax + rax]
inc rbx
cmp word [rax + rbx*2], r12w
jne 0x1400472a0
mov ecx, 0xa
movabs rax, 0x7fffffffffffffff
movabs r13, 0x7ffffffffffffffe
cmp rbx, 7
ja 0x1400472f2
mov qword [rsp + 0x60], rbx
add rbx, rbx
mov r8, rbx
lea rdx, [rbp - 0x50]
lea rcx, [rsp + 0x50]
call fcn.140013b20
mov word [rsp + rbx + 0x50], r12w
mov rdi, qword [rsp + 0x50]
jmp 0x140047397
cmp rbx, r13
ja 0x14004792e
mov rsi, rbx
or rsi, 7
cmp rsi, r13
jbe 0x140047313
mov rsi, r13
mov rcx, 0xfffffffffffffffe
jmp 0x140047333
cmp rsi, rcx
cmovb rsi, rcx
lea rcx, [rsi + 1]
cmp rcx, rax
ja 0x140047928
add rcx, rcx
cmp rcx, 0x1000
jb 0x14004735f
lea rax, [rcx + 0x27]
cmp rax, rcx
jbe 0x140047928
mov rcx, rax
call fcn.140011ab8
test rax, rax
je 0x140047946
lea rdi, [rax + 0x27]
and rdi, 0xffffffffffffffe0
mov qword [rdi - 8], rax
jmp 0x140047371
test rcx, rcx
je 0x14004736e
call fcn.140011ab8
mov rdi, rax
jmp 0x140047371
mov rdi, r12
mov qword [rsp + 0x60], rbx
mov qword [rsp + 0x68], rsi
add rbx, rbx
mov r8, rbx
lea rdx, [rbp - 0x50]
mov rcx, rdi
call fcn.140013b20
mov word [rbx + rdi], r12w
mov qword [rsp + 0x50], rdi
lea rax, [rsp + 0x50]
mov r8, qword [rsp + 0x68]
cmp r8, 8
cmovae rax, rdi
mov rdx, qword [rsp + 0x60]
cmp word [rax + rdx*2 - 2], 0x5c
je 0x140047409
mov rax, r8
sub rax, rdx
cmp rax, 1
jb 0x1400473ea
lea rcx, [rdx + 1]
mov qword [rsp + 0x60], rcx
lea rax, [rsp + 0x50]
cmp r8, 8
cmovae rax, rdi
mov r8d, 0x5c
mov word [rax + rdx*2], r8w
mov word [rax + rcx*2], r12w
jmp 0x140047409
mov qword [rsp + 0x20], 1
lea r9, [0x14007fc78]
mov edx, 1
lea rcx, [rsp + 0x50]
call fcn.140002700
mov qword [rsp + 0x30], r12
mov r14d, 7
mov qword [rsp + 0x48], r14
mov word [rsp + 0x30], r12w
mov qword [rsp + 0x70], r12
mov qword [rbp - 0x78], r14
mov word [rsp + 0x70], r12w
mov rsi, qword [rsp + 0x30]
mov edi, 0x57
lea rax, [rsp + 0x30]
cmp r14, 8
cmovae rax, rsi
mov qword [rsp + 0x40], r12
mov word [rax], r12w
lea rax, [rsp + 0x70]
cmp qword [rbp - 0x78], 8
cmovae rax, qword [rsp + 0x70]
mov qword [rbp - 0x80], r12
mov word [rax], r12w
mov r14, qword [rsp + 0x48]
mov rbx, qword [rsp + 0x40]
cmp r14, 8
jae 0x1400475bf
cmp rbx, 9
ja 0x1400475bf
cmp r14, 8
ja 0x1400475bf
mov ecx, 9
sub rcx, rbx
mov rax, r13
sub rax, rbx
cmp rax, rcx
jb 0x140047922
mov r15, r14
mov rcx, r14
shr rcx, 1
mov rax, r13
sub rax, rcx
cmp r14, rax
jbe 0x1400474c5
mov r14, r13
mov rcx, 0xfffffffffffffffe
jmp 0x1400474f9
lea rax, [rcx + r14]
mov r14d, send
cmp rax, r14
cmova r14, rax
lea rcx, [r14 + 1]
movabs rax, 0x7fffffffffffffff
cmp rcx, rax
ja 0x140047934
add rcx, rcx
cmp rcx, 0x1000
jb 0x140047525
lea rax, [rcx + 0x27]
cmp rax, rcx
jbe 0x140047934
mov rcx, rax
call fcn.140011ab8
test rax, rax
je 0x14004793a
lea rsi, [rax + 0x27]
and rsi, 0xffffffffffffffe0
mov qword [rsi - 8], rax
jmp 0x140047537
test rcx, rcx
je 0x140047534
call fcn.140011ab8
mov rsi, rax
jmp 0x140047537
mov rsi, r12
mov qword [rsp + 0x40], 9
mov qword [rsp + 0x48], r14
lea r8, [rbx*2 + 2]
mov rcx, rsi
cmp r15, 8
jb 0x1400475a9
mov rdi, qword [rsp + 0x30]
mov rdx, rdi
call fcn.140013b20
lea rdx, [r15*2 + 2]
mov rax, rdi
cmp rdx, 0x1000
jb 0x140047590
add rdx, 0x27
mov rdi, qword [rdi - 8]
sub rax, rdi
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x14004793a
mov rcx, rdi
call fcn.140011ab0
mov edi, 0x57
mov qword [rsp + 0x30], rsi
mov qword [rsp + 0x40], rbx
jmp 0x1400475c4
lea rdx, [rsp + 0x30]
call fcn.140013b20
mov qword [rsp + 0x30], rsi
mov qword [rsp + 0x40], rbx
jmp 0x1400475c4
mov rsi, qword [rsp + 0x30]
cmp rbx, 8
jae 0x140047690
nop
call fcn.1400183bc
mov r8d, eax
mov eax, 0x38e38e39
imul r8d
sar edx, 3
mov ecx, edx
shr ecx, 0x1f
add edx, ecx
lea ecx, [rdx + rdx*8]
shl ecx, 2
sub r8d, ecx
mov eax, gethostbyname
cmp r8d, 9
cmova eax, edi
add al, r8b
movsx ecx, al
test rbx, rbx
jne 0x140047618
cmp cx, 0x30
jb 0x140047632
cmp cx, 0x39
jbe 0x1400475d0
jmp 0x140047632
cmp rbx, 1
jbe 0x140047632
lea rax, [rsp + 0x30]
cmp r14, 8
cmovae rax, rsi
cmp word [rax + rbx*2 - 4], cx
je 0x140047686
mov rax, r14
sub rax, rbx
cmp rax, 1
jb 0x140047660
lea rax, [rbx + 1]
mov qword [rsp + 0x40], rax
lea rax, [rsp + 0x30]
cmp r14, 8
cmovae rax, rsi
mov word [rax + rbx*2], cx
mov word [rax + rbx*2 + 2], r12w
jmp 0x140047677
mov word [rsp + 0x20], cx
mov edx, 1
mov r9d, edx
lea rcx, [rsp + 0x30]
call fcn.140007ee0
mov rsi, qword [rsp + 0x30]
mov rbx, qword [rsp + 0x40]
mov r14, qword [rsp + 0x48]
cmp rbx, 8
jb 0x1400475d0
mov r12, qword [rsp + 0x60]
mov rax, r13
sub rax, r12
cmp rax, rbx
jb 0x140047922
lea rax, [rsp + 0x50]
cmp qword [rsp + 0x68], 8
cmovae rax, qword [rsp + 0x50]
mov qword [rbp + 0x7f8], rax
lea rcx, [rsp + 0x30]
cmp r14, 8
cmovae rcx, rsi
mov qword [rbp + 0x800], rcx
mov qword [rbp - 0x70], 0
lea r13, [rbx + r12]
mov edi, 7
lea r15, [rbp - 0x70]
cmp r13, rdi
jbe 0x140047790
mov rdi, r13
or rdi, 7
movabs rcx, 0x7ffffffffffffffe
cmp rdi, rcx
jbe 0x140047710
mov rdi, rcx
mov rcx, 0xfffffffffffffffe
jmp 0x140047740
cmp rdi, 0xa
mov ecx, 0xa
cmovb rdi, rcx
lea rcx, [rdi + 1]
movabs rdx, 0x7fffffffffffffff
cmp rcx, rdx
ja 0x140047934
add rcx, rcx
cmp rcx, 0x1000
jb 0x140047773
lea rax, [rcx + 0x27]
cmp rax, rcx
jbe 0x140047934
mov rcx, rax
call fcn.140011ab8
test rax, rax
je 0x14004793a
lea r15, [rax + 0x27]
and r15, 0xffffffffffffffe0
mov qword [r15 - 8], rax
mov rax, qword [rbp + 0x7f8]
jmp 0x14004778c
test rcx, rcx
je 0x140047789
call fcn.140011ab8
mov r15, rax
mov rax, qword [rbp + 0x7f8]
jmp 0x14004778c
xor r15d, r15d
mov qword [rbp - 0x70], r15
mov qword [rbp - 0x60], r13
mov qword [rbp - 0x58], rdi
lea rdi, [r12 + r12]
mov r8, rdi
mov rdx, rax
mov rcx, r15
call fcn.140013b20
lea rcx, [rdi + r15]
lea r8, [rbx + rbx]
mov rdx, qword [rbp + 0x800]
call fcn.140013b20
xor r12d, r12d
mov word [r15 + r13*2], r12w
mov rdx, qword [rbp - 0x78]
cmp rdx, 8
jb 0x140047807
lea rdx, [rdx*2 + 2]
mov rcx, qword [rsp + 0x70]
mov rax, rcx
cmp rdx, 0x1000
jb 0x140047802
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x14004793a
call fcn.140011ab0
movups xmm0, xmmword [rbp - 0x70]
movups xmmword [rsp + 0x70], xmm0
movups xmm1, xmmword [rbp - 0x60]
movups xmmword [rbp - 0x80], xmm1
lea rcx, [rsp + 0x70]
movq rdx, xmm0
psrldq xmm1, 8
movq rax, xmm1
cmp rax, 8
cmovae rcx, rdx
call fcn.140047ae0
test al, al
je 0x14004784c
movabs r13, 0x7ffffffffffffffe
jmp 0x140047433
lea rcx, [rsp + 0x70]
cmp qword [rbp - 0x78], 8
cmovae rcx, qword [rsp + 0x70]
call fcn.140020e24
mov rbx, qword [rbp + 0x7f0]
movups xmm0, xmmword [rsp + 0x70]
movups xmmword [rbx], xmm0
movups xmm1, xmmword [rbp - 0x80]
movups xmmword [rbx + 0x10], xmm1
mov qword [rbp - 0x80], r12
mov qword [rbp - 0x78], 7
mov word [rsp + 0x70], r12w
cmp r14, 8
jb 0x1400478c6
lea rdx, [r14*2 + 2]
mov rax, rsi
cmp rdx, 0x1000
jb 0x1400478bd
add rdx, 0x27
mov rsi, qword [rsi - 8]
sub rax, rsi
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x140047940
mov rcx, rsi
call fcn.140011ab0
nop
mov rdx, qword [rsp + 0x68]
cmp rdx, 8
jb 0x140047904
lea rdx, [rdx*2 + 2]
mov rcx, qword [rsp + 0x50]
mov rax, rcx
cmp rdx, 0x1000
jb 0x1400478ff
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x140047946
call fcn.140011ab0
mov rax, rbx
mov rbx, qword [rsp + 0x908]
add rsp, 0x8b0
pop r15
pop r14
pop r13
pop r12
pop rdi
pop rsi
pop rbp
ret
call fcn.14000235c
nop
call fcn.140001814
int3
call fcn.14000235c
nop
call fcn.140001814
int3
call fcn.14001828c
nop
call fcn.14001828c
nop
call fcn.14001828c
int3