Function at 0x1800017c0
Capabilities:
Get common file path

Disassembly:
mov rax, rsp
mov qword [rax + 0x10], rbx
mov qword [rax + 0x18], rsi
push rdi
push r12
push r13
push r14
push r15
sub rsp, 0x5c0
movaps xmmword [rax - 0x38], xmm6
movaps xmmword [rax - 0x48], xmm7
mov rax, qword [0x18007e098]
xor rax, rsp
mov qword [rsp + 0x590], rax
mov ebx, ecx
mov dword [rsp + 0xc8], ecx
xor r15d, r15d
mov dword [rsp + 0x68], r15d
xor sil, sil
mov dword [rsp + 0x28], esi
mov byte [rsp + 0x58], sil
lea edx, [r15 + 9]
lea r8d, [r15 + 0xa]
lea rcx, [rsp + 0x2d8]
call fcn.18000abd0
nop
lea edx, [r15 + 0xa]
lea r8d, [r15 + 0xb]
lea rcx, [rsp + 0x2b8]
call fcn.18000abd0
nop
lea edx, [r15 + 0xb]
lea r8d, [r15 + 0xc]
lea rcx, [rsp + 0x298]
call fcn.18000abd0
nop
lea edx, [r15 + 0xc]
lea r8d, [r15 + 0xd]
lea rcx, [rsp + 0x278]
call fcn.18000abd0
nop
lea edx, [r15 + 0xd]
lea r8d, [r15 + 0xe]
lea rcx, [rsp + 0x238]
call fcn.18000abd0
nop
lea edx, [r15 + 0xe]
lea r8d, [r15 + 0xf]
lea rcx, [rsp + 0x258]
call fcn.18000abd0
nop
lea edx, [r15 + 0xf]
lea r8d, [r15 + 0x10]
lea rcx, [rsp + 0x218]
call fcn.18000abd0
nop
xorps xmm0, xmm0
movups xmmword [rsp + 0x1c8], xmm0
mov qword [rsp + 0x1d8], r15
mov qword [rsp + 0x1e0], r15
xor r8d, r8d
lea rdx, [0x180072468]
lea rcx, [rsp + 0x1c8]
call fcn.1800045f0
nop
xorps xmm0, xmm0
movups xmmword [rsp + 0x148], xmm0
mov qword [rsp + 0x158], r15
mov qword [rsp + 0x160], r15
xor r8d, r8d
lea rdx, [0x180072468]
lea rcx, [rsp + 0x148]
call fcn.1800045f0
nop
xorps xmm0, xmm0
movups xmmword [rsp + 0x168], xmm0
mov qword [rsp + 0x178], r15
mov qword [rsp + 0x180], r15
xor r8d, r8d
lea rdx, [0x180072468]
lea rcx, [rsp + 0x168]
call fcn.1800045f0
nop
xorps xmm0, xmm0
movups xmmword [rsp + 0x1a8], xmm0
mov qword [rsp + 0x1b8], r15
mov qword [rsp + 0x1c0], r15
xor r8d, r8d
lea rdx, [0x180072468]
lea rcx, [rsp + 0x1a8]
call fcn.1800045f0
nop
xorps xmm0, xmm0
movups xmmword [rsp + 0x188], xmm0
mov qword [rsp + 0x198], r15
mov qword [rsp + 0x1a0], r15
xor r8d, r8d
lea rdx, [0x180072468]
lea rcx, [rsp + 0x188]
call fcn.1800045f0
nop
xorps xmm0, xmm0
movups xmmword [rsp + 0x108], xmm0
mov qword [rsp + 0x118], r15
mov qword [rsp + 0x120], r15
xor r8d, r8d
lea rdx, [0x180072468]
lea rcx, [rsp + 0x108]
call fcn.1800045f0
nop
xorps xmm0, xmm0
movups xmmword [rsp + 0x128], xmm0
mov qword [rsp + 0x138], r15
mov qword [rsp + 0x140], r15
xor r8d, r8d
lea rdx, [0x180072468]
lea rcx, [rsp + 0x128]
call fcn.1800045f0
nop
xorps xmm1, xmm1
movdqu xmmword [rsp + 0x200], xmm1
mov qword [rsp + 0x210], r15
movdqu xmmword [rsp + 0x1e8], xmm1
mov qword [rsp + 0x1f8], r15
test ebx, ebx
jne 0x180001a50
lea rcx, [rsp + 0x2d8]
call fcn.180005b90
mov dword [rsp + 0xa0], eax
jmp 0x180001a6d
cmp ebx, 1
jne 0x1800036f3
lea rcx, [rsp + 0x2b8]
call fcn.180005b90
mov dword [rsp + 0xa0], eax
test eax, eax
je 0x1800036f3
lea rdx, [rsp + 0x380]
mov ecx, 0x104
call qword [sym.imp.KERNEL32.dll_GetTempPathW]
dec eax
xorps xmm0, xmm0
cmp eax, 0x103
ja 0x180001b3c
xor eax, eax
movups xmmword [rsp + 0x300], xmm0
movups xmmword [rsp + 0x310], xmm0
movups xmmword [rsp + 0x320], xmm0
movups xmmword [rsp + 0x330], xmm0
movups xmmword [rsp + 0x340], xmm0
movups xmmword [rsp + 0x350], xmm0
movups xmmword [rsp + 0x360], xmm0
mov qword [rsp + 0x370], rax
lea rcx, [rsp + 0x300]
call fcn.18000f6f0
nop
lea r9, [rsp + 0x380]
cmp word [rsp + 0x380], 0
je 0x180001b0b
nop dword [rax + rax]
add r9, 2
cmp word [r9], 0
jne 0x180001b00
lea r8, [rsp + 0x380]
lea rdx, [rsp + 0x78]
lea rcx, [rsp + 0x300]
call fcn.180011720
mov esi, 3
lea rcx, [rsp + 0x300]
call fcn.18000f600
lea edi, [rsi - 2]
jmp 0x180001b68
movups xmmword [rsp + 0x78], xmm0
xorps xmm1, xmm1
movdqu xmmword [rsp + 0x88], xmm1
xor r8d, r8d
lea rdx, [0x180072468]
lea rcx, [rsp + 0x78]
call fcn.1800045f0
mov edi, 1
mov esi, edi
mov rdx, qword [rsp + 0x1e0]
cmp rdx, 0x10
jb 0x180001bab
inc rdx
mov rcx, qword [rsp + 0x1c8]
mov rax, rcx
cmp rdx, 0x1000
jb 0x180001ba6
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x180003f44
call fcn.18003af8c
movups xmm0, xmmword [rsp + 0x78]
movups xmmword [rsp + 0x1c8], xmm0
movups xmm1, xmmword [rsp + 0x88]
movups xmmword [rsp + 0x1d8], xmm1
movq rax, xmm1
test rax, rax
je 0x1800036ef
mov edx, 5
lea r8d, [rdx + 0xa]
lea rcx, [rsp + 0xa8]
call fcn.180005cc0
nop
lea rdx, [rsp + 0x218]
cmp qword [rsp + 0x230], 0x10
cmovae rdx, qword [rsp + 0x218]
mov r8, qword [rsp + 0x228]
mov rcx, rax
call fcn.1800043b0
movups xmm6, xmmword [rax]
movups xmm7, xmmword [rax + 0x10]
mov qword [rax + 0x10], r15
mov qword [rax + 0x18], 0xf
mov byte [rax], 0
or esi, 4
mov rdx, qword [rsp + 0x1c0]
cmp rdx, 0x10
jb 0x180001c73
inc rdx
mov rcx, qword [rsp + 0x1a8]
mov rax, rcx
cmp rdx, 0x1000
jb 0x180001c6e
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x180003eff
call fcn.18003af8c
movups xmmword [rsp + 0x1a8], xmm6
movups xmmword [rsp + 0x1b8], xmm7
mov rdx, qword [rsp + 0xc0]
cmp rdx, 0x10
jb 0x180001cc6
inc rdx
mov rcx, qword [rsp + 0xa8]
mov rax, rcx
cmp rdx, 0x1000
jb 0x180001cc1
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x180003f05
call fcn.18003af8c
cmp qword [rsp + 0x1b8], 0
je 0x1800036ef
lea rax, [rsp + 0x78]
mov qword [rsp + 0xd8], rax
lea rdx, [rsp + 0x278]
lea rcx, [rsp + 0x78]
call fcn.180004260
mov rbx, rax
lea rdx, [rsp + 0x298]
lea rcx, [rsp + 0x38]
call fcn.180004260
nop
mov r8, rbx
mov rdx, rax
lea rcx, [rsp + 0xa8]
call fcn.180007bc0
mov rbx, rax
lea rax, [rsp + 0x148]
cmp rax, rbx
je 0x180001db6
mov rdx, qword [rsp + 0x160]
cmp rdx, 0x10
jb 0x180001d74
inc rdx
mov rcx, qword [rsp + 0x148]
mov rax, rcx
cmp rdx, 0x1000
jb 0x180001d6f
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x180003f0b
call fcn.18003af8c
mov qword [rsp + 0x158], r15
mov qword [rsp + 0x160], 0xf
mov byte [rsp + 0x148], 0
movups xmm0, xmmword [rbx]
movups xmmword [rsp + 0x148], xmm0
movups xmm1, xmmword [rbx + 0x10]
movups xmmword [rsp + 0x158], xmm1
mov qword [rbx + 0x10], r15
mov qword [rbx + 0x18], 0xf
mov byte [rbx], 0
mov rdx, qword [rsp + 0xc0]
cmp rdx, 0x10
jb 0x180001df9
inc rdx
mov rcx, qword [rsp + 0xa8]
mov rax, rcx
cmp rdx, 0x1000
jb 0x180001df4
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x180003f0b
call fcn.18003af8c
cmp qword [rsp + 0x158], 0
je 0x1800036ef
lea rcx, [rsp + 0x148]
call fcn.180009d10
test al, al
je 0x1800036ef
lea rdx, [rsp + 0x148]
lea rcx, [rsp + 0xa8]
call fcn.180006290
mov rbx, rax
lea rax, [rsp + 0x108]
cmp rax, rbx
je 0x180001ecb
mov rdx, qword [rsp + 0x120]
cmp rdx, 0x10
jb 0x180001e89
inc rdx
mov rcx, qword [rsp + 0x108]
mov rax, rcx
cmp rdx, 0x1000
jb 0x180001e84
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x180003f11
call fcn.18003af8c
mov qword [rsp + 0x118], r15
mov qword [rsp + 0x120], 0xf
mov byte [rsp + 0x108], 0
movups xmm0, xmmword [rbx]
movups xmmword [rsp + 0x108], xmm0
movups xmm1, xmmword [rbx + 0x10]
movups xmmword [rsp + 0x118], xmm1
mov qword [rbx + 0x10], r15
mov qword [rbx + 0x18], 0xf
mov byte [rbx], 0
mov rdx, qword [rsp + 0xc0]
cmp rdx, 0x10
jb 0x180001f0e
inc rdx
mov rcx, qword [rsp + 0xa8]
mov rax, rcx
cmp rdx, 0x1000
jb 0x180001f09
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x180003f11
call fcn.18003af8c
lea rax, [rsp + 0x78]
mov qword [rsp + 0xd8], rax
xorps xmm0, xmm0
movups xmmword [rsp + 0x78], xmm0
mov qword [rsp + 0x88], r15
mov qword [rsp + 0x90], r15
mov r8, rdi
lea rdx, [0x18007246c]
lea rcx, [rsp + 0x78]
call fcn.1800045f0
nop
lea rdx, [rsp + 0x108]
lea rcx, [rsp + 0x38]
call fcn.180004260
nop
lea r8, [rsp + 0x78]
mov rdx, rax
lea rcx, [rsp + 0xa8]
call fcn.1800096c0
mov rbx, rax
lea rax, [rsp + 0x108]
cmp rax, rbx
je 0x180002009
mov rdx, qword [rsp + 0x120]
cmp rdx, 0x10
jb 0x180001fc7
inc rdx
mov rcx, qword [rsp + 0x108]
mov rax, rcx
cmp rdx, 0x1000
jb 0x180001fc2
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x180003f17
call fcn.18003af8c
mov qword [rsp + 0x118], r15
mov qword [rsp + 0x120], 0xf
mov byte [rsp + 0x108], 0
movups xmm0, xmmword [rbx]
movups xmmword [rsp + 0x108], xmm0
movups xmm1, xmmword [rbx + 0x10]
movups xmmword [rsp + 0x118], xmm1
mov qword [rbx + 0x10], r15
mov qword [rbx + 0x18], 0xf
mov byte [rbx], 0
mov rdx, qword [rsp + 0xc0]
cmp rdx, 0x10
jb 0x18000204d
inc rdx
mov rcx, qword [rsp + 0xa8]
mov rax, rcx
cmp rdx, 0x1000
jb 0x180002047
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x180003f17
call fcn.18003af8c
nop
xorps xmm0, xmm0
movups xmmword [rsp + 0x38], xmm0
mov rdx, r15
mov qword [rsp + 0x48], rdx
mov r8d, 0xf
mov qword [rsp + 0x50], r8
mov byte [rsp + 0x38], dl
or esi, 8
mov dword [rsp + 0x68], esi
mov ebx, dword [rsp + 0x118]
dec ebx
test ebx, ebx
js 0x1800020f0
lea rcx, [rsp + 0x108]
cmp qword [rsp + 0x120], 0x10
cmovae rcx, qword [rsp + 0x108]
movsxd rax, ebx
movzx r9d, byte [rax + rcx]
cmp rdx, r8
jae 0x1800020d4
lea rax, [rdx + 1]
mov qword [rsp + 0x48], rax
lea rax, [rsp + 0x38]
cmp r8, 0x10
cmovae rax, qword [rsp + 0x38]
mov byte [rax + rdx], r9b
mov byte [rax + rdx + 1], 0
mov r8, qword [rsp + 0x50]
mov rdx, qword [rsp + 0x48]
jmp 0x18000207a
xor r8d, r8d
mov rdx, rdi
lea rcx, [rsp + 0x38]
call fcn.180013dc0
mov r8, qword [rsp + 0x50]
mov rdx, qword [rsp + 0x48]
jmp 0x18000207a
mov rdx, qword [rsp + 0x120]
cmp rdx, 0x10
jb 0x180002133
inc rdx
mov rcx, qword [rsp + 0x108]
mov rax, rcx
cmp rdx, 0x1000
jb 0x18000212e
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x180003f1d
call fcn.18003af8c
movups xmm0, xmmword [rsp + 0x38]
movups xmmword [rsp + 0x108], xmm0
movups xmm1, xmmword [rsp + 0x48]
movups xmmword [rsp + 0x118], xmm1
and esi, 0xfffffff7
mov dword [rsp + 0x68], esi
xorps xmm0, xmm0
movups xmmword [rsp + 0x78], xmm0
mov qword [rsp + 0x88], r15
mov qword [rsp + 0x90], r15
mov r8, rdi
lea rdx, [0x180072470]
lea rcx, [rsp + 0x78]
call fcn.1800045f0
nop
lea rdx, [rsp + 0x108]
lea rcx, [rsp + 0x38]
call fcn.180004260
or esi, 0x10
mov dword [rsp + 0x98], esi
mov dword [rsp + 0x68], esi
mov rbx, r15
mov rsi, qword [rsp + 0x88]
mov rdi, qword [rsp + 0x48]
mov r8, rbx
lea rdx, [rsp + 0x78]
lea rcx, [rsp + 0x38]
call fcn.18000fb20
mov rbx, rax
cmp rax, 0xffffffffffffffff
je 0x180002214
cmp rdi, rax
jb 0x180003f23
mov rax, rdi
sub rax, rbx
mov rdx, rsi
cmp rax, rsi
cmovb rdx, rax
lea rcx, [rsp + 0x38]
cmp qword [rsp + 0x50], 0x10
cmovae rcx, qword [rsp + 0x38]
add rcx, rbx
sub rdi, rdx
mov r8, rdi
sub r8, rbx
inc r8
add rdx, rcx
call fcn.18003cf90
mov qword [rsp + 0x48], rdi
jmp 0x1800021b1
mov rdx, qword [rsp + 0x120]
cmp rdx, 0x10
jb 0x180002257
inc rdx
mov rcx, qword [rsp + 0x108]
mov rax, rcx
cmp rdx, 0x1000
jb 0x180002252
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x180003f28
call fcn.18003af8c
movups xmm0, xmmword [rsp + 0x38]
movups xmmword [rsp + 0x108], xmm0
movups xmm1, xmmword [rsp + 0x48]
movups xmmword [rsp + 0x118], xmm1
mov esi, dword [rsp + 0x98]
and esi, 0xffffffef
mov qword [rsp + 0x48], r15
mov qword [rsp + 0x50], 0xf
mov byte [rsp + 0x38], 0
mov rdx, qword [rsp + 0x90]
cmp rdx, 0x10
jb 0x1800022ce
inc rdx
mov rcx, qword [rsp + 0x78]
mov rax, rcx
cmp rdx, 0x1000
jb 0x1800022c9
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x180003f2e
call fcn.18003af8c
mov rcx, qword [rsp + 0x118]
test rcx, rcx
je 0x1800036ef
mov edi, r15d
mov r10d, r15d
mov dword [rsp + 0x60], r15d
xorps xmm1, xmm1
movdqu xmmword [rsp + 0x38], xmm1
mov r12, r15
mov qword [rsp + 0x48], r15
or esi, 0x20
mov dword [rsp + 0x98], esi
mov dword [rsp + 0x68], esi
mov rsi, qword [0x1800818b8]
mov r14, qword [0x1800818a8]
psrldq xmm1, 8
movq rbx, xmm1
movzx r13d, byte [rsp + 0x25]
nop word [rax + rax]
mov eax, ecx
dec ecx
mov qword [rsp + 0x70], rcx
test eax, eax
je 0x1800023a5
lea rcx, [rsp + 0x108]
cmp qword [rsp + 0x120], 0x10
setae r9b
mov r8, qword [rsp + 0x108]
cmovae rcx, r8
movsxd rdx, r10d
cmp byte [rcx + rdx], 0x3d
je 0x1800023a5
lea rax, [rsp + 0x108]
test r9b, r9b
cmovne rax, r8
movzx esi, byte [rax + rdx]
mov ecx, esi
call fcn.1800484f0
test eax, eax
jne 0x18000241b
sub sil, 0x2b
test sil, 0xfb
je 0x18000241b
mov rsi, qword [0x1800818b8]
mov r14, qword [0x1800818a8]
test edi, edi
je 0x180002777
movsxd rax, edi
cmp rax, 4
jge 0x1800023d0
jae 0x180003f34
mov byte [rsp + rax + 0x24], 0
inc rax
cmp rax, 4
jl 0x1800023b6
movzx r13d, byte [rsp + 0x25]
cmp qword [0x1800818c0], 0x10
setae byte [rsp + 0x20]
lea rcx, [0x1800818a8]
cmovae rcx, r14
mov qword [rsp + 0x30], rcx
test rsi, rsi
je 0x180002623
movsx edx, byte [rsp + 0x24]
mov r8, rsi
call fcn.18003ced0
test rax, rax
je 0x180002623
sub rax, qword [rsp + 0x30]
mov qword [rsp + 0x60], rax
jmp 0x18000262c
lea rax, [rsp + 0x108]
cmp qword [rsp + 0x120], 0x10
cmovae rax, qword [rsp + 0x108]
movsxd rcx, edi
movsxd r10, dword [rsp + 0x60]
movzx eax, byte [rax + r10]
mov byte [rsp + rcx + 0x24], al
inc edi
inc r10d
mov dword [rsp + 0x60], r10d
mov rsi, qword [0x1800818b8]
mov r14, qword [0x1800818a8]
cmp edi, 4
je 0x18000246d
mov rcx, qword [rsp + 0x70]
jmp 0x180002321
cmp qword [0x1800818c0], 0x10
setae r13b
mov byte [rsp + 0x20], r13b
lea rdi, [0x1800818a8]
cmovae rdi, r14
test rsi, rsi
je 0x1800024a8
movsx edx, byte [rsp + 0x24]
mov r8, rsi
mov rcx, rdi
call fcn.18003ced0
test rax, rax
je 0x1800024a8
sub rax, rdi
jmp 0x1800024af
mov rax, 0xffffffffffffffff
mov byte [rsp + 0x24], al
lea rdi, [0x1800818a8]
test r13b, r13b
cmovne rdi, r14
test rsi, rsi
je 0x1800024e3
movsx edx, byte [rsp + 0x25]
mov r8, rsi
mov rcx, rdi
call fcn.18003ced0
mov r13, rax
test rax, rax
je 0x1800024e3
sub r13, rdi
jmp 0x1800024ea
mov r13, 0xffffffffffffffff
mov byte [rsp + 0x25], r13b
lea rax, [0x1800818a8]
cmp byte [rsp + 0x20], 0
cmovne rax, r14
mov qword [rsp + 0x30], rax
test rsi, rsi
je 0x180002528
movsx edx, byte [rsp + 0x26]
mov r8, rsi
mov rcx, rax
call fcn.18003ced0
mov rdi, rax
test rax, rax
je 0x180002528
sub rdi, qword [rsp + 0x30]
jmp 0x18000252f
mov rdi, 0xffffffffffffffff
mov byte [rsp + 0x26], dil
lea rax, [0x1800818a8]
cmp byte [rsp + 0x20], 0
cmovne rax, r14
mov qword [rsp + 0x30], rax
test rsi, rsi
je 0x18000256d
movsx edx, byte [rsp + 0x27]
mov r8, rsi
mov rcx, rax
call fcn.18003ced0
mov rdx, rax
test rax, rax
je 0x18000256d
sub rdx, qword [rsp + 0x30]
jmp 0x180002574
mov rdx, 0xffffffffffffffff
mov byte [rsp + 0x27], dl
movzx ecx, r13b
shr cl, 4
and cl, 3
movzx eax, byte [rsp + 0x24]
shl al, 2
add cl, al
mov byte [rsp + 0x100], cl
movzx ecx, byte [rsp + 0x26]
shr cl, 2
and cl, 0xf
movzx eax, r13b
shl al, 4
add cl, al
mov byte [rsp + 0x101], cl
shl dil, 6
add dil, dl
mov byte [rsp + 0x102], dil
mov edi, r15d
cmp edi, 3
jge 0x180002611
movsxd rax, edi
lea r8, [rsp + 0x100]
add r8, rax
cmp rbx, r12
je 0x1800025e8
movzx eax, byte [r8]
mov byte [rbx], al
inc rbx
mov qword [rsp + 0x40], rbx
jmp 0x1800025ff
mov rdx, rbx
lea rcx, [rsp + 0x38]
call fcn.180016290
mov r12, qword [rsp + 0x48]
mov rbx, qword [rsp + 0x40]
inc edi
mov rsi, qword [0x1800818b8]
mov r14, qword [0x1800818a8]
jmp 0x1800025c0
mov edi, r15d
mov rcx, qword [rsp + 0x70]
mov r10d, dword [rsp + 0x60]
jmp 0x180002330
mov qword [rsp + 0x60], 0xffffffffffffffff
lea rax, [0x1800818a8]
cmp byte [rsp + 0x20], 0
cmovne rax, r14
mov qword [rsp + 0x30], rax
test rsi, rsi
je 0x180002666
movsx edx, r13b
mov r8, rsi
mov rcx, rax
call fcn.18003ced0
test rax, rax
je 0x180002666
sub rax, qword [rsp + 0x30]
mov qword [rsp + 0x70], rax
jmp 0x18000266f
mov qword [rsp + 0x70], 0xffffffffffffffff
lea r13, [0x1800818a8]
mov rax, r13
cmp byte [rsp + 0x20], 0
cmovne rax, r14
mov qword [rsp + 0x30], rax
test rsi, rsi
je 0x1800026ad
movsx edx, byte [rsp + 0x26]
mov r8, rsi
mov rcx, rax
call fcn.18003ced0
test rax, rax
je 0x1800026ad
sub rax, qword [rsp + 0x30]
mov qword [rsp + 0x30], rax
jmp 0x1800026b6
mov qword [rsp + 0x30], 0xffffffffffffffff
cmp byte [rsp + 0x20], 0
cmovne r13, r14
test rsi, rsi
je 0x1800026e1
movsx edx, byte [rsp + 0x27]
mov r8, rsi
mov rcx, r13
call fcn.18003ced0
mov r8, rax
test rax, rax
je 0x1800026e1
sub r8, r13
jmp 0x1800026e8
mov r8, 0xffffffffffffffff
mov rdx, qword [rsp + 0x70]
movzx eax, dl
shr al, 4
and al, 3
mov rcx, qword [rsp + 0x60]
shl cl, 2
add al, cl
mov byte [rsp + 0x100], al
mov rcx, qword [rsp + 0x30]
movzx eax, cl
shr al, 2
and al, 0xf
shl dl, 4
add al, dl
mov byte [rsp + 0x101], al
shl cl, 6
add cl, r8b
mov byte [rsp + 0x102], cl
mov esi, r15d
nop
lea eax, [rdi - 1]
cmp esi, eax
jge 0x180002777
movsxd rax, esi
lea r8, [rsp + 0x100]
add r8, rax
cmp rbx, r12
je 0x18000275c
movzx eax, byte [r8]
mov byte [rbx], al
inc rbx
mov qword [rsp + 0x40], rbx
inc esi
jmp 0x180002730
mov rdx, rbx
lea rcx, [rsp + 0x38]
call fcn.180016290
mov r12, qword [rsp + 0x48]
mov rbx, qword [rsp + 0x40]
inc esi
jmp 0x180002730
mov rax, qword [rsp + 0x38]
mov qword [rsp + 0x200], rax
mov qword [rsp + 0x208], rbx
mov qword [rsp + 0x210], r12
mov esi, dword [rsp + 0x98]
and esi, 0xffffffdf
cmp rax, rbx
je 0x1800036ef
mov r12, qword [rsp + 0x1d8]
mov rcx, qword [rsp + 0x1b8]
mov qword [rsp + 0x70], rcx
movabs rdi, 0x7fffffffffffffff
mov rax, rdi
sub rax, r12
cmp rax, rcx
jb 0x180003f3a
lea rdx, [rsp + 0x1c8]
cmp qword [rsp + 0x1e0], 0x10
cmovae rdx, qword [rsp + 0x1c8]
mov qword [rsp + 0x30], rdx
lea rax, [rsp + 0x1a8]
cmp qword [rsp + 0x1c0], 0x10
cmovae rax, qword [rsp + 0x1a8]
mov qword [rsp + 0x98], rax
xorps xmm0, xmm0
movups xmmword [rsp + 0x78], xmm0
lea rax, [r12 + rcx]
mov qword [rsp + 0x60], rax
mov ebx, 0xf
lea r14, [rsp + 0x78]
cmp rax, rbx
jbe 0x1800028f4
mov rbx, rax
or rbx, 0xf
cmp rbx, rdi
jbe 0x180002859
mov rbx, rdi
movabs r13, 0x8000000000000000
lea rax, [r13 + 0x27]
jmp 0x18000288a
mov r14d, 0x16
cmp rbx, r14
cmovb rbx, r14
lea rcx, [rbx + 1]
cmp rcx, 0x1000
jb 0x1800028b8
lea rax, [rcx + 0x27]
cmp rax, rcx
jbe 0x180003f3f
movabs r13, 0x8000000000000000
mov rcx, rax
call fcn.18003af50
test rax, rax
je 0x180003f44
lea r14, [rax + 0x27]
and r14, 0xffffffffffffffe0
mov qword [r14 - 8], rax
mov rax, qword [rsp + 0x60]
mov rdx, qword [rsp + 0x30]
mov qword [rsp + 0x78], r14
jmp 0x1800028fe
test rcx, rcx
je 0x1800028e0
call fcn.18003af50
mov r14, rax
mov rax, qword [rsp + 0x60]
mov rdx, qword [rsp + 0x30]
movabs r13, 0x8000000000000000
mov qword [rsp + 0x78], r14
jmp 0x1800028fe
mov r14, r15
movabs r13, 0x8000000000000000
mov qword [rsp + 0x78], r15
jmp 0x1800028fe
movabs r13, 0x8000000000000000
mov qword [rsp + 0x88], rax
mov qword [rsp + 0x90], rbx
mov r8, r12
mov rcx, r14
call fcn.18003cf90
lea rcx, [r14 + r12]
mov r8, qword [rsp + 0x70]
mov rdx, qword [rsp + 0x98]
call fcn.18003cf90
mov rax, qword [rsp + 0x60]
mov byte [r14 + rax], 0
or esi, 0x40
mov rdx, qword [rsp + 0x1a0]
cmp rdx, 0x10
jb 0x18000297f
inc rdx
mov rcx, qword [rsp + 0x188]
mov rax, rcx
cmp rdx, 0x1000
jb 0x18000297a
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x180003f44
call fcn.18003af8c
movups xmm0, xmmword [rsp + 0x78]
movups xmmword [rsp + 0x188], xmm0
movups xmm1, xmmword [rsp + 0x88]
movups xmmword [rsp + 0x198], xmm1
lea rdx, [rsp + 0x188]
lea rcx, [rsp + 0x200]
call fcn.180009df0
lea rcx, [rsp + 0x188]
call fcn.180009d10
test al, al
je 0x1800036ef
lea rcx, [rsp + 0x188]
cmp qword [rsp + 0x1a0], 0x10
cmovae rcx, qword [rsp + 0x188]
call qword [sym.imp.KERNEL32.dll_LoadLibraryA]
mov rbx, rax
mov qword [rsp + 0xd8], rax
test rax, rax
je 0x1800036ef
mov edx, 0x10
lea r8d, [rdx + 1]
lea rcx, [rsp + 0xa8]
call fcn.18000abd0
cmp qword [rax + 0x18], 0x10
jb 0x180002a1a
mov rax, qword [rax]
mov rdx, rax
mov rcx, rbx
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov rbx, rax
mov qword [rsp + 0xd0], rax
mov rdx, qword [rsp + 0xc0]
cmp rdx, 0x10
jb 0x180002a74
inc rdx
mov rcx, qword [rsp + 0xa8]
mov rax, rcx
cmp rdx, 0x1000
jb 0x180002a6f
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x180003f4a
call fcn.18003af8c
movdqa xmm0, xmmword [0x180073b30]
movdqu xmmword [rsp + 0xb8], xmm0
mov byte [rsp + 0xa8], 0
test rbx, rbx
je 0x1800036ef
lea rax, [rsp + 0xe0]
mov qword [rsp + 0x30], rax
lea rdx, [rsp + 0x258]
lea rcx, [rsp + 0xe0]
call fcn.180004260
mov r12, rax
xorps xmm0, xmm0
movups xmmword [rsp + 0x38], xmm0
mov qword [rsp + 0x48], r15
mov qword [rsp + 0x50], r15
lea r14, [rsp + 0x238]
cmp qword [rsp + 0x250], 0x10
cmovae r14, qword [rsp + 0x238]
mov rbx, qword [rsp + 0x248]
cmp rbx, rdi
ja 0x180003f50
mov qword [rsp + 0x50], 0xf
cmp rbx, 0x10
jae 0x180002b1a
mov qword [rsp + 0x48], rbx
movups xmm0, xmmword [r14]
movups xmmword [rsp + 0x38], xmm0
jmp 0x180002ba6
mov rax, rbx
or rax, 0xf
cmp rax, rdi
jbe 0x180002b4c
add r13, 0x27
mov rcx, r13
call fcn.18003af50
mov rcx, rax
test rax, rax
je 0x180003f5a
add rax, 0x27
and rax, 0xffffffffffffffe0
mov qword [rax - 8], rcx
jmp 0x180002b87
mov rdi, rax
cmp rax, 0x16
mov eax, 0x16
cmovb rdi, rax
lea rcx, [rdi + 1]
cmp rcx, 0x1000
jb 0x180002b78
lea r13, [rcx + 0x27]
cmp r13, rcx
jbe 0x180003f55
jmp 0x180002b2a
test rcx, rcx
je 0x180002b84
call fcn.18003af50
jmp 0x180002b87
mov rax, r15
mov qword [rsp + 0x38], rax
mov qword [rsp + 0x48], rbx
mov qword [rsp + 0x50], rdi
lea r8, [rbx + 1]
mov rdx, r14
mov rcx, rax
call fcn.18003cf90
nop
mov r8, r12
lea rdx, [rsp + 0x38]
lea rcx, [rsp + 0x78]
call fcn.180007bc0
mov rbx, rax
lea rax, [rsp + 0x168]
cmp rax, rbx
je 0x180002c51
mov rdx, qword [rsp + 0x180]
cmp rdx, 0x10
jb 0x180002c0f
inc rdx
mov rcx, qword [rsp + 0x168]
mov rax, rcx
cmp rdx, 0x1000
jb 0x180002c0a
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x180003f5a
call fcn.18003af8c
mov qword [rsp + 0x178], r15
mov qword [rsp + 0x180], 0xf
mov byte [rsp + 0x168], 0
movups xmm0, xmmword [rbx]
movups xmmword [rsp + 0x168], xmm0
movups xmm1, xmmword [rbx + 0x10]
movups xmmword [rsp + 0x178], xmm1
mov qword [rbx + 0x10], r15
mov qword [rbx + 0x18], 0xf
mov byte [rbx], 0
mov rdx, qword [rsp + 0x90]
cmp rdx, 0x10
jb 0x180002c91
inc rdx
mov rcx, qword [rsp + 0x78]
mov rax, rcx
cmp rdx, 0x1000
jb 0x180002c8c
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x180003f5a
call fcn.18003af8c
cmp qword [rsp + 0x178], 0
je 0x1800036ef
lea rcx, [rsp + 0x168]
call fcn.180009d10
test al, al
je 0x1800036ef
lea rdx, [rsp + 0x168]
lea rcx, [rsp + 0x78]
call fcn.180006290
mov rbx, rax
lea rax, [rsp + 0x128]
cmp rax, rbx
je 0x180002d60
mov rdx, qword [rsp + 0x140]
cmp rdx, 0x10
jb 0x180002d1e
inc rdx
mov rcx, qword [rsp + 0x128]
mov rax, rcx
cmp rdx, 0x1000
jb 0x180002d19
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x180003f60
call fcn.18003af8c
mov qword [rsp + 0x138], r15
mov qword [rsp + 0x140], 0xf
mov byte [rsp + 0x128], 0
movups xmm0, xmmword [rbx]
movups xmmword [rsp + 0x128], xmm0
movups xmm1, xmmword [rbx + 0x10]
movups xmmword [rsp + 0x138], xmm1
mov qword [rbx + 0x10], r15
mov qword [rbx + 0x18], 0xf
mov byte [rbx], 0
mov rdx, qword [rsp + 0x90]
cmp rdx, 0x10
jb 0x180002da0
inc rdx
mov rcx, qword [rsp + 0x78]
mov rax, rcx
cmp rdx, 0x1000
jb 0x180002d9b
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x180003f60
call fcn.18003af8c
lea rax, [rsp + 0x78]
mov qword [rsp + 0x30], rax
xorps xmm0, xmm0
movups xmmword [rsp + 0x78], xmm0
mov qword [rsp + 0x88], r15
mov qword [rsp + 0x90], r15
mov edi, 1
mov r8d, edi
lea rdx, [0x18007246c]
lea rcx, [rsp + 0x78]
call fcn.1800045f0
nop
lea rdx, [rsp + 0x128]
lea rcx, [rsp + 0xe0]
call fcn.180004260
nop
lea r8, [rsp + 0x78]
mov rdx, rax
lea rcx, [rsp + 0x38]
call fcn.1800096c0
mov rbx, rax
lea rax, [rsp + 0x128]
cmp rax, rbx
je 0x180002e9d
mov rdx, qword [rsp + 0x140]
cmp rdx, 0x10
jb 0x180002e5b
inc rdx
mov rcx, qword [rsp + 0x128]
mov rax, rcx
cmp rdx, 0x1000
jb 0x180002e56
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x180003f66
call fcn.18003af8c
mov qword [rsp + 0x138], r15
mov qword [rsp + 0x140], 0xf
mov byte [rsp + 0x128], 0
movups xmm0, xmmword [rbx]
movups xmmword [rsp + 0x128], xmm0
movups xmm1, xmmword [rbx + 0x10]
movups xmmword [rsp + 0x138], xmm1
mov qword [rbx + 0x10], r15
mov qword [rbx + 0x18], 0xf
mov byte [rbx], 0
mov rdx, qword [rsp + 0x50]
cmp rdx, 0x10
jb 0x180002edb
inc rdx
mov rcx, qword [rsp + 0x38]
mov rax, rcx
cmp rdx, 0x1000
jb 0x180002ed5
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x180003f66
call fcn.18003af8c
nop
xorps xmm0, xmm0
movups xmmword [rsp + 0x38], xmm0
mov rdx, r15
mov qword [rsp + 0x48], rdx
mov r8d, 0xf
mov qword [rsp + 0x50], r8
mov byte [rsp + 0x38], dl
bts esi, 7
mov dword [rsp + 0x68], esi
mov ebx, dword [rsp + 0x138]
dec ebx
test ebx, ebx
js 0x180002f7f
lea rcx, [rsp + 0x128]
cmp qword [rsp + 0x140], 0x10
cmovae rcx, qword [rsp + 0x128]
movsxd rax, ebx
movzx r9d, byte [rax + rcx]
cmp rdx, r8
jae 0x180002f63
lea rax, [rdx + 1]
mov qword [rsp + 0x48], rax
lea rax, [rsp + 0x38]
cmp r8, 0x10
cmovae rax, qword [rsp + 0x38]
mov byte [rax + rdx], r9b
mov byte [rax + rdx + 1], 0
mov r8, qword [rsp + 0x50]
mov rdx, qword [rsp + 0x48]
jmp 0x180002f09
xor r8d, r8d
mov rdx, rdi
lea rcx, [rsp + 0x38]
call fcn.180013dc0
mov r8, qword [rsp + 0x50]
mov rdx, qword [rsp + 0x48]
jmp 0x180002f09
mov rdx, qword [rsp + 0x140]
cmp rdx, 0x10
jb 0x180002fc2
inc rdx
mov rcx, qword [rsp + 0x128]
mov rax, rcx
cmp rdx, 0x1000
jb 0x180002fbd
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x180003f6c
call fcn.18003af8c
movups xmm0, xmmword [rsp + 0x38]
movups xmmword [rsp + 0x128], xmm0
movups xmm1, xmmword [rsp + 0x48]
movups xmmword [rsp + 0x138], xmm1
btr esi, 7
mov dword [rsp + 0x68], esi
xorps xmm0, xmm0
movups xmmword [rsp + 0x78], xmm0
mov qword [rsp + 0x88], r15
mov qword [rsp + 0x90], r15
mov r8, rdi
lea rdx, [0x180072470]
lea rcx, [rsp + 0x78]
call fcn.1800045f0
nop
lea rdx, [rsp + 0x128]
lea rcx, [rsp + 0x38]
call fcn.180004260
bts esi, 8
mov dword [rsp + 0x98], esi
mov dword [rsp + 0x68], esi
mov rbx, r15
mov rsi, qword [rsp + 0x88]
mov rdi, qword [rsp + 0x48]
mov r8, rbx
lea rdx, [rsp + 0x78]
lea rcx, [rsp + 0x38]
call fcn.18000fb20
mov rbx, rax
cmp rax, 0xffffffffffffffff
je 0x1800030a5
cmp rdi, rax
jb 0x180003f72
mov rax, rdi
sub rax, rbx
mov rdx, rsi
cmp rax, rsi
cmovb rdx, rax
lea rcx, [rsp + 0x38]
cmp qword [rsp + 0x50], 0x10
cmovae rcx, qword [rsp + 0x38]
add rcx, rbx
sub rdi, rdx
mov r8, rdi
sub r8, rbx
inc r8
add rdx, rcx
call fcn.18003cf90
mov qword [rsp + 0x48], rdi
jmp 0x180003042
mov rdx, qword [rsp + 0x140]
cmp rdx, 0x10
jb 0x1800030e8
inc rdx
mov rcx, qword [rsp + 0x128]
mov rax, rcx
cmp rdx, 0x1000
jb 0x1800030e3
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x180003f77
call fcn.18003af8c
movups xmm0, xmmword [rsp + 0x38]
movups xmmword [rsp + 0x128], xmm0
movups xmm1, xmmword [rsp + 0x48]
movups xmmword [rsp + 0x138], xmm1
mov esi, dword [rsp + 0x98]
btr esi, 8
mov qword [rsp + 0x48], r15
mov qword [rsp + 0x50], 0xf
mov byte [rsp + 0x38], 0
mov rdx, qword [rsp + 0x90]
cmp rdx, 0x10
jb 0x180003160
inc rdx
mov rcx, qword [rsp + 0x78]
mov rax, rcx
cmp rdx, 0x1000
jb 0x18000315b
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x180003f7d
call fcn.18003af8c
mov rcx, qword [rsp + 0x138]
test rcx, rcx
je 0x1800036ef
mov edi, r15d
mov r10d, r15d
mov dword [rsp + 0x60], r15d
xorps xmm1, xmm1
movdqu xmmword [rsp + 0x38], xmm1
mov r12, r15
mov qword [rsp + 0x48], r15
bts esi, 9
mov dword [rsp + 0x68], esi
mov rsi, qword [0x1800818b8]
mov r14, qword [0x1800818a8]
psrldq xmm1, 8
movq rbx, xmm1
movzx r13d, byte [rsp + 0x25]
mov eax, ecx
dec ecx
mov qword [rsp + 0x30], rcx
test eax, eax
je 0x180003228
lea rcx, [rsp + 0x128]
cmp qword [rsp + 0x140], 0x10
setae r9b
mov r8, qword [rsp + 0x128]
cmovae rcx, r8
movsxd rdx, r10d
cmp byte [rdx + rcx], 0x3d
je 0x180003228
lea rax, [rsp + 0x128]
test r9b, r9b
cmovne rax, r8
movzx esi, byte [rdx + rax]
mov ecx, esi
call fcn.1800484f0
test eax, eax
jne 0x18000329e
sub sil, 0x2b
test sil, 0xfb
je 0x18000329e
mov rsi, qword [0x1800818b8]
mov r14, qword [0x1800818a8]
test edi, edi
je 0x1800035f9
movsxd rax, edi
cmp rax, 4
jge 0x180003253
jae 0x180003f83
mov byte [rsp + rax + 0x24], 0
inc rax
cmp rax, 4
jl 0x180003239
movzx r13d, byte [rsp + 0x25]
cmp qword [0x1800818c0], 0x10
setae byte [rsp + 0x20]
lea rcx, [0x1800818a8]
cmovae rcx, r14
mov qword [rsp + 0x30], rcx
test rsi, rsi
je 0x1800034a6
movsx edx, byte [rsp + 0x24]
mov r8, rsi
call fcn.18003ced0
test rax, rax
je 0x1800034a6
sub rax, qword [rsp + 0x30]
mov qword [rsp + 0x70], rax
jmp 0x1800034af
lea rax, [rsp + 0x128]
cmp qword [rsp + 0x140], 0x10
cmovae rax, qword [rsp + 0x128]
movsxd rcx, edi
movsxd r10, dword [rsp + 0x60]
movzx eax, byte [r10 + rax]
mov byte [rsp + rcx + 0x24], al
inc edi
inc r10d
mov dword [rsp + 0x60], r10d
mov rsi, qword [0x1800818b8]
mov r14, qword [0x1800818a8]
cmp edi, 4
je 0x1800032f0
mov rcx, qword [rsp + 0x30]
jmp 0x1800031ad
cmp qword [0x1800818c0], 0x10
setae r13b
mov byte [rsp + 0x20], r13b
lea rdi, [0x1800818a8]
cmovae rdi, r14
test rsi, rsi
je 0x18000332b
movsx edx, byte [rsp + 0x24]
mov r8, rsi
mov rcx, rdi
call fcn.18003ced0
test rax, rax
je 0x18000332b
sub rax, rdi
jmp 0x180003332
mov rax, 0xffffffffffffffff
mov byte [rsp + 0x24], al
lea rdi, [0x1800818a8]
test r13b, r13b
cmovne rdi, r14
test rsi, rsi
je 0x180003366
movsx edx, byte [rsp + 0x25]
mov r8, rsi
mov rcx, rdi
call fcn.18003ced0
mov r13, rax
test rax, rax
je 0x180003366
sub r13, rdi
jmp 0x18000336d
mov r13, 0xffffffffffffffff
mov byte [rsp + 0x25], r13b
lea rax, [0x1800818a8]
cmp byte [rsp + 0x20], 0
cmovne rax, r14
mov qword [rsp + 0x70], rax
test rsi, rsi
je 0x1800033ab
movsx edx, byte [rsp + 0x26]
mov r8, rsi
mov rcx, rax
call fcn.18003ced0
mov rdi, rax
test rax, rax
je 0x1800033ab
sub rdi, qword [rsp + 0x70]
jmp 0x1800033b2
mov rdi, 0xffffffffffffffff
mov byte [rsp + 0x26], dil
lea rax, [0x1800818a8]
cmp byte [rsp + 0x20], 0
cmovne rax, r14
mov qword [rsp + 0x70], rax
test rsi, rsi
je 0x1800033f0
movsx edx, byte [rsp + 0x27]
mov r8, rsi
mov rcx, rax
call fcn.18003ced0
mov rdx, rax
test rax, rax
je 0x1800033f0
sub rdx, qword [rsp + 0x70]
jmp 0x1800033f7
mov rdx, 0xffffffffffffffff
mov byte [rsp + 0x27], dl
movzx ecx, r13b
shr cl, 4
and cl, 3
movzx eax, byte [rsp + 0x24]
shl al, 2
add cl, al
mov byte [rsp + 0x100], cl
movzx ecx, byte [rsp + 0x26]
shr cl, 2
and cl, 0xf
movzx eax, r13b
shl al, 4
add cl, al
mov byte [rsp + 0x101], cl
shl dil, 6
add dil, dl
mov byte [rsp + 0x102], dil
mov edi, r15d
cmp edi, 3
jge 0x180003494
movsxd rax, edi
lea r8, [rsp + 0x100]
add r8, rax
cmp rbx, r12
je 0x18000346b
movzx eax, byte [r8]
mov byte [rbx], al
inc rbx
mov qword [rsp + 0x40], rbx
jmp 0x180003482
mov rdx, rbx
lea rcx, [rsp + 0x38]
call fcn.180016290
mov r12, qword [rsp + 0x48]
mov rbx, qword [rsp + 0x40]
inc edi
mov rsi, qword [0x1800818b8]
mov r14, qword [0x1800818a8]
jmp 0x180003443
mov edi, r15d
mov rcx, qword [rsp + 0x30]
mov r10d, dword [rsp + 0x60]
jmp 0x1800031b3
mov qword [rsp + 0x70], 0xffffffffffffffff
lea rax, [0x1800818a8]
cmp byte [rsp + 0x20], 0
cmovne rax, r14
mov qword [rsp + 0x30], rax
test rsi, rsi
je 0x1800034e9
movsx edx, r13b
mov r8, rsi
mov rcx, rax
call fcn.18003ced0
test rax, rax
je 0x1800034e9
sub rax, qword [rsp + 0x30]
mov qword [rsp + 0x30], rax
jmp 0x1800034f2
mov qword [rsp + 0x30], 0xffffffffffffffff
lea r13, [0x1800818a8]
mov rax, r13
cmp byte [rsp + 0x20], 0
cmovne rax, r14
mov qword [rsp + 0x60], rax
test rsi, rsi
je 0x180003530
movsx edx, byte [rsp + 0x26]
mov r8, rsi
mov rcx, rax
call fcn.18003ced0
test rax, rax
je 0x180003530
sub rax, qword [rsp + 0x60]
mov qword [rsp + 0x60], rax
jmp 0x180003539
mov qword [rsp + 0x60], 0xffffffffffffffff
cmp byte [rsp + 0x20], 0
cmovne r13, r14
test rsi, rsi
je 0x180003564
movsx edx, byte [rsp + 0x27]
mov r8, rsi
mov rcx, r13
call fcn.18003ced0
mov r8, rax
test rax, rax
je 0x180003564
sub r8, r13
jmp 0x18000356b
mov r8, 0xffffffffffffffff
mov rdx, qword [rsp + 0x30]
movzx eax, dl
shr al, 4
and al, 3
mov rcx, qword [rsp + 0x70]
shl cl, 2
add al, cl
mov byte [rsp + 0x100], al
mov rcx, qword [rsp + 0x60]
movzx eax, cl
shr al, 2
and al, 0xf
shl dl, 4
add al, dl
mov byte [rsp + 0x101], al
shl cl, 6
add cl, r8b
mov byte [rsp + 0x102], cl
mov esi, r15d
lea eax, [rdi - 1]
cmp esi, eax
jge 0x1800035f9
movsxd rax, esi
lea r8, [rsp + 0x100]
add r8, rax
cmp rbx, r12
je 0x1800035de
movzx eax, byte [r8]
mov byte [rbx], al
inc rbx
mov qword [rsp + 0x40], rbx
inc esi
jmp 0x1800035b2
mov rdx, rbx
lea rcx, [rsp + 0x38]
call fcn.180016290
mov r12, qword [rsp + 0x48]
mov rbx, qword [rsp + 0x40]
inc esi
jmp 0x1800035b2
lea rcx, [rsp + 0x1e8]
call fcn.180004000
lea rdx, [rsp + 0x38]
lea rcx, [rsp + 0x1e8]
call fcn.180004380
nop
lea rcx, [rsp + 0x38]
call fcn.180004000
mov rax, qword [rsp + 0x1f0]
cmp qword [rsp + 0x1e8], rax
je 0x1800036ef
lea rdx, [rsp + 0x1e8]
lea rcx, [rsp + 0x38]
call fcn.180004060
mov r8d, dword [rsp + 0xc8]
mov rdx, rax
mov ecx, dword [rsp + 0xa0]
call qword [rsp + 0xd0]
mov ebx, eax
mov rcx, qword [rsp + 0xd8]
call qword [sym.imp.KERNEL32.dll_FreeLibrary]
test eax, eax
je 0x1800036ef
mov ecx, 0x7d0
call qword [sym.imp.KERNEL32.dll_Sleep]
mov edx, 2
lea r8d, [rdx + 0x30]
lea rcx, [rsp + 0xe0]
call fcn.180005cc0
nop
mov rdx, rax
lea rcx, [rsp + 0x38]
call fcn.180009f90
nop
lea rdx, [rsp + 0x188]
mov rcx, rax
call fcn.180009df0
nop
lea rcx, [rsp + 0x38]
call fcn.180004000
nop
lea rcx, [rsp + 0xe0]
call fcn.180004140
mov esi, dword [rsp + 0x28]
movzx esi, sil
cmp ebx, 1
mov edi, 1
cmove esi, edi
mov byte [rsp + 0x58], sil
jmp 0x1800036f3
mov esi, dword [rsp + 0x28]
jmp 0x1800036fd
lea rax, [rsp + 0x2d8]
cmp qword [rsp + 0x2f0], 0x10
cmovae rax, qword [rsp + 0x2d8]
mov qword [rsp + 0x2e8], r15
mov byte [rax], 0
lea rax, [rsp + 0x2b8]
cmp qword [rsp + 0x2d0], 0x10
cmovae rax, qword [rsp + 0x2b8]
mov qword [rsp + 0x2c8], r15
mov byte [rax], 0
lea rax, [rsp + 0x298]
cmp qword [rsp + 0x2b0], 0x10
cmovae rax, qword [rsp + 0x298]
mov qword [rsp + 0x2a8], r15
mov byte [rax], 0
lea rax, [rsp + 0x278]
cmp qword [rsp + 0x290], 0x10
cmovae rax, qword [rsp + 0x278]
mov qword [rsp + 0x288], r15
mov byte [rax], 0
lea rax, [rsp + 0x238]
cmp qword [rsp + 0x250], 0x10
cmovae rax, qword [rsp + 0x238]
mov qword [rsp + 0x248], r15
mov byte [rax], 0
lea rax, [rsp + 0x258]
cmp qword [rsp + 0x270], 0x10
cmovae rax, qword [rsp + 0x258]
mov qword [rsp + 0x268], r15
mov byte [rax], 0
lea rax, [rsp + 0x218]
cmp qword [rsp + 0x230], 0x10
cmovae rax, qword [rsp + 0x218]
mov qword [rsp + 0x228], r15
mov byte [rax], 0
lea rax, [rsp + 0x1c8]
cmp qword [rsp + 0x1e0], 0x10
cmovae rax, qword [rsp + 0x1c8]
mov qword [rsp + 0x1d8], r15
mov byte [rax], 0
lea rax, [rsp + 0x148]
cmp qword [rsp + 0x160], 0x10
cmovae rax, qword [rsp + 0x148]
mov qword [rsp + 0x158], r15
mov byte [rax], 0
lea rax, [rsp + 0x168]
cmp qword [rsp + 0x180], 0x10
cmovae rax, qword [rsp + 0x168]
mov qword [rsp + 0x178], r15
mov byte [rax], 0
lea rax, [rsp + 0x1a8]
cmp qword [rsp + 0x1c0], 0x10
cmovae rax, qword [rsp + 0x1a8]
mov qword [rsp + 0x1b8], r15
mov byte [rax], 0
lea rax, [rsp + 0x188]
cmp qword [rsp + 0x1a0], 0x10
cmovae rax, qword [rsp + 0x188]
mov qword [rsp + 0x198], r15
mov byte [rax], 0
lea rax, [rsp + 0x108]
cmp qword [rsp + 0x120], 0x10
cmovae rax, qword [rsp + 0x108]
mov qword [rsp + 0x118], r15
mov byte [rax], 0
lea rax, [rsp + 0x128]
cmp qword [rsp + 0x140], 0x10
cmovae rax, qword [rsp + 0x128]
mov qword [rsp + 0x138], r15
mov byte [rax], 0
xor r8d, r8d
xor edx, edx
lea rcx, [rsp + 0x200]
call fcn.180004480
xor r8d, r8d
xor edx, edx
lea rcx, [rsp + 0x1e8]
call fcn.180004480
nop
mov rcx, qword [rsp + 0x1e8]
test rcx, rcx
je 0x18000396b
mov rdx, qword [rsp + 0x1f8]
sub rdx, rcx
mov rax, rcx
cmp rdx, 0x1000
jb 0x180003965
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x180003f89
call fcn.18003af8c
nop
mov rcx, qword [rsp + 0x200]
test rcx, rcx
je 0x1800039ae
mov rdx, qword [rsp + 0x210]
sub rdx, rcx
mov rax, rcx
cmp rdx, 0x1000
jb 0x1800039a8
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x180003f8f
call fcn.18003af8c
nop
mov rdx, qword [rsp + 0x140]
cmp rdx, 0x10
jb 0x1800039f1
inc rdx
mov rcx, qword [rsp + 0x128]
mov rax, rcx
cmp rdx, 0x1000
jb 0x1800039ec
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x180003f95
call fcn.18003af8c
mov qword [rsp + 0x138], r15
mov qword [rsp + 0x140], 0xf
mov byte [rsp + 0x128], 0
mov rdx, qword [rsp + 0x120]
cmp rdx, 0x10
jb 0x180003a50
inc rdx
mov rcx, qword [rsp + 0x108]
mov rax, rcx
cmp rdx, 0x1000
jb 0x180003a4b
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x180003f9b
call fcn.18003af8c
mov qword [rsp + 0x118], r15
mov qword [rsp + 0x120], 0xf
mov byte [rsp + 0x108], 0
mov rdx, qword [rsp + 0x1a0]
cmp rdx, 0x10
jb 0x180003aaf
inc rdx
mov rcx, qword [rsp + 0x188]
mov rax, rcx
cmp rdx, 0x1000
jb 0x180003aaa
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x180003fa1
call fcn.18003af8c
mov qword [rsp + 0x198], r15
mov qword [rsp + 0x1a0], 0xf
mov byte [rsp + 0x188], 0
mov rdx, qword [rsp + 0x1c0]
cmp rdx, 0x10
jb 0x180003b0e
inc rdx
mov rcx, qword [rsp + 0x1a8]
mov rax, rcx
cmp rdx, 0x1000
jb 0x180003b09
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x180003fa7
call fcn.18003af8c
mov qword [rsp + 0x1b8], r15
mov qword [rsp + 0x1c0], 0xf
mov byte [rsp + 0x1a8], 0
mov rdx, qword [rsp + 0x180]
cmp rdx, 0x10
jb 0x180003b6d
inc rdx
mov rcx, qword [rsp + 0x168]
mov rax, rcx
cmp rdx, 0x1000
jb 0x180003b68
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x180003fad
call fcn.18003af8c
mov qword [rsp + 0x178], r15
mov qword [rsp + 0x180], 0xf
mov byte [rsp + 0x168], 0
mov rdx, qword [rsp + 0x160]
cmp rdx, 0x10
jb 0x180003bcc
inc rdx
mov rcx, qword [rsp + 0x148]
mov rax, rcx
cmp rdx, 0x1000
jb 0x180003bc7
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x180003fb3
call fcn.18003af8c
mov qword [rsp + 0x158], r15
mov qword [rsp + 0x160], 0xf
mov byte [rsp + 0x148], 0
mov rdx, qword [rsp + 0x1e0]
cmp rdx, 0x10
jb 0x180003c2b
inc rdx
mov rcx, qword [rsp + 0x1c8]
mov rax, rcx
cmp rdx, 0x1000
jb 0x180003c26
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x180003fb9
call fcn.18003af8c
mov qword [rsp + 0x1d8], r15
mov qword [rsp + 0x1e0], 0xf
mov byte [rsp + 0x1c8], 0
mov rdx, qword [rsp + 0x230]
cmp rdx, 0x10
jb 0x180003c8a
inc rdx
mov rcx, qword [rsp + 0x218]
mov rax, rcx
cmp rdx, 0x1000
jb 0x180003c85
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x180003fbf
call fcn.18003af8c
mov qword [rsp + 0x228], r15
mov qword [rsp + 0x230], 0xf
mov byte [rsp + 0x218], 0
mov rdx, qword [rsp + 0x270]
cmp rdx, 0x10
jb 0x180003ce9
inc rdx
mov rcx, qword [rsp + 0x258]
mov rax, rcx
cmp rdx, 0x1000
jb 0x180003ce4
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x180003fc5
call fcn.18003af8c
mov qword [rsp + 0x268], r15
mov qword [rsp + 0x270], 0xf
mov byte [rsp + 0x258], 0
mov rdx, qword [rsp + 0x250]
cmp rdx, 0x10
jb 0x180003d48
inc rdx
mov rcx, qword [rsp + 0x238]
mov rax, rcx
cmp rdx, 0x1000
jb 0x180003d43
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x180003fcb
call fcn.18003af8c
mov qword [rsp + 0x248], r15
mov qword [rsp + 0x250], 0xf
mov byte [rsp + 0x238], 0
mov rdx, qword [rsp + 0x290]
cmp rdx, 0x10
jb 0x180003da7
inc rdx
mov rcx, qword [rsp + 0x278]
mov rax, rcx
cmp rdx, 0x1000
jb 0x180003da2
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x180003fd1
call fcn.18003af8c
mov qword [rsp + 0x288], r15
mov qword [rsp + 0x290], 0xf
mov byte [rsp + 0x278], 0
mov rdx, qword [rsp + 0x2b0]
cmp rdx, 0x10
jb 0x180003e06
inc rdx
mov rcx, qword [rsp + 0x298]
mov rax, rcx
cmp rdx, 0x1000
jb 0x180003e01
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x180003fd7
call fcn.18003af8c
mov qword [rsp + 0x2a8], r15
mov qword [rsp + 0x2b0], 0xf
mov byte [rsp + 0x298], 0
mov rdx, qword [rsp + 0x2d0]
cmp rdx, 0x10
jb 0x180003e65
inc rdx
mov rcx, qword [rsp + 0x2b8]
mov rax, rcx
cmp rdx, 0x1000
jb 0x180003e60
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x180003fdd
call fcn.18003af8c
mov qword [rsp + 0x2c8], r15
mov qword [rsp + 0x2d0], 0xf
mov byte [rsp + 0x2b8], 0
mov rdx, qword [rsp + 0x2f0]
cmp rdx, 0x10
jb 0x180003ec4
inc rdx
mov rcx, qword [rsp + 0x2d8]
mov rax, rcx
cmp rdx, 0x1000
jb 0x180003ebf
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x180003fe3
call fcn.18003af8c
movzx eax, sil
mov rcx, qword [rsp + 0x590]
xor rcx, rsp
call fcn.18003af30
lea r11, [rsp + 0x5c0]
mov rbx, qword [r11 + 0x38]
mov rsi, qword [r11 + 0x40]
movaps xmm6, xmmword [r11 - 0x10]
movaps xmm7, xmmword [r11 - 0x20]
mov rsp, r11
pop r15
pop r14
pop r13
pop r12
pop rdi
ret
call fcn.180041954
nop
call fcn.180041954
int3
call fcn.180041954
int3
call fcn.180041954
int3
call fcn.180041954
nop
call fcn.180041954
nop
call fcn.180012f10
call fcn.180041954
nop
call fcn.180041954
nop
call fcn.18003b0c8
nop
call fcn.180001570
call fcn.1800014d0
call fcn.180041954
int3
call fcn.180041954
nop
call fcn.180001570
call fcn.1800014d0
call fcn.180041954
nop
call fcn.180041954
int3
call fcn.180041954
nop
call fcn.180041954
nop
call fcn.180012f10
call fcn.180041954
nop
call fcn.180041954
nop
call fcn.18003b0c8
nop
call fcn.180041954
nop
call fcn.180041954
nop
call fcn.180041954
nop
call fcn.180041954
nop
call fcn.180041954
nop
call fcn.180041954
nop
call fcn.180041954
nop
call fcn.180041954
nop
call fcn.180041954
nop
call fcn.180041954
nop
call fcn.180041954
nop
call fcn.180041954
nop
call fcn.180041954
nop
call fcn.180041954
nop
call fcn.180041954
nop
call fcn.180041954
int3