Function at 0x14000e732
Capabilities:
Get system information on windows

Disassembly:
push r15
push r14
push r13
push r12
push rsi
push rdi
push rbp
push rbx
sub rsp, 0xae8
movaps xmmword [rsp + 0xad0], xmm6
mov al, byte [0x14008fbb8]
mov edx, 0x10
xor ecx, ecx
call fcn.140042681
test rax, rax
je case.0x1400103bc.3
mov rsi, rax
mov eax, 1
mov qword [rsi], rax
mov qword [rsi + 8], rax
call fcn.140052526
mov rcx, rax
shr rcx, 0x20
cmp eax, 2
mov edx, 1
cmovae edx, eax
mov byte [rsp + 0x5b8], 1
mov qword [rsp + 0x550], 0x400
xor eax, eax
mov byte [rsp + 0x5bb], al
mov qword [rsp + 0x508], rax
mov qword [rsp + 0x558], 0x200
mov qword [rsp + 0x540], rsi
lea r8, [0x14007f4e8]
mov qword [rsp + 0x548], r8
mov qword [rsp + 0x518], rax
mov qword [rsp + 0x560], rax
mov qword [rsp + 0x570], rax
mov qword [rsp + 0x580], rax
mov qword [rsp + 0x590], rax
mov dword [rsp + 0x538], 0x3b9aca00
mov dword [rsp + 0x528], 0
mov dword [rsp + 0x5a8], 0x3d
mov qword [rsp + 0x5a0], 0x100
mov word [rsp + 0x5bc], 0
mov byte [rsp + 0x5ac], al
mov dword [rsp + 0x5b0], ecx
mov dword [rsp + 0x5b4], edx
mov word [rsp + 0x5b9], 0x101
lea rdx, str.TOKIO_WORKER_THREADSA_Tokio_1.x_context_was_found__but_it_is_being_shutdown.task_was_cancelledtask_panickedearly_eof
lea rsi, [rsp + 0x250]
mov r8d, 0x14
mov rcx, rsi
call fcn.140040a35
mov rax, qword [rsi]
movabs rcx, 0x8000000000000000
movabs rdx, 0x8000000000000001
cmp rax, rcx
je 0x14000e8f4
cmp rax, rdx
jne case.0x1400103bc.3
mov rbx, qword [rsp + 0x258]
mov rsi, qword [rsp + 0x260]
mov r8, qword [rsp + 0x268]
lea rdi, [rsp + 0x5c0]
mov rcx, rdi
mov rdx, rsi
call fcn.140033446
cmp byte [rdi], 0
jne case.0x1400103bc.3
mov r12, qword [rsp + 0x5c8]
test r12, r12
je case.0x1400103bc.3
test rbx, rbx
je 0x14000e938
mov rcx, qword [0x14008fb30]
xor edx, edx
mov r8, rsi
call qword [sym.imp.kernel32.dll_HeapFree]
jmp 0x14000e938
pxor xmm0, xmm0
lea rsi, [rsp + 0x5c0]
movdqa xmmword [rsi + 0x20], xmm0
movdqa xmmword [rsi + 0x10], xmm0
movdqa xmmword [rsi], xmm0
mov rcx, rsi
call qword [sym.imp.kernel32.dll_GetSystemInfo]
mov eax, dword [rsi + 0x20]
lea r12, str.The_number_of_hardware_threads_is_not_known_for_the_target_platform
test rax, rax
cmovne r12, rax
jne 0x14000e938
mov rcx, r12
call fcn.140040de6
mov r12d, 1
movzx eax, word [rsp + 0x5b9]
mov cl, byte [rsp + 0x5bb]
mov r8, qword [rsp + 0x550]
lea rdx, [rsp + 0x30]
mov word [rdx + 0x10], ax
mov byte [rdx + 0x12], 0
mov byte [rdx + 0x13], cl
mov qword [rdx], r8
mov qword [rdx + 8], r12
lea rsi, [rsp + 0x5c0]
mov rcx, rsi
call fcn.14005bd8a
mov rcx, qword [rsi]
mov rax, rcx
mov qword [rsp + 0xf0], rcx
cmp rcx, 2
je case.0x1400103bc.3
lea rdx, [rsp + 0x5d0]
mov rax, qword [rdx - 8]
mov qword [rsp + 0xe8], rax
lea rsi, [rsp + 0x250]
mov r8d, 0xb8
mov rcx, rsi
call fcn.140070050
movdqu xmm0, xmmword [rsi]
movups xmm1, xmmword [rsi + 0x10]
movups xmm2, xmmword [rsi + 0x20]
movdqa xmmword [rsp + 0x200], xmm0
movaps xmmword [rsp + 0x210], xmm1
movaps xmmword [rsp + 0x220], xmm2
lea rdx, [rsp + 0x280]
lea rcx, [rsp + 0xf8]
mov r8d, 0x88
call fcn.140070050
lea rcx, [rsp + 0x508]
mov rdx, qword [rcx + 0x50]
add rdx, r12
call fcn.1400554bf
mov qword [rsp + 0x4f0], rdx
mov qword [rsp + 0xe0], rax
lock inc qword [rax]
jle case.0x1400103bc.3
lea rbx, [rsp + 0x5ac]
mov rcx, rbx
call fcn.14005951e
mov esi, eax
mov edi, edx
mov rcx, rbx
call fcn.14005951e
mov r14, qword [rbx - 0x2c]
test r14, r14
je 0x14000ea5e
mov rcx, qword [rsp + 0x588]
lock inc qword [r14]
jg 0x14000ea5e
jmp case.0x1400103bc.3
mov dword [rsp + 0xd0], edx
mov dword [rsp + 0xd4], eax
mov rdx, qword [rsp + 0x590]
test rdx, rdx
je 0x14000ea8c
mov r8, qword [rsp + 0x598]
lock inc qword [rdx]
jg 0x14000ea8c
jmp case.0x1400103bc.3
mov r9d, dword [rsp + 0x5a8]
mov r10, qword [rsp + 0x528]
mov r11, qword [rsp + 0x5a0]
movzx ebx, word [rsp + 0x5bc]
mov qword [rsp + 0x250], r10
mov dword [rsp + 0x280], r9d
mov qword [rsp + 0x258], r11
mov qword [rsp + 0x260], r14
mov qword [rsp + 0x268], rcx
mov qword [rsp + 0x270], rdx
mov qword [rsp + 0x278], r8
mov word [rsp + 0x290], bx
mov byte [rsp + 0x284], 0
mov dword [rsp + 0x288], esi
mov dword [rsp + 0x28c], edi
mov al, byte [0x14008fbb8]
mov edx, 0x58
xor ecx, ecx
call fcn.140042681
test rax, rax
je case.0x1400103bc.3
mov rdi, rax
mov esi, 1
mov qword [rax], rsi
mov qword [rax + 8], rsi
mov rax, qword [rsp + 0xf0]
mov qword [rdi + 0x10], rax
mov rax, qword [rsp + 0xe8]
mov qword [rdi + 0x18], rax
movdqa xmm0, xmmword [rsp + 0x200]
movaps xmm1, xmmword [rsp + 0x210]
movaps xmm2, xmmword [rsp + 0x220]
movdqu xmmword [rdi + 0x20], xmm0
movups xmmword [rdi + 0x30], xmm1
movups xmmword [rdi + 0x40], xmm2
mov byte [rdi + 0x50], 0
mov al, byte [0x14008fbb8]
mov edx, 0x30
xor ecx, ecx
call fcn.140042681
test rax, rax
je case.0x1400103bc.3
mov r14, rax
movabs rcx, 0x7ffffffffffffff8
mov qword [rax], rsi
mov qword [rax + 8], rsi
mov qword [rax + 0x10], rdi
pxor xmm0, xmm0
movdqu xmmword [rax + 0x18], xmm0
mov byte [rax + 0x28], 0
mov qword [rsp + 0x1e0], rax
mov rax, r12
shr rax, 0x3d
setne al
lea rdx, [r12*8]
cmp rdx, rcx
seta cl
test al, cl
jne case.0x1400103bc.3
xor al, cl
jne case.0x1400103bc.3
test rdx, rdx
mov qword [rsp + 0xd8], rdx
je 0x14000ec0e
mov al, byte [0x14008fbb8]
xor ecx, ecx
mov rdx, qword [rsp + 0xd8]
call fcn.140042681
test rax, rax
je case.0x1400103bc.3
mov rcx, r12
jmp 0x14000ec15
mov eax, 8
xor ecx, ecx
mov qword [rsp + 0x80], rcx
mov qword [rsp + 0x88], rax
mov rax, r12
shr rax, 0x3c
setne al
sete cl
mov rdx, r12
shl rdx, 4
movabs r8, 0x7ffffffffffffff8
cmp rdx, r8
seta r8b
mov qword [rsp + 0x90], 0
setbe r9b
and r9b, cl
or r8b, al
xor r8b, 1
or r8b, r9b
cmp r8b, 1
jne case.0x1400103bc.3
test rdx, rdx
je 0x14000ec94
mov al, byte [0x14008fbb8]
xor ecx, ecx
call fcn.140042681
test rax, rax
je case.0x1400103bc.3
mov r15, rax
mov rax, r12
jmp 0x14000ec9c
mov r15d, 8
xor eax, eax
lea rcx, [rsp + 0xa0]
mov qword [rcx], rax
mov qword [rcx + 8], r15
mov qword [rcx + 0x10], 0
lea r13, [rsp + 0x30]
mov ebp, 1
xorps xmm6, xmm6
xor esi, esi
mov qword [rsp + 0x500], r12
mov qword [rsp + 0x4f8], r14
mov al, byte [0x14008fbb8]
mov edx, 0x800
xor ecx, ecx
call fcn.140042681
test rax, rax
je case.0x1400103bc.3
mov ecx, esi
and ecx, 1
mov qword [rsp + 0x20], rsi
mov rdx, rsi
xor rdx, 1
lea rbx, [rdx + rcx*2]
mov qword [rsp + 0x30], pe_nt_image_headers64
mov qword [rsp + 0x38], rax
mov qword [rsp + 0x40], 0
xor esi, esi
cmp rsi, qword [rsp + 0x30]
jne 0x14000ed2a
mov rcx, r13
call fcn.14003eb7e
inc rsi
mov qword [rsp + 0x40], rsi
cmp rsi, 0x100
jne 0x14000ed1b
movdqu xmm0, xmmword [rsp + 0x30]
movdqa xmmword [rsp + 0x5c0], xmm0
mov rdx, qword [rsp + 0x40]
mov qword [rsp + 0x5d0], rdx
cmp qword [rsp + 0x5c0], rdx
jbe 0x14000ed95
mov r8d, 8
mov r9d, 8
lea rcx, [rsp + 0x5c0]
call fcn.140019909
movabs rcx, 0x8000000000000001
cmp rax, rcx
jne 0x140011a61
mov rdx, qword [rsp + 0x5d0]
cmp rdx, 0x100
jne case.0x1400103bc.3
mov rsi, qword [rsp + 0x5c8]
mov al, byte [0x14008fbb8]
mov edx, 0x28
xor ecx, ecx
call fcn.140042681
test rax, rax
je case.0x1400103bc.3
mov rdi, rax
mov qword [rax], rbp
mov qword [rax + 8], rbp
mov qword [rax + 0x10], rsi
mov qword [rax + 0x18], 0
mov dword [rax + 0x20], 0
lock inc qword [rax]
jle case.0x1400103bc.3
mov qword [rsp + 0x28], rbx
mov rsi, qword [r14 + 0x10]
lock inc qword [rsi]
jle case.0x1400103bc.3
mov al, byte [0x14008fbb8]
mov edx, 0x30
xor ecx, ecx
call fcn.140042681
test rax, rax
je case.0x1400103bc.3
mov rbx, rax
mov qword [rsp + 0x78], r15
mov qword [rax], rbp
mov qword [rax + 8], rbp
mov qword [rax + 0x10], rsi
movups xmmword [rax + 0x18], xmm6
mov byte [rax + 0x28], 0
lock inc qword [rax]
jle case.0x1400103bc.3
call fcn.14004b5ad
mov qword [rsp + 0xc8], rax
mov dword [rsp + 0xc0], edx
mov bpl, byte [rsp + 0x290]
mov r13d, dword [rsp + 0x250]
mov r15d, dword [rsp + 0x254]
lea rcx, [rsp + 0x284]
call fcn.14005951e
mov esi, eax
mov r12d, edx
mov al, byte [0x14008fbb8]
mov edx, 0x50
xor ecx, ecx
call fcn.140042681
test rax, rax
je case.0x1400103bc.3
mov r14, rax
test r13d, r13d
mov eax, 0x3d
cmove r15d, eax
xor bpl, 1
xor eax, eax
mov qword [r14], rax
mov qword [r14 + 8], rbx
mov dword [r14 + 0x10], esi
mov dword [r14 + 0x14], r12d
mov qword [r14 + 0x18], rdi
mov qword [r14 + 0x20], rax
movabs rax, 0x40a99d60864b8a7e
mov qword [r14 + 0x28], rax
mov rax, qword [rsp + 0xc8]
mov qword [r14 + 0x30], rax
mov eax, dword [rsp + 0xc0]
mov dword [r14 + 0x38], eax
mov dword [r14 + 0x40], 0
mov dword [r14 + 0x44], r15d
mov byte [r14 + 0x48], bpl
mov word [r14 + 0x49], 0
mov byte [r14 + 0x4b], 0
mov rsi, qword [rsp + 0x90]
cmp rsi, qword [rsp + 0x80]
jne 0x14000ef24
lea rcx, [rsp + 0x80]
call fcn.14003eb7e
mov rax, qword [rsp + 0x88]
mov qword [rax + rsi*8], r14
inc rsi
mov qword [rsp + 0x90], rsi
mov rsi, qword [rsp + 0x20]
cmp rsi, qword [rsp + 0xa0]
mov r12, qword [rsp + 0x500]
mov r15, qword [rsp + 0x78]
lea r13, [rsp + 0x30]
mov ebp, 1
jne 0x14000ef76
lea rcx, [rsp + 0xa0]
call case.0x140040251.277
mov r15, qword [rsp + 0xa8]
shl rsi, 4
mov qword [r15 + rsi], rdi
mov qword [r15 + rsi + 8], rbx
mov rax, qword [rsp + 0x28]
mov qword [rsp + 0xb0], rax
mov rsi, rax
cmp rax, r12
mov r14, qword [rsp + 0x4f8]
jne 0x14000ecd2
mov rdx, qword [rsp + 0xd8]
test rdx, rdx
je 0x14000efcf
mov al, byte [0x14008fbb8]
xor ecx, ecx
call fcn.140042681
test rax, rax
je case.0x1400103bc.3
mov r13, rax
mov rbp, r12
jmp 0x14000efd7
mov r13d, 8
xor ebp, ebp
pxor xmm0, xmm0
movdqa xmmword [rsp + 0x1a0], xmm0
mov byte [rsp + 0x1b0], 0
movdqu xmm0, xmmword [rsp + 0xa0]
movdqa xmmword [rsp + 0x5c0], xmm0
mov rdx, qword [rsp + 0xb0]
mov qword [rsp + 0x5d0], rdx
cmp qword [rsp + 0x5c0], rdx
jbe 0x14000f04c
lea rcx, [rsp + 0x5c0]
mov r8d, 8
mov r9d, 0x10
call fcn.140019909
movabs rcx, 0x8000000000000001
cmp rax, rcx
jne 0x140011a61
mov rdx, qword [rsp + 0x5d0]
mov rax, r12
not rax
lea rax, [rax + r12*2]
bsr rcx, rax
not ecx
mov rax, 0xffffffffffffffff
shr rax, cl
lea rax, [rax*4 + 4]
mov ecx, 0x10000
cmp rax, rcx
cmovb rcx, rax
cmp r12, 2
mov r14d, 4
cmovae r14, rcx
lea eax, [r14 - 1]
test r14d, eax
sete al
test r14, r14
setne cl
test cl, al
je case.0x1400103bc.3
mov rax, qword [rsp + 0x5c8]
test r14, r14
mov qword [rsp + 0x20], rdx
mov qword [rsp + 0x28], rax
je 0x14000f189
mov rax, r14
and rax, 0xffffffffffffffe7
mov ecx, r14d
not ecx
and ecx, 0x18
imul rcx, rax
mov eax, r14d
and eax, 0x18
mov rdx, r14
or rdx, 0x18
imul rdx, rax
add rdx, rcx
mov al, byte [0x14008fbb8]
xor ecx, ecx
call fcn.140042681
test rax, rax
je case.0x1400103bc.3
lea rsi, [rsp + 0x30]
mov qword [rsi], r14
mov qword [rsi + 8], rax
mov qword [rsi + 0x10], 0
mov edi, 1
lea rbx, [rsp + 0x5c7]
xor r15d, r15d
xorps xmm6, xmm6
movups xmmword [rbx], xmm6
mov rcx, qword [rsp + 0x5cf]
mov qword [rsp + 0x4df], rcx
movups xmm0, xmmword [rsp + 0x5c0]
movaps xmmword [rsp + 0x4d0], xmm0
cmp r15, qword [rsp + 0x30]
jne 0x14000f156
mov rcx, rsi
call fcn.140003aee
mov rax, qword [rsp + 0x38]
inc r15
mov byte [rax + rdi - 1], 0
movdqa xmm0, xmmword [rsp + 0x4d0]
movdqu xmmword [rax + rdi], xmm0
mov rcx, qword [rsp + 0x4df]
mov qword [rax + rdi + 0xf], rcx
mov qword [rsp + 0x40], r15
add rdi, 0x18
cmp r14, r15
jne 0x14000f11f
jmp 0x14000f19e
xor eax, eax
mov qword [rsp + 0x30], rax
mov qword [rsp + 0x38], 8
mov qword [rsp + 0x40], rax
mov rax, qword [rsp + 0x30]
mov qword [rsp + 0x5c0], rax
mov rax, qword [rsp + 0x38]
mov qword [rsp + 0x5c8], rax
mov rbx, qword [rsp + 0x40]
mov qword [rsp + 0x5d0], rbx
cmp qword [rsp + 0x5c0], rbx
mov qword [rsp + 0x78], rbp
jbe 0x14000f20b
lea rcx, [rsp + 0x5c0]
mov r8d, 8
mov r9d, 0x18
mov rdx, rbx
call fcn.140019909
movabs rcx, 0x8000000000000001
cmp rax, rcx
jne 0x140011a61
mov rbx, qword [rsp + 0x5d0]
mov rbp, r12
shl rbp, 0x10
mov rax, qword [rsp + 0x5c8]
mov qword [rsp + 0xc0], rax
mov r15d, 1
lock xadd qword [0x14008f040], r15
test r15, r15
je 0x14000f222
mov qword [rsp + 0xc8], r13
lea rdi, [rsp + 0x5c0]
lea rsi, [rsp + 0x250]
mov ecx, 9
rep movsq qword [rdi], qword [rsi]
mov al, byte [0x14008fbb8]
mov edx, 0x1c0
xor ecx, ecx
call fcn.140042681
test rax, rax
je case.0x1400103bc.3
movabs rcx, 0x9fdbc14e59887752
mov rdx, rcx
not rdx
add rdx, r14
add rdx, rcx
mov r13d, 1
mov qword [rax], r13
mov qword [rax + 8], r13
lea rdi, [rax + 0x10]
lea r14, [rsp + 0x5c0]
mov ecx, 9
mov rsi, r14
rep movsq qword [rdi], qword [rsi]
mov rcx, qword [rsp + 0x28]
mov qword [rax + 0x58], rcx
mov rcx, qword [rsp + 0x20]
mov qword [rax + 0x60], rcx
mov rcx, qword [rsp + 0xc0]
mov qword [rax + 0x68], rcx
mov qword [rax + 0x70], rbx
xorps xmm6, xmm6
movups xmmword [rax + 0x78], xmm6
mov qword [rax + 0x88], rdx
mov qword [rax + 0x90], r15
xor r15d, r15d
mov byte [rax + 0x98], r15b
mov qword [rax + 0xa0], r13
mov qword [rax + 0xa8], r12
mov qword [rax + 0xb0], r15
mov qword [rax + 0xb8], rbp
mov qword [rax + 0xc0], r12
mov byte [rax + 0xc8], r15b
mov edx, dword [rsp + 0x30]
mov ecx, dword [rsp + 0x33]
mov dword [rax + 0xc9], edx
mov dword [rax + 0xcc], ecx
mov rcx, qword [rsp + 0x78]
mov qword [rax + 0xd0], rcx
mov rcx, qword [rsp + 0xc8]
mov qword [rax + 0xd8], rcx
mov qword [rax + 0xe0], r15
mov rcx, qword [rsp + 0x1b0]
mov qword [rax + 0xf8], rcx
movdqa xmm0, xmmword [rsp + 0x1a0]
movdqu xmmword [rax + 0xe8], xmm0
mov byte [rax + 0x100], r15b
mov qword [rax + 0x108], r15
mov esi, 8
mov qword [rax + 0x110], rsi
mov qword [rax + 0x118], r15
mov rcx, rax
add rcx, 0x120
lea rdx, [rsp + 0xf8]
mov qword [rsp + 0x20], rax
mov r8d, 0x88
call fcn.140070050
mov rcx, qword [rsp + 0x20]
mov rax, qword [rsp + 0xe0]
mov qword [rcx + 0x1a8], rax
mov byte [rcx + 0x1b0], r15b
movzx eax, word [rsp + 0x180]
mov word [rcx + 0x1b1], ax
mov al, byte [rsp + 0x182]
mov byte [rcx + 0x1b3], al
mov eax, dword [rsp + 0xd4]
mov dword [rcx + 0x1b4], eax
mov eax, dword [rsp + 0xd0]
mov dword [rcx + 0x1b8], eax
mov qword [rsp + 0x30], r15
mov eax, 8
mov qword [rsp + 0x28], rax
mov qword [rsp + 0x38], rsi
mov qword [rsp + 0x40], r15
mov rbx, qword [rsp + 0x88]
mov rbp, qword [rsp + 0x90]
mov qword [rsp + 0x90], r15
lea rdx, [rbx + rbp*8]
mov qword [r14 + 0x18], rbp
movups xmmword [r14 + 0x20], xmm6
mov qword [r14], rbx
mov qword [r14 + 8], rdx
lea rax, [rsp + 0x80]
mov qword [r14 + 0x10], rax
mov r14d, 0
test rbp, rbp
je 0x14000f50a
mov qword [rsp + 0x28], rdx
shl rbp, 3
mov r14d, 8
xor r15d, r15d
lea rsi, [rsp + 0x30]
mov r12, qword [rbx + r15*8]
lock inc qword [rcx]
jle case.0x1400103bc.3
mov al, byte [0x14008fbb8]
mov edx, 0x28
xor ecx, ecx
call fcn.140042681
test rax, rax
je case.0x1400103bc.3
mov rdi, rax
mov qword [rax], r13
mov qword [rax + 8], r13
mov rcx, qword [rsp + 0x20]
mov qword [rax + 0x10], rcx
mov qword [rax + 0x18], r15
mov qword [rax + 0x20], r12
cmp r15, qword [rsp + 0x30]
jne 0x14000f4d4
mov rcx, rsi
call fcn.14003eb7e
mov rcx, qword [rsp + 0x20]
mov r14, qword [rsp + 0x38]
mov qword [r14 + r15*8], rdi
inc r15
mov qword [rsp + 0x40], r15
add rbp, 0xfffffffffffffff8
jne 0x14000f477
mov rax, qword [rsp + 0x28]
mov qword [rsp + 0x5c0], rax
mov qword [rsp + 0x5e8], r15
mov r14, qword [rsp + 0x30]
mov rax, qword [rsp + 0x38]
mov qword [rsp + 0x28], rax
lea rcx, [rsp + 0x5c0]
call fcn.14005671f
mov rsi, qword [rsp + 0x90]
test rsi, rsi
je 0x14000f542
mov rdi, qword [rsp + 0x88]
xor ebx, ebx
inc rbx
mov rcx, rdi
call fcn.14005623d
add rdi, 8
dec rsi
jne 0x14000f52e
cmp qword [rsp + 0x80], 0
je 0x14000f564
mov r8, qword [rsp + 0x88]
mov rcx, qword [0x14008fb30]
xor edx, edx
call qword [sym.imp.kernel32.dll_HeapFree]
mov rax, qword [rsp + 0x1e0]
lock dec qword [rax]
jne 0x14000f57f
lea rcx, [rsp + 0x1e0]
call fcn.1400579f6
lea rdi, [rsp + 0x5c0]
mov edx, 1
mov rcx, rdi
mov r8, qword [rsp + 0x20]
call fcn.14005a384
cmp dword [rdi], 3
je case.0x1400103bc.3
mov qword [rsp + 0x78], r14
mov rax, qword [rsp + 0x5d0]
mov qword [rsp + 0x260], rax
movdqu xmm0, xmmword [rsp + 0x5c0]
movdqa xmmword [rsp + 0x250], xmm0
test r15, r15
je 0x14000f737
shl r15, 3
xor ebp, ebp
lea rdi, [rsp + 0x5c0]
xorps xmm6, xmm6
xor r14d, r14d
mov rax, qword [rsp + 0x28]
mov rsi, qword [rax + r14]
mov rcx, rdi
call fcn.1400599c8
mov rbx, qword [rsp + 0x5c0]
cmp rbx, 2
je case.0x1400103bc.3
mov r13, qword [rsp + 0x5c8]
mov qword [rsp + 0x5c0], rbx
mov qword [rsp + 0x5c8], r13
mov r12d, 1
lock xadd qword [0x14008f038], r12
mov al, byte [0x14008fbb8]
mov edx, pe_nt_image_headers64
xor ecx, ecx
call fcn.140042681
test rax, rax
je case.0x1400103bc.3
lea rcx, [r13 + 0x1a8]
add r13, 0x148
test rbx, rbx
cmovne r13, rcx
mov rcx, rax
xor rcx, 0xffffffffffffff80
mov rdx, rax
or rdx, 0x7f
and rdx, rcx
movabs rcx, 0xb1c3e3f75e42406d
add rdx, rcx
sub rcx, rdx
lea rbx, [rax + rcx]
add rbx, 0x80
mov qword [rax + rcx + 0x78], rax
mov qword [rax + rcx + 0x80], 0xcc
mov qword [rax + rcx + 0x88], rbp
lea rdx, [0x14007f3c8]
mov qword [rax + rcx + 0x90], rdx
mov qword [rax + rcx + 0x98], rbp
mov qword [rax + rcx + 0xa0], r12
mov qword [rax + rcx + 0xa8], 2
mov qword [rax + rcx + 0xb0], rsi
movups xmmword [rax + rcx + 0xc8], xmm6
mov qword [rax + rcx + 0xd8], rbp
mov rcx, qword [r13]
mov rdx, rbx
mov r8, rdi
call fcn.14005b637
test rax, rax
je 0x14000f705
test rdx, rdx
jne case.0x1400103bc.3
mov rcx, rdi
call fcn.14000210a
mov eax, 0xcc
mov ecx, 0x84
lock cmpxchg qword [rbx], rcx
je 0x14000f728
mov rax, qword [rbx + 0x10]
mov rcx, rbx
call qword [rax + 0x20]
add r14, 8
cmp r15, r14
jne 0x14000f5e6
jmp 0x14000f780
mov rax, qword [rsp + 0x28]
lea rsi, [rax + r15*8]
cmp rsi, rax
je 0x14000f780
movabs rax, 0x9186050bdea1bdac
add rsi, rax
mov rdi, qword [rsp + 0x28]
sub rsi, rdi
sub rsi, rax
shr rsi, 3
xor ebx, ebx
mov rax, qword [rdi]
lock dec qword [rax]
jne 0x14000f774
mov rcx, rdi
call fcn.1400598ef
inc rbx
add rdi, 8
dec rsi
jne 0x14000f763
cmp qword [rsp + 0x78], 0
je 0x14000f79c
mov rcx, qword [0x14008fb30]
xor edx, edx
mov r8, qword [rsp + 0x28]
call qword [sym.imp.kernel32.dll_HeapFree]
lea rcx, [rsp + 0x250]
call fcn.140057784
cmp dword [rsp + 0xf0], 2
je case.0x1400103bc.3
mov eax, 1
mov qword [rsp + 0xf8], rax
mov rcx, qword [rsp + 0xe8]
mov qword [rsp + 0x100], rcx
mov byte [rsp + 0x108], 0
lea rsi, [rsp + 0x5c0]
movdqu xmm0, xmmword [rsi]
movdqu xmmword [rsp + 0x109], xmm0
mov rcx, qword [rsi + 0xf]
mov qword [rsp + 0x118], rcx
mov qword [rsp + 0x128], rax
mov r8, qword [rsp + 0x20]
mov qword [rsp + 0x130], r8
mov rax, qword [rsp + 0xe0]
mov qword [rsp + 0x138], rax
mov rax, qword [rsp + 0x4f0]
mov qword [rsp + 0x140], rax
mov edx, 1
mov rcx, rsi
call fcn.14005a384
cmp dword [rsi], 3
je case.0x1400103bc.3
lea rcx, [rsp + 0x100]
mov rax, qword [rsp + 0x5d0]
mov qword [rsp + 0x190], rax
movdqu xmm0, xmmword [rsp + 0x5c0]
movdqa xmmword [rsp + 0x180], xmm0
cmp qword [rcx - 8], 0
je 0x14000f8aa
mov eax, dword [0x14008fbbc]
mov rcx, qword gs:[0x58]
mov rax, qword [rcx + rax*8]
movzx eax, byte [rax + 0x108]
test rax, rax
je 0x14000f91e
cmp eax, 1
je 0x14000f94b
jmp case.0x1400103bc.3
lea rax, [rsp + 0x5c0]
lea rdx, [rsp + 0x850]
mov ecx, 0xa
mov rdi, rax
mov rsi, rdx
rep movsq qword [rdi], qword [rsi]
mov cl, byte [rdx + 0x50]
mov byte [rax + 0x50], cl
mov byte [rax + 0x51], 0
lea rcx, [rsp + 0x612]
lea rdx, [rsp + 0x8a2]
mov r8d, 0x22e
call fcn.140070050
mov eax, dword [0x14008fbbc]
mov rcx, qword gs:[0x58]
mov rax, qword [rcx + rax*8]
movzx eax, byte [rax + 0x108]
test rax, rax
je 0x14000fc24
cmp eax, 1
je 0x14000fc51
jmp case.0x1400103bc.3
mov eax, dword [0x14008fbbc]
mov rcx, qword gs:[0x58]
mov rax, qword [rcx + rax*8]
lea rsi, [rax + 0xb8]
lea rdx, [0x140055f18]
mov rcx, rsi
call fcn.14004b921
mov byte [rsi + 0x50], 1
mov eax, dword [0x14008fbbc]
mov rcx, qword gs:[0x58]
mov rax, qword [rcx + rax*8]
cmp byte [rax + 0x106], 2
jne case.0x1400103bc.3
mov eax, dword [0x14008fbbc]
mov rcx, qword gs:[0x58]
mov r14, qword [rcx + rax*8]
mov byte [r14 + 0x106], 1
cmp qword [rsp + 0x128], 0
mov eax, 0x150
mov ecx, 0x1b0
cmove rcx, rax
add rcx, qword [rsp + 0x130]
call fcn.14005951e
mov esi, eax
mov edi, edx
cmp dword [r14 + 0xf8], 0
je 0x14000f9c8
mov ebx, dword [r14 + 0xfc]
mov ebp, dword [r14 + 0x100]
jmp 0x14000f9df
call fcn.140052526
mov rbx, rax
shr rbx, 0x20
cmp eax, 2
mov ebp, 1
cmovae ebp, eax
mov eax, dword [0x14008fbbc]
mov rcx, qword gs:[0x58]
mov rax, qword [rcx + rax*8]
lea rdx, [rax + 0xb8]
mov dword [rdx + 0x40], 1
mov dword [rdx + 0x44], esi
mov dword [rdx + 0x48], edi
mov r8, qword [rsp + 0x128]
mov r9, qword [rsp + 0x130]
lea rsi, [rsp + 0x5c0]
mov rcx, rsi
call fcn.14005960a
mov dword [rsi + 0x18], ebx
mov dword [rsi + 0x1c], ebp
mov rax, qword [rsi]
movdqu xmm0, xmmword [rsi + 8]
movdqa xmmword [rsp + 0x250], xmm0
mov rcx, qword [rsi + 0x18]
mov qword [rsp + 0x260], rcx
cmp rax, 4
je case.0x1400103bc.3
mov rcx, qword [rsp + 0x260]
mov qword [rsp + 0x1b0], rcx
movdqa xmm0, xmmword [rsp + 0x250]
movdqa xmmword [rsp + 0x1a0], xmm0
cmp rax, 3
je case.0x1400103bc.3
mov qword [rsp + 0x30], rax
movdqa xmm0, xmmword [rsp + 0x1a0]
movdqu xmmword [rsp + 0x38], xmm0
mov rax, qword [rsp + 0x1b0]
mov qword [rsp + 0x48], rax
lea rax, [rsp + 0x250]
lea rdx, [rsp + 0x850]
mov ecx, 0xa
mov rdi, rax
mov rsi, rdx
rep movsq qword [rdi], qword [rsi]
mov cl, byte [rdx + 0x50]
mov byte [rax + 0x50], cl
mov byte [rax + 0x51], 0
lea rcx, [rsp + 0x2a2]
lea rdx, [rsp + 0x8a2]
mov r8d, 0x22e
call fcn.140070050
call fcn.1400529b7
test rax, rax
je 0x140011a66
mov qword [rsp + 0xa0], rax
mov qword [rsp + 0xa8], rdx
lea rsi, [rsp + 0x200]
lea rax, [rsp + 0xa0]
mov qword [rsi], rax
mov qword [rsi + 8], rax
mov qword [rsi + 0x10], 0
lea rdi, [rsp + 0x5c0]
lea rdx, [rsp + 0x250]
mov r8d, 0x280
mov rcx, rdi
call fcn.140070050
lea rbx, [0x140055f18]
mov eax, dword [0x14008fbbc]
mov rcx, qword gs:[0x58]
mov rax, qword [rcx + rax*8]
movzx eax, byte [rax + 0x108]
test rax, rax
je 0x14000fb7a
cmp eax, 1
je 0x14000fba4
mov rcx, rdi
mov rdx, rsi
call fcn.140011a75
test al, al
jne 0x14000fbeb
jmp 0x14000fbf5
mov eax, dword [0x14008fbbc]
mov rcx, qword gs:[0x58]
mov rax, qword [rcx + rax*8]
lea r14, [rax + 0xb8]
mov rcx, r14
mov rdx, rbx
call fcn.14004b921
mov byte [r14 + 0x50], 1
mov eax, dword [0x14008fbbc]
mov rcx, qword gs:[0x58]
mov rax, qword [rcx + rax*8]
mov bpl, byte [rax + 0x104]
mov r14b, byte [rax + 0x105]
mov word [rax + 0x104], 0x8001
mov rcx, rdi
mov rdx, rsi
call fcn.140011a75
mov r15d, eax
mov ecx, ebp
mov edx, r14d
call fcn.14005827c
test r15b, r15b
je 0x14000fbf5
call case.0x1400406f4.297
jmp 0x14000fb45
lea rcx, [rsp + 0x5c0]
call fcn.1400021c8
mov rax, qword [rsp + 0xa0]
mov rcx, qword [rsp + 0xa8]
call qword [rax + 0x18]
lea rcx, [rsp + 0x30]
call fcn.140002632
jmp 0x140010eeb
mov eax, dword [0x14008fbbc]
mov rcx, qword gs:[0x58]
mov rax, qword [rcx + rax*8]
lea rsi, [rax + 0xb8]
lea rdx, [0x140055f18]
mov rcx, rsi
call fcn.14004b921
mov byte [rsi + 0x50], 1
mov eax, dword [0x14008fbbc]
mov rcx, qword gs:[0x58]
mov rax, qword [rcx + rax*8]
cmp byte [rax + 0x106], 2
jne case.0x1400103bc.3
mov eax, dword [0x14008fbbc]
mov rcx, qword gs:[0x58]
mov r14, qword [rcx + rax*8]
mov byte [r14 + 0x106], 0
cmp qword [rsp + 0x128], 0
mov eax, 0x150
mov ecx, 0x1b0
cmove rcx, rax
add rcx, qword [rsp + 0x130]
call fcn.14005951e
mov esi, eax
mov edi, edx
cmp dword [r14 + 0xf8], 0
je 0x14000fcce
mov ebx, dword [r14 + 0xfc]
mov ebp, dword [r14 + 0x100]
jmp 0x14000fce5
call fcn.140052526
mov rbx, rax
shr rbx, 0x20
cmp eax, 2
mov ebp, 1
cmovae ebp, eax
mov eax, dword [0x14008fbbc]
mov rcx, qword gs:[0x58]
mov rax, qword [rcx + rax*8]
lea rdx, [rax + 0xb8]
mov dword [rdx + 0x40], 1
mov dword [rdx + 0x44], esi
mov dword [rdx + 0x48], edi
mov r8, qword [rsp + 0x128]
mov r9, qword [rsp + 0x130]
lea rsi, [rsp + 0x250]
mov rcx, rsi
call fcn.14005960a
mov dword [rsi + 0x18], ebx
mov dword [rsi + 0x1c], ebp
mov rax, qword [rsi]
movdqu xmm0, xmmword [rsi + 8]
movdqa xmmword [rsp + 0x200], xmm0
mov rcx, qword [rsi + 0x18]
mov qword [rsp + 0x210], rcx
cmp rax, 4
je case.0x1400103bc.3
mov rcx, qword [rsp + 0x210]
mov qword [rsp + 0x1f0], rcx
movdqa xmm0, xmmword [rsp + 0x200]
movdqa xmmword [rsp + 0x1e0], xmm0
cmp rax, 3
je case.0x1400103bc.3
mov qword [rsp + 0x4d0], rax
movdqa xmm0, xmmword [rsp + 0x1e0]
movdqu xmmword [rsp + 0x4d8], xmm0
mov rax, qword [rsp + 0x1f0]
mov qword [rsp + 0x4e8], rax
cmp qword [rsp + 0x128], 0
jne case.0x1400103bc.3
lea r14, [rsp + 0x260]
xorps xmm6, xmm6
xor eax, eax
xchg qword [rsp + 0x120], rax
test rax, rax
jne 0x140010538
mov qword [rsp + 0x200], 2
mov rax, qword [rsp + 0x100]
shr rax, 2
lea rcx, [rsp + 0x100]
mov qword [rsp + 0x250], rcx
mov qword [rsp + 0x258], rax
movups xmmword [r14 + 0x19], xmm6
movups xmmword [r14 + 0x10], xmm6
movups xmmword [r14], xmm6
mov eax, dword [rsp + 0xa0]
mov ecx, dword [rsp + 0xa3]
mov dword [r14 + 0x2c], ecx
mov dword [r14 + 0x29], eax
call fcn.1400529b7
test rax, rax
je case.0x1400103bc.3
mov qword [rsp + 0x1a0], rax
mov qword [rsp + 0x1a8], rdx
lea rax, [rsp + 0x1a0]
mov qword [rsp + 0x30], rax
mov qword [rsp + 0x38], rax
mov qword [rsp + 0x40], 0
mov eax, dword [0x14008fbbc]
mov rcx, qword gs:[0x58]
mov rax, qword [rcx + rax*8]
movzx eax, byte [rax + 0x108]
test rax, rax
je 0x14000fe92
mov bpl, 2
cmp eax, 1
je 0x14000febf
jmp 0x14000fee9
mov eax, dword [0x14008fbbc]
mov rcx, qword gs:[0x58]
mov rax, qword [rcx + rax*8]
lea rsi, [rax + 0xb8]
mov rcx, rsi
lea rdx, [0x140055f18]
call fcn.14004b921
mov byte [rsi + 0x50], 1
mov eax, dword [0x14008fbbc]
mov rcx, qword gs:[0x58]
mov rax, qword [rcx + rax*8]
mov bpl, byte [rax + 0x104]
mov r13b, byte [rax + 0x105]
mov word [rax + 0x104], 0x8001
mov r15, qword [rsp + 0x30]
mov rbx, qword [rsp + 0x250]
lea r12, [rbx + 8]
lea rdi, [rbx + 0x18]
movzx eax, byte [rsp + 0x288]
test rax, rax
jne 0x14000fff7
mov rcx, qword [rbx]
and rcx, 0xfffffffffffffffc
lea rax, [rcx + 2]
lock cmpxchg qword [rbx], rcx
jne 0x14000ff2b
mov byte [rsp + 0x288], 2
jmp 0x14000fefe
mov rax, qword [r15]
mov rcx, qword [r15 + 8]
call qword [rax]
mov r14, rax
mov rsi, rdx
xor eax, eax
mov cl, 1
lock cmpxchg byte [r12], cl
jne 0x140010093
mov rcx, qword [rbx]
mov rax, rcx
shr rax, 2
cmp rax, qword [rsp + 0x258]
jne 0x14000ffca
mov rax, rcx
and rax, 3
je 0x14000ff93
cmp eax, 2
jne 0x140010151
and rcx, 0xfffffffffffffffc
lea rax, [rcx + 2]
lock cmpxchg qword [rbx], rcx
je 0x14000ffca
mov rcx, rax
not eax
or rax, 0xfffffffffffffffc
cmp rax, 0xffffffffffffffff
je 0x14000ff5e
jmp case.0x1400103bc.3
not rcx
or rcx, 3
mov rax, rcx
not rax
neg rcx
lock cmpxchg qword [rbx], rcx
je 0x14001015a
mov rcx, rax
xor rax, 0xfffffffffffffffc
mov rdx, rcx
or rdx, 3
and rdx, rax
cmp rdx, 2
je 0x14000ff5e
jmp case.0x1400103bc.3
mov byte [rsp + 0x288], 2
mov al, 1
xor ecx, ecx
lock cmpxchg byte [r12], cl
jne 0x1400100a0
test r14, r14
je 0x14000fefe
mov rcx, rsi
call qword [r14 + 0x18]
jmp 0x14000fefe
cmp eax, 1
jne 0x140010232
mov rax, qword [rsp + 0x280]
test rax, rax
lea r14, [rsp + 0x260]
jne 0x140010249
xor eax, eax
mov cl, 1
lock cmpxchg byte [r12], cl
jne 0x14001013a
mov rax, qword [rsp + 0x280]
test rax, rax
jne 0x140010294
mov rax, qword [rbx]
shr rax, 2
mov rsi, qword [rsp + 0x270]
cmp rax, qword [rsp + 0x258]
je 0x1400102fc
mov rax, qword [rsp + 0x260]
mov rcx, qword [rsp + 0x278]
mov qword [rsp + 0x20], rcx
mov qword [rsp + 0x270], 0
test rax, rax
je 0x1400100ad
mov rcx, qword [rsp + 0x268]
mov qword [rax + 8], rcx
mov rax, qword [rsp + 0x268]
jmp 0x1400100d8
mov rcx, r12
call fcn.140072cd8
jmp 0x14000ff4a
mov rcx, r12
call fcn.140072fcf
jmp 0x14000ffe2
mov rax, qword [rbx + 0x10]
test rax, rax
sete cl
cmp rax, r14
setne al
sete dl
and dl, cl
xor al, cl
add al, cl
sub al, dl
test al, 1
jne 0x140010110
mov rax, qword [rsp + 0x268]
mov qword [rbx + 0x10], rax
test rax, rax
jne 0x140010101
mov rcx, qword [rdi]
test rcx, rcx
sete dl
setne al
cmp rcx, r14
setne r8b
sete cl
cmp dl, r8b
jne 0x140010110
or al, cl
xor al, 1
mov rax, rdi
clc
jne 0x140010110
mov rcx, qword [rsp + 0x260]
mov qword [rax], rcx
or byte [rcx + 0xf], al
adc dword [rsi], esi
mov byte [rsp + 0x288], 2
mov al, 1
xor ecx, ecx
lock cmpxchg byte [r12], cl
mov al, 0xc
invalid
jne 0x140010147
test rsi, rsi
je 0x14000fefe
invalid
invalid
mov rcx, qword [rsp + 0x20]
call qword [rsi + 0x18]
push rsi
sbb cl, ch
invalid
std
invalid
invalid
mov rcx, r12
call fcn.140072cd8
jmp 0x140010029
mov rcx, r12
call fcn.140072fcf
jmp 0x140010124
cmp eax, 1
jne case.0x1400103bc.3
test r14, r14
je 0x140010181
mov r15, qword [rsp + 0x270]
mov r8, qword [rsp + 0x278]
mov qword [rsp + 0x270], r14
mov qword [rsp + 0x278], rsi
jmp 0x140010184
xor r15d, r15d
mov rax, qword [rbx + 0x10]
test rax, rax
setne cl
lea r14, [rsp + 0x260]
cmp rax, r14
setne dl
cmp cl, dl
je 0x1400101a9
test rax, rax
jne case.0x1400103bc.3
mov qword [rsp + 0x268], rax
mov qword [rsp + 0x260], 0
test rax, rax
test eax, eax
je 0x1400101c5
mov qword [rax], r14
mov qword [rbx + 0x10], r14
cmp qword [rbx + 0x18], 0
jnp 0x1400101e5
add byte [rcx + rcx*4 - 0x3a], cl
jne 0x1400101d6
mov qword [rdi], r14
mov byte [rsp + 0x288], 1
mov al, 1
xor ecx, ecx
lock cmpxchg byte [r12], cl
jne 0x14001023f
test r15, r15
je 0x1400101f6
mov rcx, rsi
call qword [r15 + 0x18]
lea rcx, [rsp + 0x5c0]
lea rdx, [rsp + 0x30]
call fcn.140011a75
mov r12d, eax
inc r12b
cmp bpl, 2
je 0x14001021e
invalid
mov ecx, ebp
mov edx, r13d
call fcn.14005827c
cmp r12b, 2
jne 0x140010359
call case.0x1400406f4.297
jmp 0x14000fe69
xor r12d, r12d
lea r14, [rsp + 0x260]
jmp case.0x140008522.109
iretd
mov rcx, r12
call fcn.140072fcf
mov byte [0xe1ec024f], ch
cmp rax, 5
ja case.0x1400103bc.3
mov ecx, 0x26
bt rcx, rax
invalid
ror dword [rdi], 0x83
add bl, byte [rax]
sbb byte [rax], al
invalid
mov rax, qword [rsp + 0x270]
mov rcx, qword [rsp + 0x278]
mov qword [rsp + 0x270], 0
test rax, rax
je 0x140010286
call qword [rax + 0x18]
mov qword [rsp + 0x280], 0
jmp 0x1400102ec
cmp rax, 5
ja case.0x1400103bc.3
mov ecx, 0x26
bt rcx, rax
jae case.0x1400103bc.3
mov rdi, qword [rsp + 0x270]
mov rsi, qword [rsp + 0x278]
mov qword [rsp + 0x270], 0
mov qword [rsp + 0x280], 0
mov dword [rsp + 0x280], 0
mov al, 1
xor ecx, ecx
lock cmpxchg byte [r12], cl
jne 0x14001034f
test rdi, rdi
je 0x1400102ec
mov rcx, rsi
call qword [rdi + 0x18]
mov byte [rsp + 0x288], 2
xor r12d, r12d
jmp case.0x140008522.109
mov rax, qword [r15]
test rsi, rsi
je 0x140010324
mov rcx, qword [r15 + 8]
cmp qword [rsp + 0x278], rcx
jne 0x140010328
cmp rsi, rax
jne 0x140010328
xor r15d, r15d
mov rsi, qword [rsp + 0x20]
jmp 0x1400101de
mov rcx, qword [r15 + 8]
call qword [rax]
mov r15, qword [rsp + 0x270]
mov rsi, qword [rsp + 0x278]
mov qword [rsp + 0x270], rax
mov qword [rsp + 0x278], rdx
jmp 0x1400101de
mov rcx, r12
call fcn.140072fcf
jmp 0x1400102e1
mov rax, qword [rsp + 0x1a0]
mov rcx, qword [rsp + 0x1a8]
call qword [rax + 0x18]
cmp byte [rsp + 0x288], 1
jne 0x1400104d3
mov r13, qword [rsp + 0x250]
lea r15, [r13 + 8]
xor eax, eax
mov cl, 1
lock cmpxchg byte [r13 + 8], cl
jne 0x140010514
mov r8, qword [r13]
mov rcx, qword [rsp + 0x280]
cmp rcx, 5
ja case.0x1400103bc.3
mov al, 1
lea rdx, [0x14008040c]
movsxd rcx, dword [rdx + rcx*4]
add rcx, rdx
jmp rcx
xor r9d, r9d
jmp 0x1400103c9
mov r9d, 1
xor eax, eax
lea rcx, [r13 + 0x10]
mov rdx, qword [rsp + 0x260]
test rdx, rdx
je 0x1400103f2
mov r10, qword [rsp + 0x268]
mov qword [rdx + 8], r10
mov rdx, qword [rsp + 0x268]
jmp 0x140010421
mov r10, qword [rcx]
test r10, r10
sete r11b
setne dl
cmp r10, r14
setne bl
sete r10b
cmp r11b, bl
jne 0x140010454
or dl, r10b
xor dl, 1
jne 0x140010454
mov rdx, qword [rsp + 0x268]
mov qword [rcx], rdx
test rdx, rdx
jne 0x140010445
mov r10, qword [r13 + 0x18]
test r10, r10
sete dl
cmp r10, r14
setne r10b
test dl, r10b
jne 0x140010454
xor dl, r10b
jne 0x140010454
lea rdx, [r13 + 0x18]
mov r10, qword [rsp + 0x260]
mov qword [rdx], r10
movups xmmword [r14], xmm6
mov rdx, qword [r13 + 0x10]
test rdx, rdx
jne 0x140010468
cmp qword [r13 + 0x18], 0
jne case.0x1400103bc.3
test rdx, rdx
jne 0x14001048e
mov rdx, r8
not rdx
or rdx, 3
add rdx, r8
inc rdx
cmp rdx, 1
jne 0x14001048e
and r8, 0xfffffffffffffffc
mov rdx, r8
xchg qword [r13], rdx
test al, al
jne 0x1400104c0
mov rdx, r13
call fcn.14005599b
test rax, rax
je 0x1400104c0
mov rsi, rax
mov r14, rdx
mov al, 1
xor ecx, ecx
lock cmpxchg byte [r15], cl
jne 0x14001052b
mov rcx, r14
call qword [rsi + 8]
lea r14, [rsp + 0x260]
jmp 0x1400104d3
mov al, 1
xor ecx, ecx
lock cmpxchg byte [r15], cl
lea r14, [rsp + 0x260]
jne 0x140010521
test r12b, r12b
jne 0x140010673
mov rax, qword [rsp + 0x270]
test rax, rax
je 0x1400104f4
mov rcx, qword [rsp + 0x278]
call qword [rax + 0x18]
cmp dword [rsp + 0x200], 2
je 0x14000fdc9
lea rcx, [rsp + 0x200]
call fcn.14000268a
jmp 0x14000fdc9
mov rcx, r15
call fcn.140072cd8
jmp 0x140010396
mov rcx, r15
call fcn.140072fcf
jmp 0x1400104d3
mov rcx, r15
call fcn.140072fcf
jmp 0x1400104b0
mov rcx, qword [rsp + 0x130]
lock inc qword [rcx]
jle case.0x1400103bc.3
pxor xmm0, xmm0
lea rdx, [rsp + 0x220]
movdqu xmmword [rdx], xmm0
lea rsi, [rsp + 0x200]
mov qword [rsi + 0x30], 8
xor edx, edx
mov qword [rsi + 0x38], rdx
mov qword [rsi], rdx
mov qword [rsi + 8], rcx
mov qword [rsi + 0x10], rdx
mov qword [rsi + 0x18], rax
lea rax, [rsp + 0x100]
mov qword [rsi + 0x40], rax
lea r15, [rsp + 0x250]
mov ecx, 9
mov rdi, r15
rep movsq qword [rdi], qword [rsi]
call fcn.14004d341
test rax, rax
je case.0x1400103bc.3
mov qword [rsp + 0x30], rax
lock dec qword [rax]
jne 0x1400105c1
lea rcx, [rsp + 0x30]
call fcn.14004bfe3
cmp qword [rsp + 0x250], 0
jne case.0x1400103bc.3
cmp qword [rsp + 0x260], 0
jne case.0x1400103bc.3
mov qword [rsp + 0x260], 0xffffffffffffffff
mov r14, qword [rsp + 0x268]
mov qword [rsp + 0x268], 0
test r14, r14
je case.0x1400103bc.3
lea rbx, [rsp + 0x258]
mov qword [rbx + 8], 0
mov qword [rsp + 0x80], r15
lea rax, [rsp + 0x5c0]
mov qword [rsp + 0x88], rax
mov qword [rsp + 0x90], r14
mov qword [rsp + 0x98], rbx
mov eax, dword [0x14008fbbc]
mov rcx, qword gs:[0x58]
mov rax, qword [rcx + rax*8]
movzx eax, byte [rax + 0x108]
test rax, rax
je 0x1400106ab
cmp eax, 1
je 0x1400106d8
lea rcx, [rsp + 0x90]
call fcn.1400033d6
ud2
mov rax, qword [rsp + 0x270]
test rax, rax
je 0x14001068b
mov rcx, qword [rsp + 0x278]
call qword [rax + 0x18]
cmp dword [rsp + 0x200], 2
je 0x140010ed1
lea rcx, [rsp + 0x200]
call fcn.14000268a
jmp 0x140010ed1
mov eax, dword [0x14008fbbc]
mov rcx, qword gs:[0x58]
mov rax, qword [rcx + rax*8]
lea rdi, [rax + 0xb8]
lea rdx, [0x140055f18]
mov rcx, rdi
call fcn.14004b921
mov byte [rdi + 0x50], 1
lea rdx, [rsp + 0x268]
mov eax, dword [0x14008fbbc]
mov rcx, qword gs:[0x58]
mov rax, qword [rcx + rax*8]
mov rcx, qword [rax + 0xf0]
mov qword [rsp + 0x20], rcx
mov qword [rax + 0xf0], r15
mov rax, qword [rdx - 0x10]
lea rcx, [rax + 0x10]
mov byte [rax + 0xb8], 1
lea rdx, [0x14007f530]
lea r8, [rsp + 0x840]
mov qword [r8], rdx
mov qword [r8 + 8], rcx
lea rcx, [rsp + 0xa0]
mov qword [rcx], r8
mov qword [rcx + 8], r8
mov qword [rcx + 0x10], 0
lea r15, [rsp + 0x268]
lea r13, [0x140055f18]
xor ecx, ecx
xchg byte [rax + 0xb8], cl
test cl, cl
je 0x1400108ae
cmp qword [rsp + 0x260], 0
jne case.0x1400103bc.3
mov qword [rsp + 0x260], 0xffffffffffffffff
cmp qword [rsp + 0x268], 0
je 0x14001079c
mov rcx, r15
call fcn.1400033d6
mov rax, qword [rsp + 0x260]
inc rax
jmp 0x14001079e
xor eax, eax
mov qword [rsp + 0x268], r14
mov qword [rsp + 0x260], rax
mov eax, dword [0x14008fbbc]
mov rcx, qword gs:[0x58]
mov rax, qword [rcx + rax*8]
movzx eax, byte [rax + 0x108]
test rax, rax
je 0x1400107ec
cmp eax, 1
je 0x140010815
lea rcx, [rsp + 0x5c0]
lea rdx, [rsp + 0xa0]
call fcn.140011a75
mov r12d, eax
jmp 0x140010861
mov eax, dword [0x14008fbbc]
mov rcx, qword gs:[0x58]
mov rax, qword [rcx + rax*8]
lea rdi, [rax + 0xb8]
mov rcx, rdi
mov rdx, r13
call fcn.14004b921
mov byte [rdi + 0x50], 1
mov eax, dword [0x14008fbbc]
mov rcx, qword gs:[0x58]
mov rax, qword [rcx + rax*8]
mov dil, byte [rax + 0x104]
mov r14b, byte [rax + 0x105]
mov word [rax + 0x104], 0x8001
lea rcx, [rsp + 0x5c0]
lea rdx, [rsp + 0xa0]
call fcn.140011a75
mov r12d, eax
mov ecx, edi
mov edx, r14d
call fcn.14005827c
cmp qword [rsp + 0x260], 0
jne case.0x1400103bc.3
mov qword [rsp + 0x260], 0xffffffffffffffff
mov r14, qword [rsp + 0x268]
mov qword [rsp + 0x268], 0
test r14, r14
je case.0x1400103bc.3
mov qword [rsp + 0x260], 0
test r12b, r12b
je 0x140011a3a
mov r8, qword [rsp + 0x258]
mov ebp, dword [r8 + 0x40]
test ebp, ebp
je 0x140010aee
xor esi, esi
cmp byte [r14 + 0x68], 0
jne 0x140010e50
mov eax, dword [r14 + 0x60]
mov r8d, dword [r14 + 0x64]
mov ecx, eax
and ecx, 1
or eax, 1
add eax, ecx
mov dword [r14 + 0x60], eax
test r8d, r8d
je case.0x1400103bc.3
mov rcx, qword [rsp + 0x258]
xor edx, edx
div r8d
test edx, edx
je 0x14001093c
mov rdx, qword [r14 + 0x58]
test rdx, rdx
je 0x140010995
mov rcx, qword [r14 + 0x40]
mov rax, qword [r14 + 0x50]
lea r8, [rax + 1]
cmp r8, rcx
mov r8d, 0
cmovae r8, rcx
neg r8
lea rcx, [rax + r8]
inc rcx
mov qword [r14 + 0x50], rcx
dec rdx
mov qword [r14 + 0x58], rdx
jmp 0x14001098b
add rcx, 0x90
call fcn.140056e73
mov r12, rax
test rax, rax
jne 0x1400109ad
mov rcx, qword [r14 + 0x58]
test rcx, rcx
je 0x140010b0d
mov rdx, qword [r14 + 0x40]
mov rax, qword [r14 + 0x50]
lea r8, [rax + 1]
cmp r8, rdx
mov r8d, 0
cmovae r8, rdx
neg r8
lea rdx, [rax + r8]
inc rdx
mov qword [r14 + 0x50], rdx
dec rcx
mov qword [r14 + 0x58], rcx
mov rcx, qword [r14 + 0x48]
mov r12, qword [rcx + rax*8]
jmp 0x1400109ad
add rcx, 0x90
call fcn.140056e73
mov r12, rax
test rax, rax
je 0x140010b0d
cmp qword [rsp + 0x260], 0
jne case.0x1400103bc.3
mov qword [rsp + 0x260], 0xffffffffffffffff
cmp qword [rsp + 0x268], 0
je 0x1400109e8
mov rcx, r15
call fcn.1400033d6
mov rax, qword [rsp + 0x260]
inc rax
jmp 0x1400109ea
xor eax, eax
mov qword [rsp + 0x268], r14
mov qword [rsp + 0x260], rax
mov eax, dword [0x14008fbbc]
mov rcx, qword gs:[0x58]
mov rax, qword [rcx + rax*8]
movzx eax, byte [rax + 0x108]
test rax, rax
je 0x140010a23
mov r14b, 2
cmp eax, 1
je 0x140010a4c
jmp 0x140010a76
mov eax, dword [0x14008fbbc]
mov rcx, qword gs:[0x58]
mov rax, qword [rcx + rax*8]
lea rdi, [rax + 0xb8]
mov rcx, rdi
mov rdx, r13
call fcn.14004b921
mov byte [rdi + 0x50], 1
mov eax, dword [0x14008fbbc]
mov rcx, qword gs:[0x58]
mov rax, qword [rcx + rax*8]
mov r14b, byte [rax + 0x104]
mov dil, byte [rax + 0x105]
mov word [rax + 0x104], 0x8001
mov rax, qword [r12 + 0x10]
mov rcx, r12
call qword [rax]
cmp r14b, 2
je 0x140010a90
mov ecx, r14d
mov edx, edi
call fcn.14005827c
cmp qword [rsp + 0x260], 0
jne case.0x1400103bc.3
mov qword [rsp + 0x260], 0xffffffffffffffff
mov r14, qword [rsp + 0x268]
mov qword [rsp + 0x268], 0
test r14, r14
je case.0x1400103bc.3
mov eax, esi
and eax, 1
or esi, 1
add esi, eax
mov qword [rsp + 0x260], 0
cmp esi, ebp
jne 0x1400108c4
mov r8, qword [rsp + 0x258]
add r8, 0x10
mov rcx, rbx
mov rdx, r14
call fcn.14005a806
mov r14, rax
mov rax, qword [rsp + 0x258]
jmp 0x140010751
movabs rax, 0x7ffffffffffffff8
add rax, 7
cmp qword [rsp + 0x270], rax
jae case.0x1400103bc.3
cmp qword [rsp + 0x288], 0
mov r12, qword [rsp + 0x258]
je 0x140010b4b
add r12, 0x10
mov rcx, rbx
mov rdx, r14
mov r8, r12
jmp 0x140010af8
mov rax, qword [r14]
mov qword [r14], 2
cmp rax, 2
je case.0x1400103bc.3
mov qword [rsp + 0x1a0], rax
mov rax, qword [r14 + 0x38]
lea rcx, [rsp + 0x1a8]
mov qword [rcx + 0x30], rax
movups xmm0, xmmword [r14 + 8]
movups xmm1, xmmword [r14 + 0x18]
movups xmm2, xmmword [r14 + 0x28]
movups xmmword [rcx + 0x20], xmm2
movups xmmword [rcx + 0x10], xmm1
movups xmmword [rcx], xmm0
mov rax, qword [r12 + 0x20]
test rax, rax
je 0x140010c58
cmp qword [rsp + 0x260], 0
jne case.0x1400103bc.3
mov qword [rsp + 0x260], 0xffffffffffffffff
mov rcx, qword [rsp + 0x268]
test rcx, rcx
je 0x140010be8
call fcn.140059073
mov rax, qword [rsp + 0x260]
mov ecx, eax
and ecx, 1
xor rax, 1
lea rcx, [rax + rcx*2]
mov rax, qword [r12 + 0x20]
jmp 0x140010bea
xor ecx, ecx
mov qword [rsp + 0x268], r14
mov qword [rsp + 0x260], rcx
mov rdx, qword [r12 + 0x28]
mov rcx, qword [rdx + 0x10]
dec rcx
and rcx, 0xfffffffffffffff0
add rcx, rax
add rcx, 0x10
call qword [rdx + 0x28]
cmp qword [rsp + 0x260], 0
jne case.0x1400103bc.3
mov qword [rsp + 0x260], 0xffffffffffffffff
mov r14, qword [rsp + 0x268]
mov qword [rsp + 0x268], 0
test r14, r14
je case.0x1400103bc.3
mov qword [rsp + 0x260], 0
cmp qword [r14 + 0x58], 0
jne 0x140010d15
cmp qword [rsp + 0x260], 0
jne case.0x1400103bc.3
mov qword [rsp + 0x260], 0xffffffffffffffff
mov rcx, qword [rsp + 0x268]
test rcx, rcx
je 0x140010c9d
call fcn.140059073
mov rax, qword [rsp + 0x260]
inc rax
jmp 0x140010c9f
xor eax, eax
mov qword [rsp + 0x268], r14
mov qword [rsp + 0x260], rax
lea rdx, [r12 + 0xc0]
lea rcx, [rsp + 0x1a0]
call fcn.14005a169
lea rcx, [rsp + 0x270]
call fcn.140058c1b
cmp qword [rsp + 0x260], 0
jne case.0x1400103bc.3
mov qword [rsp + 0x260], 0xffffffffffffffff
mov r14, qword [rsp + 0x268]
mov qword [rsp + 0x268], 0
test r14, r14
je case.0x1400103bc.3
mov qword [rsp + 0x260], 0
mov rax, qword [r12 + 0x30]
test rax, rax
je 0x140010de0
cmp qword [rsp + 0x260], 0
jne case.0x1400103bc.3
mov qword [rsp + 0x260], 0xffffffffffffffff
mov rcx, qword [rsp + 0x268]
test rcx, rcx
je 0x140010d62
call fcn.140059073
mov rcx, qword [rsp + 0x260]
inc rcx
mov rax, qword [r12 + 0x30]
jmp 0x140010d64
xor ecx, ecx
mov qword [rsp + 0x268], r14
mov qword [rsp + 0x260], rcx
mov rdx, qword [r12 + 0x38]
mov rcx, qword [rdx + 0x10]
mov r8, rcx
not r8
lea rcx, [r8 + rcx*2]
mov r8, rcx
xor r8, 0xf
and r8, rcx
lea rcx, [r8 + rax]
add rcx, 0x10
call qword [rdx + 0x28]
cmp qword [rsp + 0x260], 0
jne case.0x1400103bc.3
mov qword [rsp + 0x260], 0xffffffffffffffff
mov r14, qword [rsp + 0x268]
mov qword [rsp + 0x268], 0
test r14, r14
je case.0x1400103bc.3
mov qword [rsp + 0x260], 0
movups xmm0, xmmword [rsp + 0x1a0]
movups xmm1, xmmword [rsp + 0x1b0]
movups xmm2, xmmword [rsp + 0x1c0]
movups xmm3, xmmword [rsp + 0x1d0]
movaps xmmword [rsp + 0x60], xmm3
movaps xmmword [rsp + 0x50], xmm2
movaps xmmword [rsp + 0x40], xmm1
movaps xmmword [rsp + 0x30], xmm0
cmp dword [r14], 2
je 0x140010e22
mov rcx, r14
call fcn.140057f6c
movdqa xmm0, xmmword [rsp + 0x30]
movaps xmm1, xmmword [rsp + 0x40]
movaps xmm2, xmmword [rsp + 0x50]
movaps xmm3, xmmword [rsp + 0x60]
movups xmmword [r14 + 0x30], xmm3
movups xmmword [r14 + 0x20], xmm2
movups xmmword [r14 + 0x10], xmm1
movdqu xmmword [r14], xmm0
jmp 0x140010b00
cmp qword [rsp + 0x260], 0
mov eax, dword [0x14008fbbc]
mov rcx, qword gs:[0x58]
mov rax, qword [rcx + rax*8]
mov rcx, qword [rsp + 0x20]
mov qword [rax + 0xf0], rcx
jne case.0x1400103bc.3
xor esi, esi
mov qword [rsp + 0x260], 0xffffffffffffffff
cmp qword [rsp + 0x268], 0
je 0x140010eb1
lea rcx, [rsp + 0x268]
call fcn.1400033d6
mov rax, qword [rsp + 0x260]
inc rax
jmp 0x140010eb3
xor eax, eax
lea rcx, [rsp + 0x250]
mov qword [rcx + 0x18], r14
mov qword [rcx + 0x10], rax
call fcn.14000268a
test sil, sil
je case.0x1400103bc.3
lea rcx, [rsp + 0x4d0]
call fcn.140002632
lea rcx, [rsp + 0x5c0]
call fcn.1400021c8
lea rsi, [rsp + 0x180]
mov rdx, qword [rsi + 0x10]
mov rcx, rsi
call fcn.140057ff7
mov rax, qword [rsi]
cmp rax, 2
je 0x140010f3d
lea rcx, [rsp + 0x188]
test rax, rax
je 0x140010f2a
mov rax, qword [rsp + 0x188]
lock dec qword [rax]
jne 0x140010f3d
call fcn.140057838
jmp 0x140010f3d
mov rax, qword [rsp + 0x188]
lock dec qword [rax]
jne 0x140010f3d
call fcn.1400577ad
cmp qword [rsp + 0xf8], 0
je 0x140010fa0
cmp qword [rsp + 0x128], 0
je case.0x1400103bc.3
mov rsi, qword [rsp + 0x130]
lea rdi, [rsi + 0xc8]
mov cl, 1
xor eax, eax
lock cmpxchg byte [rsi + 0xc8], cl
jne 0x1400119f6
cmp byte [rsi + 0xf8], 0
je 0x140011071
xor ecx, ecx
mov al, 1
lock cmpxchg byte [rdi], cl
je 0x1400112b8
mov rcx, rdi
call fcn.140072fcf
jmp 0x1400112b8
mov rdx, qword [rsp + 0x128]
mov r8, qword [rsp + 0x130]
lea rcx, [rsp + 0x200]
call fcn.14005a384
cmp qword [rsp + 0x128], 0
jne case.0x1400103bc.3
xor esi, esi
xchg qword [rsp + 0x120], rsi
test rsi, rsi
je case.0x1400103bc.3
mov rax, qword [rsp + 0x130]
lock inc qword [rax]
jle case.0x1400103bc.3
xor ecx, ecx
mov qword [rsp + 0x250], rcx
mov qword [rsp + 0x258], rax
mov qword [rsp + 0x260], rcx
mov qword [rsp + 0x268], rsi
pxor xmm0, xmm0
movdqu xmmword [rsp + 0x270], xmm0
mov qword [rsp + 0x280], 8
mov qword [rsp + 0x288], rcx
lea rax, [rsp + 0x100]
mov qword [rsp + 0x290], rax
mov eax, dword [0x14008fbbc]
mov rcx, qword gs:[0x58]
mov rax, qword [rcx + rax*8]
movzx eax, byte [rax + 0x108]
test rax, rax
je 0x1400110c4
cmp eax, 1
je 0x1400110f3
jmp 0x14001113d
mov byte [rsi + 0xf8], 1
xor ecx, ecx
mov al, 1
lock cmpxchg byte [rsi + 0xc8], cl
jne 0x140011a2d
mov rdi, qword [rsi + 0x60]
test rdi, rdi
je 0x1400112b8
mov rbx, qword [rsi + 0x58]
add rsi, 0x120
shl rdi, 4
xor r14d, r14d
mov rcx, qword [rbx + r14 + 8]
mov rdx, rsi
call fcn.140052aca
add r14, 0x10
cmp rdi, r14
jne 0x1400110a9
jmp 0x1400112b8
mov eax, dword [0x14008fbbc]
mov rcx, qword gs:[0x58]
mov rax, qword [rcx + rax*8]
lea rdi, [rax + 0xb8]
lea rdx, [0x140055f18]
mov rcx, rdi
call fcn.14004b921
mov byte [rdi + 0x50], 1
mov al, 1
mov ecx, dword [0x14008fbbc]
mov rdx, qword gs:[0x58]
mov rcx, qword [rdx + rcx*8]
movabs rdx, 0x7ffffffffffffff8
add rdx, 7
cmp qword [rcx + 0xb8], rdx
jae case.0x1400103bc.3
mov ecx, dword [0x14008fbbc]
mov rdx, qword gs:[0x58]
mov rcx, qword [rdx + rcx*8]
cmp dword [rcx + 0xc0], 2
jne 0x14001116a
mov rdx, qword [rsp + 0x130]
add rdx, 0x10
mov rcx, rsi
call fcn.1400590c3
lea rcx, [rsp + 0x250]
mov qword [rcx + 0x18], rsi
mov qword [rcx + 0x10], 0
jmp 0x14001129c
lea rbx, [rsp + 0x5c0]
lea rsi, [rsp + 0x250]
mov ecx, 9
mov rdi, rbx
rep movsq qword [rdi], qword [rsi]
cmp qword [rbx], 0
jne case.0x1400103bc.3
cmp qword [rsp + 0x5d0], 0
jne case.0x1400103bc.3
mov rsi, qword [rsp + 0x5d8]
mov qword [rsp + 0x5d8], 0
test rsi, rsi
je case.0x1400103bc.3
mov qword [rsp + 0x5d0], 0
test al, al
je 0x1400111dd
movzx eax, al
cmp eax, 1
je 0x14001120a
mov rcx, rsi
call fcn.140059073
ud2
mov eax, dword [0x14008fbbc]
mov rcx, qword gs:[0x58]
mov rax, qword [rcx + rax*8]
lea rdi, [rax + 0xb8]
lea rdx, [0x140055f18]
mov rcx, rdi
call fcn.14004b921
mov byte [rdi + 0x50], 1
mov eax, dword [0x14008fbbc]
mov rcx, qword gs:[0x58]
mov rdi, qword [rcx + rax*8]
mov r14, qword [rdi + 0xf0]
mov qword [rdi + 0xf0], rbx
mov rdx, qword [rsp + 0x130]
add rdx, 0x10
mov rcx, rsi
call fcn.1400590c3
mov qword [rdi + 0xf0], r14
cmp qword [rsp + 0x5d0], 0
jne case.0x1400103bc.3
mov qword [rsp + 0x5d0], 0xffffffffffffffff
mov rcx, qword [rsp + 0x5d8]
test rcx, rcx
je 0x14001128a
call fcn.140059073
mov rax, qword [rsp + 0x5d0]
mov ecx, eax
and ecx, 1
xor rax, 1
lea rax, [rax + rcx*2]
jmp 0x14001128c
xor eax, eax
lea rcx, [rsp + 0x5c0]
mov qword [rcx + 0x18], rsi
mov qword [rcx + 0x10], rax
call fcn.14005ac89
cmp dword [rsp + 0x200], 3
je 0x1400112b8
lea rcx, [rsp + 0x200]
call fcn.140057784
lea rsi, [rsp + 0x128]
cmp qword [rsi - 0x30], 0
jne 0x1400112e1
xor eax, eax
xchg qword [rsp + 0x120], rax
lea rcx, [rsp + 0x5c0]
mov qword [rcx], rax
call fcn.140056842
mov rcx, rsi
call fcn.14000210a
mov rbx, qword [rsp + 0x138]
lea rsi, [rbx + 0x40]
mov cl, 1
xor eax, eax
lock cmpxchg byte [rbx + 0x40], cl
jne 0x1400119e9
cmp byte [rbx + 0xc4], 0
je 0x140011328
xor ecx, ecx
mov al, 1
lock cmpxchg byte [rsi], cl
je 0x14001189b
mov rcx, rsi
call fcn.140072fcf
jmp 0x14001189b
mov byte [rbx + 0xc4], 1
lea rdi, [rbx + 0x98]
mov rax, qword [rbx + 0x98]
test rax, rax
je 0x140011350
lock dec qword [rax]
jne 0x140011350
mov rcx, rdi
call fcn.1400576f1
mov qword [rdi], 0
mov rcx, qword [rsp + 0x138]
mov rdx, qword [rcx + 0xc8]
test rdx, rdx
jne 0x140011a03
mov rax, qword [rbx + 0xb0]
mov qword [rsp + 0x260], rax
movups xmm0, xmmword [rbx + 0xa0]
movaps xmmword [rsp + 0x250], xmm0
mov qword [rbx + 0xa0], 0
lea rdi, [rbx + 0x68]
mov eax, dword [0x14008fbbc]
mov rcx, qword gs:[0x58]
mov rax, qword [rcx + rax*8]
cmp qword [rax + 0x78], 0
je 0x140011a14
mov eax, dword [0x14008fbbc]
mov rcx, qword gs:[0x58]
mov rax, qword [rcx + rax*8]
mov rcx, qword [rax + 0x80]
mov rdx, qword [rax + 0x88]
lea r8, [rcx + 1]
mov qword [rax + 0x80], r8
mov r13, qword [rbx + 0x68]
mov rax, qword [rbx + 0x70]
mov qword [rsp + 0x28], rax
mov r12, qword [rbx + 0x80]
movups xmm0, xmmword [0x14007f440]
movups xmmword [rdi + 0x10], xmm0
movdqu xmm0, xmmword [0x14007f430]
movdqu xmmword [rdi], xmm0
mov qword [rbx + 0x88], rcx
mov qword [rbx + 0x90], rdx
xor ecx, ecx
mov al, 1
lock cmpxchg byte [rbx + 0x40], cl
jne 0x140011a20
mov eax, dword [0x14008fbbc]
mov rcx, qword gs:[0x58]
mov rax, qword [rcx + rax*8]
movzx eax, byte [rax + 0x108]
test rax, rax
je 0x140011457
cmp eax, 1
je 0x140011484
jmp 0x1400114a4
mov eax, dword [0x14008fbbc]
mov rcx, qword gs:[0x58]
mov rax, qword [rcx + rax*8]
lea rsi, [rax + 0xb8]
lea rdx, [0x140055f18]
mov rcx, rsi
call fcn.14004b921
mov byte [rsi + 0x50], 1
mov eax, dword [0x14008fbbc]
mov rcx, qword gs:[0x58]
mov rax, qword [rcx + rax*8]
cmp byte [rax + 0x106], 2
jne case.0x1400103bc.3
call fcn.1400529b7
test rax, rax
je 0x140011708
lea rbp, [rsp + 0x5c0]
mov qword [rbp], rax
mov qword [rbp + 8], rdx
mov eax, dword [0x14008fbbc]
mov rcx, qword gs:[0x58]
mov rax, qword [rcx + rax*8]
movzx eax, byte [rax + 0x108]
test rax, rax
je 0x1400114ea
mov bl, 2
cmp eax, 1
je 0x140011517
jmp 0x140011543
mov eax, dword [0x14008fbbc]
mov rcx, qword gs:[0x58]
mov rax, qword [rcx + rax*8]
lea rbx, [rax + 0xb8]
mov rcx, rbx
lea rdx, [0x140055f18]
call fcn.14004b921
mov byte [rbx + 0x50], 1
mov eax, dword [0x14008fbbc]
mov rcx, qword gs:[0x58]
mov rax, qword [rcx + rax*8]
mov bl, byte [rax + 0x104]
mov cl, byte [rax + 0x105]
mov byte [rsp + 0x20], cl
mov word [rax + 0x104], 0x8001
mov rdi, qword [rsp + 0x140]
test rdi, rdi
je case.0x1400103bc.3
mov rcx, rbp
call fcn.14005a077
mov r14d, eax
cmp r14b, 2
jne 0x14001156d
xor r15d, r15d
xor r14d, r14d
jmp 0x14001159c
xor ecx, ecx
xor edx, edx
call fcn.14005a77c
mov eax, r14d
not eax
or eax, 1
add eax, r14d
not eax
mov r15b, 1
test eax, 0xffffff
jne 0x1400116d6
mov r15d, r14d
shr r15d, 8
shr r14d, 0x10
mov rax, qword [rdi + 0x30]
mov ecx, eax
not ecx
or rcx, 0xfffffffffffffffd
cmp rcx, 0xffffffffffffffff
je 0x140011600
mov sil, byte [rdi + 0x38]
mov byte [rdi + 0x38], 0
xor r15d, r15d
xor ecx, ecx
mov edx, r14d
call fcn.14005a77c
test sil, sil
je 0x1400116d6
mov rax, qword [rsp + 0x140]
test rax, rax
je 0x1400115ec
lock dec qword [rax]
jne 0x1400115ec
mov rcx, qword [rsp + 0x140]
call fcn.14005813d
mov qword [rsp + 0x140], 0
xor r15d, r15d
jmp 0x1400116d6
mov ecx, eax
not ecx
or rcx, 0xfffffffffffffffb
cmp rcx, 0xffffffffffffffff
je 0x140011620
xor r15d, r15d
xor ecx, ecx
mov edx, r14d
call fcn.14005a77c
jmp 0x1400116d6
mov rcx, rax
not rcx
or rcx, 1
add rcx, rax
cmp rcx, 0xffffffffffffffff
je 0x14001168b
mov rax, qword [rdi + 0x28]
cmp rax, qword [rsp + 0x5c8]
jne 0x14001164f
mov rax, qword [rsp + 0x5c0]
cmp qword [rdi + 0x20], rax
je 0x1400116c8
mov rax, qword [rdi + 0x30]
mov rcx, rax
and rcx, 0xfffffffffffffffe
lock cmpxchg qword [rdi + 0x30], rcx
jne 0x140011653
mov rcx, rax
not rcx
or rcx, 2
add rcx, rax
cmp rcx, 0xffffffffffffffff
je 0x140011680
lock or qword [rdi + 0x30], 1
jmp 0x1400115ae
mov rax, qword [rdi + 0x20]
mov rcx, qword [rdi + 0x28]
call qword [rax + 0x18]
mov rax, qword [rsp + 0x5c0]
mov rcx, qword [rsp + 0x5c8]
call qword [rax]
mov qword [rdi + 0x20], rax
mov qword [rdi + 0x28], rdx
mov rax, qword [rdi + 0x30]
mov rcx, rax
or rcx, 1
lock cmpxchg qword [rdi + 0x30], rcx
jne 0x1400116a9
mov rcx, rax
xor rcx, 0xfffffffffffffffd
test rcx, rax
jne 0x1400115ae
mov ecx, r15d
mov edx, r14d
call fcn.14005a77c
mov r15b, 1
cmp bl, 2
je 0x1400116e6
mov ecx, ebx
mov dl, byte [rsp + 0x20]
call fcn.14005827c
test r15b, r15b
je 0x1400116f5
call case.0x1400406f4.297
jmp 0x1400114c2
mov rax, qword [rsp + 0x5c0]
mov rcx, qword [rsp + 0x5c8]
call qword [rax + 0x18]
cmp qword [rsp + 0x250], 0
je 0x140011728
lea rcx, [rsp + 0x250]
call fcn.14005159d
mov rcx, rax
call fcn.14000158b
movdqa xmm0, xmmword [r13]
mov rdx, qword [rsp + 0x28]
test rdx, rdx
je 0x140011777
mov rax, rdx
shl rax, 5
mov ecx, eax
and ecx, 0x20
mov r8, rdx
mov rdx, rax
xor rdx, 0x20
lea rcx, [rdx + rcx*2]
lea rbx, [r8 + rcx]
add rbx, 0x11
movabs rcx, 0x6d89c26ff96bc938
add rax, rcx
mov rdx, r13
sub rdx, rax
lea rsi, [rdx + rcx]
add rsi, 0xffffffffffffffe0
jmp 0x140011777
lea r14, [r13 + 0x10]
pmovmskb r15d, xmm0
not r15d
lea rdi, [rsp + 0x5c8]
test r12, r12
je 0x14001186c
test r15w, r15w
jne 0x1400117bf
movdqa xmm0, xmmword [r14]
pmovmskb eax, xmm0
add r13, 0xfffffffffffffe00
add ebp, 0xfffffe00
add r14, 0x10
cmp eax, 0xffff
je 0x14001179a
lea r15d, [rax + rax]
not r15d
add r15d, eax
lea eax, [r15 - 1]
bsf ecx, r15d
xor r15d, eax
not r15d
xlatb
and r15d, eax
dec r12
shl rcx, 5
mov rax, r13
sub rax, rcx
movdqu xmm0, xmmword [rax - 0x20]
movups xmm1, xmmword [rax - 0x10]
movdqa xmmword [rsp + 0x5c0], xmm0
add byte [rax], al
movaps xmmword [rsp + 0x5d0], xmm1
cmp qword [rsp + 0x5c8], 0
je 0x140011817
invalid
mov rcx, rdi
call fcn.14005159d
mov rcx, rax
call fcn.14000158b
jmp 0x14001178b
invalid
invalid
test r12, r12
je 0x14001186c
test r15w, r15w
jne 0x140011843
movdqa xmm0, xmmword [r14]
pmovmskb r15d, xmm0
add r13, 0xfffffffffffffe00
add r14, 0x10
cmp r15d, 0xffff
je 0x140011822
not r15d
lea eax, [r15 - 1]
bsf edx, r15d
xor r15d, eax
not r15d
and r15d, eax
shl rdx, 5
mov rcx, r13
sub rcx, rdx
add rcx, 0xffffffffffffffe0
call fcn.1400567fb
add al, 0
dec r12
jne 0x14001181c
mov rcx, qword [rsp + 0x28]
test rcx, rcx
sete al
or rcx, rbx
sete cl
cmp rbx, 1
adc al, 0
sub al, cl
test al, 1
jne 0x14001189b
mov rcx, qword [0x14008fb30]
xor edx, edx
mov r8, rsi
call qword [sym.imp.kernel32.dll_HeapFree]
mov rax, qword [rsp + 0x138]
lock dec qword [rax]
jne 0x1400118b6
lea rcx, [rsp + 0x138]
call fcn.140057b85
mov rcx, qword [rsp + 0x140]
test rcx, rcx
je 0x140011932
mov rsi, qword [rcx + 0x30]
mov rdx, rsi
or rdx, 4
mov rax, rsi
lock cmpxchg qword [rcx + 0x30], rdx
mov rsi, rax
invalid
jne 0x1400118c7
mov rax, rsi
not rax
or rax, 0xa
enter 0x480a, 1
invalid
cmp rax, 7
jne 0x1400118fa
mov rax, qword [rcx + 0x10]
mov rcx, qword [rcx + 0x18]
call qword [rax + 0x10]
mov rax, rsi
xor rax, 0xfffffffffffffffd
test rax, rsi
je 0x140011912
mov rax, qword [rsp + 0x140]
mov byte [rax + 0x38], 0
invalid
mov rax, qword [rsp + 0x140]
test rax, rax
je 0x140011932
lock dec qword [rax]
jne 0x140011932
mov rcx, qword [rsp + 0x140]
call fcn.14005813d
mov rax, qword [rsp + 0x540]
lock dec qword [rax]
jne 0x14001194d
lea rcx, [rsp + 0x540]
call fcn.140057e64
invalid
add al, 0
mov rax, qword [rsp + 0x560]
test rax, rax
je 0x14001196d
lock dec qword [rax]
jne 0x14001196d
lea rcx, [rsp + 0x560]
call fcn.140057e64
mov rax, qword [rsp + 0x570]
test rax, rax
je 0x14001198d
lock dec qword [rax]
jne 0x14001198d
lea rcx, [rsp + 0x570]
call fcn.140057e64
mov rax, qword [rsp + 0x580]
test rax, rax
je 0x1400119ad
lock dec qword [rax]
jne 0x1400119ad
lea rcx, [rsp + 0x580]
call fcn.140057e64
mov rax, qword [rsp + 0x590]
test rax, rax
je 0x1400119cd
invalid
lock dec qword [rax]
jne 0x1400119cd
lea rcx, [rsp + 0x590]
call fcn.140057e64
movaps xmm6, xmmword [rsp + 0xad0]
add rsp, 0xae8
pop rbx
pop rbp
pop rdi
pop rsi
pop r12
pop r13
pop r14
pop r15
ret
mov rcx, rsi
call fcn.140072cd8
jmp 0x140011304
mov rcx, rdi
call fcn.140072cd8
jmp 0x140010f78
add rcx, 0xc8
call fcn.1400728e7
jmp 0x14001136f
xor ecx, ecx
call fcn.140073ddd
jmp 0x1400113bd
mov rcx, rsi
call fcn.140072fcf
jmp 0x140011431
mov rcx, rdi
call fcn.140072fcf
jmp 0x14001108a
mov eax, dword [0x14008fbbc]
mov rcx, qword gs:[0x58]
mov rax, qword [rcx + rax*8]
mov rcx, qword [rsp + 0x20]
mov qword [rax + 0xf0], rcx
mov sil, 1
jmp 0x140010e80
test rax, rax
ud2
lea rcx, [rsp + 0x250]
call fcn.1400021c8
ud2