Function at 0x14000e9a0
Capabilities:
Create thread
Encode data using base64
Get system information on windows

Disassembly:
push r15
push r14
push r13
push r12
push rsi
push rdi
push rbp
push rbx
sub rsp, 0x418
movdqa xmmword [rsp + 0x400], xmm8
movdqa xmmword [rsp + 0x3f0], xmm7
movaps xmmword [rsp + 0x3e0], xmm6
mov rbx, rdx
mov r12, rcx
cmp byte [rdx + 0xbc], 0
je 0x14000e9f0
cmp qword [rbx], 0
je 0x14000ec1a
mov r13, qword [rbx + 8]
jmp 0x14000f027
movzx eax, word [rbx + 0xbd]
movzx ecx, byte [rbx + 0xbf]
mov rdx, qword [rbx + 0x48]
mov word [rsp + 0x58], ax
mov byte [rsp + 0x5a], 1
mov byte [rsp + 0x5b], cl
mov qword [rsp + 0x50], rdx
lea rcx, [rsp + 0x2e0]
lea rdx, [rsp + 0x50]
call fcn.140018350
mov rsi, qword [rsp + 0x2e0]
cmp rsi, 2
je 0x14000f07b
mov rdi, qword [rsp + 0x2e8]
lea rdx, [rsp + 0x2f0]
lea rcx, [rsp + 0xf0]
mov r8d, pe_nt_image_headers64
call sub.VCRUNTIME140.dll_memcpy
movdqu xmm0, xmmword [rsp + 0xf0]
movdqu xmm1, xmmword [rsp + 0x100]
movdqu xmm2, xmmword [rsp + 0x110]
movdqa xmmword [rsp + 0x1f0], xmm0
movdqa xmmword [rsp + 0x200], xmm1
movdqa xmmword [rsp + 0x210], xmm2
lea rdx, [rsp + 0x120]
lea rcx, [rsp + 0x220]
mov r8d, 0xc0
call sub.VCRUNTIME140.dll_memcpy
mov rdx, qword [rbx + 0x50]
mov rcx, rbx
call fcn.1400195a0
lock inc qword [rax]
jle 0x14000fa30
mov qword [rsp + 0x98], rdx
mov qword [rsp + 0xa8], rax
mov qword [rsp + 0x38], rdi
mov qword [rsp + 0x40], rsi
lea rsi, [rbx + 0xa0]
mov rcx, rsi
call qword [sym.imp.kernel32.dll_AcquireSRWLockExclusive]
movzx eax, byte [rbx + 0xa8]
test al, al
jne 0x14000fa30
mov eax, dword [rbx + 0xac]
mov ecx, dword [rbx + 0xb0]
mov r15d, eax
shl r15d, 0x11
xor r15d, eax
mov eax, ecx
shr eax, 0x10
xor eax, ecx
xor eax, r15d
shr r15d, 7
xor r15d, eax
mov eax, ecx
shl eax, 0x11
mov dword [rsp + 0x30], ecx
xor eax, ecx
mov edi, eax
shr edi, 7
mov ecx, r15d
shr ecx, 0x10
xor edi, eax
xor edi, r15d
xor edi, ecx
mov dword [rbx + 0xac], r15d
mov dword [rbx + 0xb0], edi
mov rcx, rsi
call qword [sym.imp.kernel32.dll_ReleaseSRWLockExclusive]
mov rcx, rsi
call qword [sym.imp.kernel32.dll_AcquireSRWLockExclusive]
movzx eax, byte [rbx + 0xa8]
test al, al
jne 0x14000fa30
mov eax, dword [rbx + 0xac]
mov r14d, dword [rbx + 0xb0]
mov ebp, eax
shl ebp, 0x11
xor ebp, eax
mov eax, r14d
shr eax, 0x10
xor eax, r14d
xor eax, ebp
shr ebp, 7
xor ebp, eax
mov eax, r14d
shl eax, 0x11
xor eax, r14d
mov r13d, eax
shr r13d, 7
mov ecx, ebp
shr ecx, 0x10
xor r13d, eax
xor r13d, ebp
xor r13d, ecx
mov dword [rbx + 0xac], ebp
mov dword [rbx + 0xb0], r13d
mov rcx, rsi
call qword [sym.imp.kernel32.dll_ReleaseSRWLockExclusive]
mov rax, qword [rbx + 0x78]
test rax, rax
je 0x14000ece5
mov rcx, qword [rbx + 0x80]
mov qword [rsp + 0xe0], rcx
lock inc qword [rax]
jle 0x14000fa30
mov rcx, qword [rbx + 0x88]
test rcx, rcx
je 0x14000ecf5
mov rdx, qword [rbx + 0x90]
mov qword [rsp + 0xb8], rdx
lock inc qword [rcx]
jg 0x14000ecf5
jmp 0x14000fa30
movabs rsi, 0x8000000000000000
lea rdx, str.TOKIO_WORKER_THREADS
lea rcx, [rsp + 0x2e0]
mov r8d, 0x14
call fcn.14000bec0
mov rcx, qword [rsp + 0x2e0]
cmp rcx, rsi
jne 0x14000ec8c
pxor xmm0, xmm0
movdqa xmmword [rsp + 0x300], xmm0
movdqa xmmword [rsp + 0x2f0], xmm0
movdqa xmmword [rsp + 0x2e0], xmm0
lea rcx, [rsp + 0x2e0]
call sub.kernel32.dll_GetSystemInfo
mov r13d, dword [rsp + 0x300]
cmp r13d, 1
adc r13d, 0
jmp 0x14000f027
cmp byte [rsp + 0x2f8], 0
je 0x14000ef13
mov r8, qword [rsp + 0x2e8]
mov r9, qword [rsp + 0x2f0]
test r9, r9
je 0x14000fa30
movzx eax, byte [r8]
cmp eax, 0x2d
je 0x14000efba
cmp eax, 0x2b
jne 0x14000f9db
dec r9
je 0x14000fa30
lea r10, [r8 + 1]
cmp r9, 0x11
jb 0x14000efd1
jmp 0x14000f9e8
mov rcx, qword [rbx + 0x88]
test rcx, rcx
jne 0x14000ebfc
mov qword [rsp + 0x90], rcx
mov qword [rsp + 0xc0], rax
mov eax, dword [rbx + 0x20]
mov dword [rsp + 0x48], eax
mov esi, dword [rbx + 0x24]
mov eax, dword [rbx + 0xb8]
mov dword [rsp + 0x88], eax
mov rax, qword [rbx + 0x98]
mov qword [rsp + 0xa0], rax
movzx eax, byte [rbx + 0xc0]
mov byte [rsp + 0x80], al
movzx ebx, byte [rbx + 0xc1]
movzx eax, byte [0x140026190]
mov rcx, qword [0x140026178]
test rcx, rcx
jne 0x14000ed6c
call qword [sym.imp.kernel32.dll_GetProcessHeap]
test rax, rax
je 0x14000fa30
mov rcx, rax
mov qword [0x140026178], rax
mov r8d, 0x80
xor edx, edx
call qword [sym.imp.kernel32.dll_HeapAlloc]
test rax, rax
je 0x14000fa30
mov qword [rsp + 0x2e0], 4
mov qword [rsp + 0x2e8], rax
mov qword [rsp + 0x2f0], 0
mov qword [rax], 0
mov byte [rax + 8], 0
xorps xmm6, xmm6
movups xmmword [rax + 0x10], xmm6
mov rdx, qword [rsp + 0x2f0]
inc rdx
mov qword [rsp + 0x2f0], rdx
cmp rdx, qword [rsp + 0x2e0]
jne 0x14000edef
lea rcx, [rsp + 0x2e0]
call fcn.14000d520
mov rax, qword [rsp + 0x2e8]
mov rdx, qword [rsp + 0x2f0]
shl rdx, 5
mov qword [rax + rdx], 0
mov byte [rax + rdx + 8], 0
movups xmmword [rax + rdx + 0x10], xmm6
mov rdx, qword [rsp + 0x2f0]
inc rdx
mov qword [rsp + 0x2f0], rdx
cmp rdx, qword [rsp + 0x2e0]
jne 0x14000ee3f
lea rcx, [rsp + 0x2e0]
call fcn.14000d520
mov rax, qword [rsp + 0x2e8]
mov rdx, qword [rsp + 0x2f0]
shl rdx, 5
mov qword [rax + rdx], 0
mov byte [rax + rdx + 8], 0
xorps xmm6, xmm6
movups xmmword [rax + rdx + 0x10], xmm6
mov rdx, qword [rsp + 0x2f0]
inc rdx
mov qword [rsp + 0x2f0], rdx
cmp rdx, qword [rsp + 0x2e0]
mov qword [rsp + 0xc8], r12
mov byte [rsp + 0xe8], bl
jne 0x14000eea1
lea rcx, [rsp + 0x2e0]
call fcn.14000d520
mov rax, qword [rsp + 0x2e8]
mov rdx, qword [rsp + 0x2f0]
shl rdx, 5
mov qword [rax + rdx], 0
mov byte [rax + rdx + 8], 0
movups xmmword [rax + rdx + 0x10], xmm6
mov r12, qword [rsp + 0x2f0]
inc r12
mov qword [rsp + 0x2f0], r12
mov rbx, qword [rsp + 0x2e8]
cmp qword [rsp + 0x2e0], r12
jbe 0x140011267
test r12, r12
je 0x140011250
mov r9, r12
shl r9, 5
mov rcx, qword [0x140026178]
xor edx, edx
mov r8, rbx
call qword [sym.imp.kernel32.dll_HeapReAlloc]
mov rbx, rax
test rax, rax
jne 0x140011267
jmp 0x14000fa30
mov r9, qword [rsp + 0x2f0]
test r9, r9
je 0x14000fa30
mov r8, qword [rsp + 0x2e8]
lea rax, [r8 + r9]
mov r10, r8
jmp 0x14000ef4c
add r10, 2
cmp rdx, rax
cmovne rdx, r10
mov r10, rdx
cmp rdx, rax
je 0x14000ecaa
lea rdx, [r10 + 1]
movzx r11d, byte [r10]
test r11b, r11b
jns 0x14000ef40
cmp r11b, 0xe0
jb 0x14000ef35
cmp r11b, 0xed
jne 0x14000ef8f
cmp rdx, rax
je 0x14000ecaa
lea rdx, [r10 + 2]
cmp rdx, rax
je 0x14000ecaa
cmp byte [r10 + 1], 0x9f
ja 0x140011615
add r10, 3
mov rdx, r10
jmp 0x14000ef40
add r10, 2
cmp rdx, rax
cmove r10, rdx
xor edx, edx
cmp r10, rax
setne dl
add rdx, r10
cmp r11b, 0xf0
jb 0x14000ef40
xor r10d, r10d
cmp rdx, rax
setne r10b
add rdx, r10
jmp 0x14000ef40
mov r10, r8
cmp r9, 1
je 0x14000fa30
cmp r9, 0x11
jae 0x14000f9e8
xor eax, eax
xor r13d, r13d
nop word cs:[rax + rax]
movzx edx, byte [r10 + rax]
add edx, 0xffffffd0
cmp edx, 9
ja 0x14000fa30
lea r11, [r13*4]
add r11, r13
mov edx, edx
lea r13, [rdx + r11*2]
inc rax
cmp r9, rax
jne 0x14000efe0
test r13, r13
je 0x14000fa30
test rcx, rcx
je 0x14000f027
mov rcx, qword [0x140026178]
xor edx, edx
call qword [sym.imp.kernel32.dll_HeapFree]
movzx eax, word [rbx + 0xbd]
movzx ecx, byte [rbx + 0xbf]
mov rdx, qword [rbx + 0x48]
mov word [rsp + 0x228], ax
mov byte [rsp + 0x22a], 0
mov byte [rsp + 0x22b], cl
mov qword [rsp + 0x220], rdx
lea rcx, [rsp + 0x2e0]
lea rdx, [rsp + 0x220]
call fcn.140018350
mov rdi, qword [rsp + 0x2e0]
cmp rdi, 2
jne 0x14000f095
mov rax, qword [rsp + 0x2e8]
mov qword [r12 + 8], rax
mov qword [r12], 2
jmp 0x1400115e8
mov r14, qword [rsp + 0x2e8]
lea rdx, [rsp + 0x2f0]
lea rcx, [rsp + 0xf0]
mov r8d, pe_nt_image_headers64
call sub.VCRUNTIME140.dll_memcpy
movdqu xmm0, xmmword [rsp + 0xf0]
movdqu xmm1, xmmword [rsp + 0x100]
movdqu xmm2, xmmword [rsp + 0x110]
movdqa xmmword [rsp + 0x1f0], xmm0
movdqa xmmword [rsp + 0x200], xmm1
movdqa xmmword [rsp + 0x210], xmm2
lea rdx, [rsp + 0x120]
lea rcx, [rsp + 0x2e0]
mov r8d, 0xc0
call sub.VCRUNTIME140.dll_memcpy
mov rdx, qword [rbx + 0x50]
add rdx, r13
mov rcx, rbx
call fcn.1400195a0
mov qword [rsp + 0xe8], rdx
mov qword [rsp + 0xc0], rax
lock inc qword [rax]
jle 0x14000fa30
mov qword [rsp + 0xc8], r12
lea rsi, [rbx + 0xa0]
mov rcx, rsi
call qword [sym.imp.kernel32.dll_AcquireSRWLockExclusive]
movzx eax, byte [rbx + 0xa8]
test al, al
jne 0x14000fa30
mov eax, dword [rbx + 0xac]
mov ebp, dword [rbx + 0xb0]
mov r12d, eax
shl r12d, 0x11
xor r12d, eax
mov eax, ebp
shr eax, 0x10
xor eax, ebp
xor eax, r12d
shr r12d, 7
xor r12d, eax
mov eax, ebp
shl eax, 0x11
xor eax, ebp
mov r15d, eax
shr r15d, 7
mov ecx, r12d
shr ecx, 0x10
xor r15d, eax
xor r15d, r12d
xor r15d, ecx
mov dword [rbx + 0xac], r12d
mov dword [rbx + 0xb0], r15d
mov rcx, rsi
call qword [sym.imp.kernel32.dll_ReleaseSRWLockExclusive]
mov rcx, rsi
call qword [sym.imp.kernel32.dll_AcquireSRWLockExclusive]
movzx eax, byte [rbx + 0xa8]
test al, al
jne 0x14000fa30
mov eax, dword [rbx + 0xac]
mov ecx, dword [rbx + 0xb0]
mov r8d, eax
shl r8d, 0x11
xor r8d, eax
mov eax, ecx
shr eax, 0x10
xor eax, ecx
xor eax, r8d
shr r8d, 7
xor r8d, eax
mov eax, ecx
shl eax, 0x11
mov dword [rsp + 0x38], ecx
xor eax, ecx
mov edx, eax
shr edx, 7
mov ecx, r8d
shr ecx, 0x10
xor edx, eax
xor edx, r8d
xor edx, ecx
mov dword [rsp + 0x90], r8d
mov dword [rbx + 0xac], r8d
mov dword [rsp + 0x98], edx
mov dword [rbx + 0xb0], edx
mov rcx, rsi
call qword [sym.imp.kernel32.dll_ReleaseSRWLockExclusive]
mov rax, qword [rbx + 0x78]
test rax, rax
je 0x14000f26d
mov rcx, qword [rbx + 0x80]
lock inc qword [rax]
jle 0x14000fa30
mov rdx, qword [rbx + 0x88]
test rdx, rdx
je 0x14000f279
mov r8, qword [rbx + 0x90]
lock inc qword [rdx]
jg 0x14000f279
jmp 0x14000fa30
mov rdx, qword [rbx + 0x88]
test rdx, rdx
jne 0x14000f25b
add ebp, r12d
add r15d, r12d
mov r9d, dword [rbx + 0xb8]
mov r10, qword [rbx + 0x20]
mov r11, qword [rbx + 0x98]
movzx esi, word [rbx + 0xc0]
mov qword [rsp + 0x220], r10
mov dword [rsp + 0x268], r9d
mov qword [rsp + 0x228], r11
mov qword [rsp + 0x230], rax
mov qword [rsp + 0x238], rcx
mov qword [rsp + 0x240], rdx
mov qword [rsp + 0x248], r8
mov word [rsp + 0x26c], si
mov qword [rsp + 0x250], 0
mov byte [rsp + 0x258], 0
movzx eax, word [rsp + 0xb2]
mov word [rsp + 0x259], ax
movzx eax, byte [rsp + 0xb4]
mov byte [rsp + 0x25b], al
mov dword [rsp + 0x25c], ebp
mov dword [rsp + 0x260], r15d
movzx eax, byte [0x140026190]
mov rcx, qword [0x140026178]
test rcx, rcx
jne 0x14000f346
call qword [sym.imp.kernel32.dll_GetProcessHeap]
test rax, rax
je 0x14000fa30
mov rcx, rax
mov qword [0x140026178], rax
mov r8d, 0x58
xor edx, edx
call qword [sym.imp.kernel32.dll_HeapAlloc]
test rax, rax
je 0x14000fa30
mov rsi, rax
mov qword [rax], 1
mov qword [rax + 8], 1
mov qword [rax + 0x10], rdi
mov qword [rax + 0x18], r14
movdqa xmm0, xmmword [rsp + 0x1f0]
movdqa xmm1, xmmword [rsp + 0x200]
movdqa xmm2, xmmword [rsp + 0x210]
movdqu xmmword [rax + 0x20], xmm0
movdqu xmmword [rax + 0x30], xmm1
movdqu xmmword [rax + 0x40], xmm2
mov byte [rax + 0x50], 0
movzx eax, byte [0x140026190]
mov rcx, qword [0x140026178]
test rcx, rcx
jne 0x14000f3d1
call qword [sym.imp.kernel32.dll_GetProcessHeap]
test rax, rax
je 0x14000fa30
mov rcx, rax
mov qword [0x140026178], rax
mov r8d, 0x38
xor edx, edx
call qword [sym.imp.kernel32.dll_HeapAlloc]
test rax, rax
je 0x14000fa30
mov qword [rax], 1
mov qword [rax + 8], 1
mov qword [rax + 0x10], rsi
pxor xmm0, xmm0
movdqu xmmword [rax + 0x18], xmm0
mov byte [rax + 0x28], 0
mov qword [rax + 0x30], 0
mov qword [rsp + 0xd0], rax
test r13, r13
je 0x14000f98d
mov rax, r13
shr rax, 0x3c
jne 0x14000fa30
movzx eax, byte [0x140026190]
mov rcx, qword [0x140026178]
test rcx, rcx
jne 0x14000f45a
call qword [sym.imp.kernel32.dll_GetProcessHeap]
test rax, rax
je 0x14000fa30
mov rcx, rax
mov qword [0x140026178], rax
lea rsi, [r13*8]
xor edx, edx
mov r8, rsi
call qword [sym.imp.kernel32.dll_HeapAlloc]
test rax, rax
je 0x14000fa30
mov qword [rsp + 0x68], r13
mov qword [rsp + 0x70], rax
mov qword [rsp + 0x78], 0
movabs rax, 0x800000000000000
dec rax
cmp r13, rax
ja 0x14000fa30
movzx eax, byte [0x140026190]
mov rcx, qword [0x140026178]
test rcx, rcx
jne 0x14000f4cb
call qword [sym.imp.kernel32.dll_GetProcessHeap]
test rax, rax
je 0x14000fa30
mov rcx, rax
mov qword [0x140026178], rax
mov r8, r13
shl r8, 4
xor edx, edx
call qword [sym.imp.kernel32.dll_HeapAlloc]
test rax, rax
je 0x14000fa30
mov qword [rsp + 0x88], rsi
lea rbp, [rsp + 0x250]
mov qword [rsp + 0x50], r13
mov qword [rsp + 0x58], rax
mov qword [rsp + 0x60], 0
xor r14d, r14d
lea r15, [rsp + 0xf0]
xorps xmm6, xmm6
mov qword [rsp + 0x40], r13
jmp 0x14000f553
lea rbp, [rsp + 0x250]
mov rbx, qword [rsp + 0x58]
mov rax, r12
shl rax, 4
mov qword [rbx + rax], rsi
mov qword [rbx + rax + 8], r13
inc r12
mov qword [rsp + 0x60], r12
mov r13, qword [rsp + 0x40]
cmp r14, r13
je 0x14000f8f4
movzx eax, byte [0x140026190]
mov rax, qword [0x140026178]
test rax, rax
je 0x14000f570
mov r12, qword [sym.imp.kernel32.dll_HeapAlloc]
jmp 0x14000f58d
call qword [sym.imp.kernel32.dll_GetProcessHeap]
test rax, rax
mov r12, qword [sym.imp.kernel32.dll_HeapAlloc]
je 0x14000fa30
mov qword [0x140026178], rax
mov r8d, 0x800
mov rcx, rax
xor edx, edx
call r12
test rax, rax
je 0x14000fa30
inc r14
mov qword [rsp + 0xf0], 0x100
mov qword [rsp + 0xf8], rax
mov qword [rsp + 0x100], 0
mov edi, 0x100
xor esi, esi
jmp 0x14000f5e0
inc rsi
mov qword [rsp + 0x100], rsi
dec rdi
je 0x14000f600
cmp rsi, qword [rsp + 0xf0]
jne 0x14000f5d0
mov rcx, r15
mov rdx, rsi
call fcn.140008640
mov rsi, qword [rsp + 0x100]
jmp 0x14000f5d0
mov rbx, qword [rsp + 0xf8]
cmp qword [rsp + 0xf0], rsi
jbe 0x14000f641
test rsi, rsi
je 0x14001163f
lea r9, [rsi*8]
mov rcx, qword [0x140026178]
xor edx, edx
mov r8, rbx
call qword [sym.imp.kernel32.dll_HeapReAlloc]
mov rbx, rax
test rax, rax
je 0x14000fa30
cmp rsi, 0x100
jne 0x14000fa30
movzx eax, byte [0x140026190]
mov rax, qword [0x140026178]
test rax, rax
jne 0x14000f677
call qword [sym.imp.kernel32.dll_GetProcessHeap]
test rax, rax
je 0x14000fa30
mov qword [0x140026178], rax
mov r8d, 0x28
mov rcx, rax
xor edx, edx
call r12
test rax, rax
je 0x14000fa30
mov rsi, rax
mov qword [rax], 1
mov qword [rax + 8], 1
mov qword [rax + 0x10], rbx
mov qword [rax + 0x18], 0
mov dword [rax + 0x20], 0
lock inc qword [rax]
jle 0x14000fa30
mov rax, qword [rsp + 0xd0]
mov rdi, qword [rax + 0x10]
lock inc qword [rdi]
jle 0x14000fa30
movzx eax, byte [0x140026190]
mov rax, qword [0x140026178]
test rax, rax
jne 0x14000f6fc
call qword [sym.imp.kernel32.dll_GetProcessHeap]
test rax, rax
je 0x14000fa30
mov qword [0x140026178], rax
mov r8d, 0x38
mov rcx, rax
xor edx, edx
call r12
test rax, rax
je 0x14000fa30
mov r13, rax
mov qword [rax], 1
mov qword [rax + 8], 1
mov qword [rax + 0x10], rdi
movups xmmword [rax + 0x18], xmm6
mov byte [rax + 0x28], 0
mov qword [rax + 0x30], 0
lock inc qword [rax]
jle 0x14000fa30
mov qword [rsp + 0x30], r14
call fcn.14000b780
mov qword [rsp + 0x48], rax
mov dword [rsp + 0xa8], edx
cmp dword [rsp + 0x220], 0
mov r15d, 0x3d
je 0x14000f771
mov r15d, dword [rsp + 0x224]
movzx r14d, byte [rsp + 0x26c]
mov rcx, rbp
call qword [sym.imp.kernel32.dll_AcquireSRWLockExclusive]
movzx eax, byte [rsp + 0x258]
test al, al
jne 0x14000fa30
mov eax, dword [rsp + 0x25c]
mov ebx, dword [rsp + 0x260]
mov r12d, eax
shl r12d, 0x11
xor r12d, eax
mov eax, ebx
shr eax, 0x10
xor eax, ebx
xor eax, r12d
shr r12d, 7
xor r12d, eax
mov eax, ebx
shl eax, 0x11
xor eax, ebx
mov edi, eax
shr edi, 7
mov ecx, r12d
shr ecx, 0x10
xor edi, eax
xor edi, r12d
xor edi, ecx
mov dword [rsp + 0x25c], r12d
mov dword [rsp + 0x260], edi
mov rcx, rbp
call qword [sym.imp.kernel32.dll_ReleaseSRWLockExclusive]
movzx eax, byte [0x140026190]
mov rax, qword [0x140026178]
test rax, rax
jne 0x14000f816
call qword [sym.imp.kernel32.dll_GetProcessHeap]
test rax, rax
je 0x14000fa30
mov qword [0x140026178], rax
mov r8d, 0x50
mov rcx, rax
xor edx, edx
call qword [sym.imp.kernel32.dll_HeapAlloc]
test rax, rax
je 0x14000fa30
mov rbp, rax
add ebx, r12d
add edi, r12d
xor r14b, 1
mov qword [rax], 0
mov qword [rax + 8], r13
mov dword [rax + 0x10], ebx
mov dword [rax + 0x14], edi
mov qword [rax + 0x18], rsi
mov qword [rax + 0x20], 0
movabs rax, 0x40a99d60864b8a7e
mov qword [rbp + 0x28], rax
mov rax, qword [rsp + 0x48]
mov qword [rbp + 0x30], rax
mov eax, dword [rsp + 0xa8]
mov dword [rbp + 0x38], eax
mov dword [rbp + 0x40], 0
mov dword [rbp + 0x44], r15d
mov byte [rbp + 0x48], r14b
mov word [rbp + 0x49], 0
mov byte [rbp + 0x4b], 0
mov rdx, qword [rsp + 0x78]
cmp rdx, qword [rsp + 0x68]
jne 0x14000f8af
lea rcx, [rsp + 0x68]
call fcn.140008640
mov rdx, qword [rsp + 0x78]
mov r14, qword [rsp + 0x30]
lea r15, [rsp + 0xf0]
mov rax, qword [rsp + 0x70]
mov qword [rax + rdx*8], rbp
inc rdx
mov qword [rsp + 0x78], rdx
mov r12, qword [rsp + 0x60]
cmp r12, qword [rsp + 0x50]
jne 0x14000f520
lea rcx, [rsp + 0x50]
mov rdx, r12
call fcn.14000d5d0
mov r12, qword [rsp + 0x60]
jmp 0x14000f520
movabs rax, 0xfffffffffffffff
cmp r13, rax
ja 0x14000fa30
movzx eax, byte [0x140026190]
mov rcx, qword [0x140026178]
test rcx, rcx
jne 0x14000f933
call qword [sym.imp.kernel32.dll_GetProcessHeap]
test rax, rax
je 0x14000fa30
mov rcx, rax
mov qword [0x140026178], rax
xor edx, edx
mov r8, qword [rsp + 0x88]
call qword [sym.imp.kernel32.dll_HeapAlloc]
test rax, rax
je 0x14000fa30
mov rsi, rax
cmp qword [rsp + 0x50], r12
jbe 0x14000fa49
test r12, r12
je 0x14000fa32
mov r9, r12
shl r9, 4
mov rcx, qword [0x140026178]
xor edx, edx
mov r8, rbx
call qword [sym.imp.kernel32.dll_HeapReAlloc]
mov rbx, rax
test rax, rax
jne 0x14000fa49
jmp 0x14000fa30
mov qword [rsp + 0x68], 0
mov qword [rsp + 0x70], 8
mov qword [rsp + 0x78], 0
mov qword [rsp + 0x50], r13
mov qword [rsp + 0x58], 8
mov qword [rsp + 0x60], 0
mov eax, 4
mov ebx, 8
xor r12d, r12d
xor edi, edi
xor r13d, r13d
mov esi, 8
jmp 0x14000fa77
mov r10, r8
cmp r9, 0x11
jb 0x14000efd1
xor r11d, r11d
mov esi, 0xa
xor r13d, r13d
nop word cs:[rax + rax]
cmp r9, r11
je 0x14000f00a
movzx edi, byte [r10 + r11]
mov rax, r13
mul rsi
seto dl
add edi, 0xffffffd0
cmp edi, 9
ja 0x14000fa30
test dl, dl
jne 0x14000fa30
mov r13, rax
mov eax, edi
inc r11
add r13, rax
jae 0x14000fa00
ud2
mov rcx, qword [0x140026178]
xor edx, edx
mov r8, rbx
call qword [sym.imp.kernel32.dll_HeapFree]
mov ebx, 8
mov rdi, r13
shl rdi, 0x10
mov eax, 4
cmp r13, 2
jb 0x14000fa77
lea rax, [r13 - 1]
bsr rcx, rax
not ecx
mov rax, 0xffffffffffffffff
shr rax, cl
lea rax, [rax*4 + 4]
cmp rax, 0x10000
mov ebp, 0x10000
cmovb rbp, rax
lea eax, [rbp - 1]
test ebp, eax
setne al
test rbp, rbp
sete cl
or cl, al
jne 0x14000fa30
movzx eax, byte [0x140026190]
mov rcx, qword [0x140026178]
test rcx, rcx
jne 0x14000fac4
call qword [sym.imp.kernel32.dll_GetProcessHeap]
test rax, rax
je 0x14000fa30
mov rcx, rax
mov qword [0x140026178], rax
mov r8, rbp
shl r8, 5
xor edx, edx
call qword [sym.imp.kernel32.dll_HeapAlloc]
test rax, rax
je 0x14000fa30
mov qword [rsp + 0x48], rsi
mov r15, r13
mov ecx, dword [rsp + 0x90]
add dword [rsp + 0x38], ecx
add dword [rsp + 0x98], ecx
mov qword [rsp + 0xf0], rbp
mov qword [rsp + 0xf8], rax
mov qword [rsp + 0x100], 0
xor esi, esi
lea r14, [rsp + 0xf0]
xorps xmm6, xmm6
mov r13, rbp
jmp 0x14000fb5e
shl rsi, 5
mov qword [rax + rsi], 0
mov byte [rax + rsi + 8], 0
movups xmmword [rax + rsi + 0x10], xmm6
mov rsi, qword [rsp + 0x100]
inc rsi
mov qword [rsp + 0x100], rsi
dec r13
je 0x14000fb85
cmp rsi, qword [rsp + 0xf0]
jne 0x14000fb30
mov rcx, r14
mov rdx, rsi
call fcn.14000d520
mov rax, qword [rsp + 0xf8]
mov rsi, qword [rsp + 0x100]
jmp 0x14000fb30
mov r13, qword [rsp + 0xf8]
cmp qword [rsp + 0xf0], rsi
jbe 0x14000fbda
test rsi, rsi
je 0x14000fbc2
mov r9, rsi
shl r9, 5
mov rcx, qword [0x140026178]
xor edx, edx
mov r8, r13
call qword [sym.imp.kernel32.dll_HeapReAlloc]
mov r13, rax
test rax, rax
jne 0x14000fbda
jmp 0x14000fa30
mov rcx, qword [0x140026178]
xor edx, edx
mov r8, r13
call qword [sym.imp.kernel32.dll_HeapFree]
mov r13d, 8
dec rbp
nop dword [rax]
mov r14d, 1
lock xadd qword [0x140026030], r14
test r14, r14
je 0x14000fbe0
movups xmm0, xmmword [rsp + 0x260]
movaps xmmword [rsp + 0x130], xmm0
movdqu xmm0, xmmword [rsp + 0x220]
movdqu xmm1, xmmword [rsp + 0x230]
movdqu xmm2, xmmword [rsp + 0x240]
movups xmm3, xmmword [rsp + 0x250]
movaps xmmword [rsp + 0x120], xmm3
movdqa xmmword [rsp + 0x110], xmm2
movdqa xmmword [rsp + 0x100], xmm1
movdqa xmmword [rsp + 0xf0], xmm0
movzx eax, byte [0x140026190]
mov rcx, qword [0x140026178]
test rcx, rcx
jne 0x14000fc76
call qword [sym.imp.kernel32.dll_GetProcessHeap]
test rax, rax
je 0x14000fa30
mov rcx, rax
mov qword [0x140026178], rax
mov r8d, 0x210
xor edx, edx
call qword [sym.imp.kernel32.dll_HeapAlloc]
test rax, rax
je 0x14000fa30
mov qword [rax], 1
mov qword [rax + 8], 1
movaps xmm0, xmmword [rsp + 0xf0]
movdqa xmm1, xmmword [rsp + 0x100]
movdqa xmm2, xmmword [rsp + 0x110]
movaps xmm3, xmmword [rsp + 0x120]
movups xmmword [rax + 0x10], xmm0
movdqu xmmword [rax + 0x20], xmm1
movdqu xmmword [rax + 0x30], xmm2
movups xmmword [rax + 0x40], xmm3
movdqa xmm0, xmmword [rsp + 0x130]
movdqu xmmword [rax + 0x50], xmm0
mov qword [rax + 0x60], rbx
mov qword [rax + 0x68], r12
mov qword [rax + 0x70], r13
mov qword [rax + 0x78], rsi
mov qword [rax + 0x80], 0
mov qword [rax + 0x88], rbp
mov qword [rax + 0x90], r14
mov byte [rax + 0x98], 0
mov edx, dword [rsp + 0x1e9]
mov qword [rsp + 0x30], rax
mov ecx, dword [rsp + 0x1ec]
mov rax, qword [rsp + 0x30]
mov dword [rax + 0x99], edx
mov rax, qword [rsp + 0x30]
mov dword [rax + 0x9c], ecx
mov rax, qword [rsp + 0x30]
mov qword [rax + 0xa0], 1
mov rax, qword [rsp + 0x30]
mov qword [rax + 0xa8], r15
mov rax, qword [rsp + 0x30]
mov qword [rax + 0xb0], 0
mov rax, qword [rsp + 0x30]
mov qword [rax + 0xb8], rdi
mov rax, qword [rsp + 0x30]
mov qword [rax + 0xc0], r15
mov rax, qword [rsp + 0x30]
mov qword [rax + 0xc8], 0
mov rax, qword [rsp + 0x30]
mov byte [rax + 0xd0], 0
mov eax, dword [rsp + 0x1e2]
mov ecx, dword [rsp + 0x1e5]
mov rdx, qword [rsp + 0x30]
mov dword [rdx + 0xd4], ecx
mov rcx, qword [rsp + 0x30]
mov dword [rcx + 0xd1], eax
mov rax, qword [rsp + 0x30]
mov qword [rax + 0xd8], r15
mov rax, qword [rsp + 0x30]
mov rcx, qword [rsp + 0x48]
mov qword [rax + 0xe0], rcx
mov rax, qword [rsp + 0x30]
mov qword [rax + 0x108], 0
mov rax, qword [rsp + 0x30]
mov byte [rax + 0x110], 0
mov rax, qword [rsp + 0x30]
mov qword [rax + 0x118], 0
pxor xmm0, xmm0
mov rax, qword [rsp + 0x30]
movdqu xmmword [rax + 0xe8], xmm0
mov rax, qword [rsp + 0x30]
movdqu xmmword [rax + 0xf1], xmm0
mov rax, qword [rsp + 0x30]
mov qword [rax + 0x120], 8
mov rax, qword [rsp + 0x30]
mov qword [rax + 0x128], 0
mov rcx, qword [rsp + 0x30]
add rcx, 0x130
lea rdx, [rsp + 0x2e0]
mov r8d, 0xc0
call sub.VCRUNTIME140.dll_memcpy
mov rcx, qword [rsp + 0x30]
mov rax, qword [rsp + 0xc0]
mov qword [rcx + 0x1f0], rax
mov qword [rcx + 0x1f8], 0
mov byte [rcx + 0x200], 0
movzx eax, word [rsp + 0xb5]
mov word [rcx + 0x201], ax
movzx eax, byte [rsp + 0xb7]
mov byte [rcx + 0x203], al
mov eax, dword [rsp + 0x38]
mov dword [rcx + 0x204], eax
mov eax, dword [rsp + 0x98]
mov dword [rcx + 0x208], eax
mov qword [rsp + 0xf0], 0
mov qword [rsp + 0xf8], 8
mov qword [rsp + 0x100], 0
mov rdi, qword [rsp + 0x70]
mov r14, qword [rsp + 0x78]
mov qword [rsp + 0x78], 0
test r14, r14
je 0x14000ffee
shl r14, 3
mov ebp, 8
xor esi, esi
mov r13, qword [sym.imp.kernel32.dll_HeapAlloc]
xor r12d, r12d
jmp 0x14000ff45
mov qword [rbp + rsi*8], r15
mov rsi, qword [rsp + 0x100]
inc rsi
mov qword [rsp + 0x100], rsi
inc r12
add r14, 0xfffffffffffffff8
je 0x140010005
mov rbx, qword [rdi + r12*8]
lock inc qword [rcx]
jle 0x14000fa30
movzx eax, byte [0x140026190]
mov rax, qword [0x140026178]
test rax, rax
jne 0x14000ff7c
call qword [sym.imp.kernel32.dll_GetProcessHeap]
test rax, rax
je 0x14000fa30
mov qword [0x140026178], rax
mov r8d, 0x28
mov rcx, rax
xor edx, edx
call r13
test rax, rax
je 0x14000fa30
mov r15, rax
mov qword [rax], 1
mov qword [rax + 8], 1
mov rcx, qword [rsp + 0x30]
mov qword [rax + 0x10], rcx
mov qword [rax + 0x18], r12
mov qword [rax + 0x20], rbx
cmp rsi, qword [rsp + 0xf0]
jne 0x14000ff20
lea rcx, [rsp + 0xf0]
mov rdx, rsi
call fcn.140008640
mov rcx, qword [rsp + 0x30]
mov rbp, qword [rsp + 0xf8]
mov rsi, qword [rsp + 0x100]
jmp 0x14000ff20
lea rdx, [rdi + r14*8]
sub rdx, rdi
je 0x140010003
shr rdx, 3
mov rcx, rdi
call fcn.140013b30
xor esi, esi
mov rax, qword [rsp + 0xf0]
mov qword [rsp + 0xe0], rax
mov r12, qword [rsp + 0xf8]
mov rdi, qword [rsp + 0x70]
mov rdx, qword [rsp + 0x78]
mov rcx, rdi
call fcn.140013b30
cmp qword [rsp + 0x68], 0
je 0x140010049
mov rcx, qword [0x140026178]
xor edx, edx
mov r8, rdi
call qword [sym.imp.kernel32.dll_HeapFree]
mov rax, qword [rsp + 0xd0]
lock dec qword [rax]
jne 0x140010064
lea rcx, [rsp + 0xd0]
call fcn.1400139a0
mov eax, dword [0x140026194]
mov rcx, qword gs:[0x58]
mov rax, qword [rcx + rax*8]
movzx eax, byte [rax + 0xd0]
cmp eax, 1
je 0x1400100b8
test eax, eax
jne 0x14000fa30
mov eax, dword [0x140026194]
mov rcx, qword gs:[0x58]
mov rdi, qword [rcx + rax*8]
lea rcx, [rdi + 0x80]
lea rdx, [0x14000da90]
call fcn.14000ab10
mov byte [rdi + 0xd0], 1
mov eax, dword [0x140026194]
mov rcx, qword gs:[0x58]
mov rax, qword [rcx + rax*8]
cmp qword [rax + 0x80], 0
jne 0x14000fa30
mov eax, dword [0x140026194]
mov rcx, qword gs:[0x58]
mov rax, qword [rcx + rax*8]
mov qword [rax + 0x80], 0xffffffffffffffff
mov r8, qword [rsp + 0x30]
lock inc qword [r8]
jle 0x14000fa30
mov eax, dword [0x140026194]
mov rcx, qword gs:[0x58]
mov rdx, qword [rcx + rax*8]
mov rax, qword [rdx + 0x88]
mov rcx, qword [rdx + 0x90]
mov qword [rdx + 0x88], 1
mov qword [rdx + 0x90], r8
inc qword [rdx + 0x80]
mov rdx, qword [rdx + 0x98]
cmp rdx, 0xffffffffffffffff
je 0x14000fa30
inc rdx
mov r8d, dword [0x140026194]
mov r9, qword gs:[0x58]
mov r8, qword [r9 + r8*8]
mov qword [r8 + 0x98], rdx
mov qword [rsp + 0x68], rax
mov qword [rsp + 0x70], rcx
mov qword [rsp + 0x78], rdx
lea r13, [r12 + rsi*8]
test rsi, rsi
mov qword [rsp + 0xb8], r12
je 0x14001116a
movabs rax, 0x8000000000000000
dec rax
mov qword [rsp + 0xa8], rax
xorps xmm6, xmm6
pcmpeqd xmm7, xmm7
movdqa xmm8, xmmword [0x1400214b0]
mov qword [rsp + 0xa0], r13
jmp 0x1400101dd
add r12, 8
cmp r12, r13
je 0x14001119c
mov rsi, qword [r12]
mov eax, dword [0x140026194]
mov rcx, qword gs:[0x58]
mov rax, qword [rcx + rax*8]
movzx eax, byte [rax + 0xd0]
cmp eax, 1
je 0x140010235
test eax, eax
jne 0x14000fa30
mov eax, dword [0x140026194]
mov rcx, qword gs:[0x58]
mov rdi, qword [rcx + rax*8]
lea rcx, [rdi + 0x80]
lea rdx, [0x14000da90]
call fcn.14000ab10
mov byte [rdi + 0xd0], 1
mov eax, dword [0x140026194]
mov rcx, qword gs:[0x58]
mov rax, qword [rcx + rax*8]
mov rax, qword [rax + 0x80]
cmp rax, qword [rsp + 0xa8]
jae 0x14000fa30
lea rcx, [rax + 1]
mov edx, dword [0x140026194]
mov r8, qword gs:[0x58]
mov rdx, qword [r8 + rdx*8]
mov qword [rdx + 0x80], rcx
mov rbp, qword [rdx + 0x88]
cmp rbp, 2
je 0x140011623
mov eax, dword [0x140026194]
mov rcx, qword gs:[0x58]
mov rax, qword [rcx + rax*8]
mov r14, qword [rax + 0x90]
mov ecx, 1
lock xadd qword [r14], rcx
test rbp, rbp
je 0x1400102d0
mov eax, 1
test rcx, rcx
jns 0x1400102db
jmp 0x14000fa30
test rcx, rcx
js 0x14000fa30
xor eax, eax
mov ecx, dword [0x140026194]
mov rdx, qword gs:[0x58]
mov rcx, qword [rdx + rcx*8]
dec qword [rcx + 0x80]
test rbp, rbp
mov qword [rsp + 0xd0], rax
mov qword [rsp + 0xd8], r14
mov edi, 0x1f0
mov eax, 0x188
cmove rdi, rax
mov r15d, 1
lock xadd qword [0x140026038], r15
movzx eax, byte [0x140026190]
mov rax, qword [0x140026178]
test rax, rax
jne 0x14001034e
call qword [sym.imp.kernel32.dll_GetProcessHeap]
test rax, rax
je 0x14000fa30
mov qword [0x140026178], rax
mov r8d, 0x100
mov rcx, rax
xor edx, edx
call qword [sym.imp.kernel32.dll_HeapAlloc]
test rax, rax
je 0x14000fa30
mov rcx, rax
and rcx, 0xffffffffffffff80
lea rbx, [rcx + 0x80]
mov qword [rcx + 0x78], rax
mov qword [rcx + 0x80], 0xcc
mov qword [rcx + 0x88], 0
lea rax, [0x140022da0]
mov qword [rcx + 0x90], rax
mov qword [rcx + 0x98], 0
mov qword [rcx + 0xa0], r15
mov qword [rcx + 0xa8], 2
mov qword [rcx + 0xb0], rsi
movups xmmword [rcx + 0xc8], xmm6
mov qword [rcx + 0xd8], 0
mov rdi, qword [r14 + rdi]
lea rsi, [rdi + 0x40]
mov rcx, rsi
call qword [sym.imp.kernel32.dll_AcquireSRWLockExclusive]
movzx eax, byte [rdi + 0x48]
cmp byte [rdi + 0xcc], 0
je 0x140010410
lock sub qword [rbx], 0x40
jb 0x14000fa30
mov rax, qword [rbx + 0x10]
mov rcx, rbx
call qword [rax + 0x30]
jmp 0x140011010
mov rcx, qword [rdi + 0x50]
mov rax, qword [rdi + 0x68]
cmp rax, rcx
jne 0x14001042e
lea rcx, [rdi + 0x50]
call section..text
mov rcx, qword [rdi + 0x50]
mov rax, qword [rdi + 0x68]
mov rdx, qword [rdi + 0x60]
add rdx, rax
cmp rdx, rcx
mov r8d, 0
cmovae r8, rcx
sub rdx, r8
mov rcx, qword [rdi + 0x58]
shl rdx, 4
mov qword [rcx + rdx], rbx
mov byte [rcx + rdx + 8], 1
inc rax
mov qword [rdi + 0x68], rax
lock inc qword [rdi + 0x110]
mov rax, qword [rdi + 0x108]
test rax, rax
je 0x140010494
lock dec qword [rdi + 0x108]
inc dword [rdi + 0xc8]
add rdi, 0xd0
mov rcx, rdi
call qword [sym.imp.kernel32.dll_WakeConditionVariable]
jmp 0x140011010
mov rax, qword [rdi + 0x100]
cmp rax, qword [rdi + 0xf8]
je 0x140011010
mov rax, qword [rdi + 0xa0]
test rax, rax
je 0x14000fa30
lock inc qword [rax]
jle 0x14000fa30
mov qword [rsp + 0x98], rax
mov rax, qword [rdi + 0xc0]
mov qword [rsp + 0x48], rax
mov rax, qword [rdi + 0x30]
mov r8, qword [rdi + 0x38]
mov rcx, qword [r8 + 0x10]
dec rcx
and rcx, 0xfffffffffffffff0
lea rdx, [rcx + rax]
add rdx, 0x10
lea rcx, [rsp + 0xf0]
call qword [r8 + 0x28]
mov rax, qword [rdi + 0x10]
test rax, rax
je 0x14001050f
mov rcx, qword [rdi + 0x18]
mov qword [rsp + 0x38], rcx
mov r11, qword [rsp + 0xf0]
mov r15, qword [rsp + 0xf8]
mov r13, qword [rsp + 0x100]
mov ecx, 1
lock xadd qword [r14], rcx
test rbp, rbp
je 0x14001055b
mov edx, 1
mov qword [rsp + 0x90], rdx
test rcx, rcx
js 0x14000fa30
test rax, rax
mov qword [rsp + 0x88], rsi
jne 0x14001058f
jmp 0x14001057b
test rcx, rcx
js 0x14000fa30
xor ecx, ecx
mov qword [rsp + 0x90], rcx
test rax, rax
mov qword [rsp + 0x88], rsi
jne 0x14001058f
mov rax, qword [0x140026160]
test rax, rax
je 0x1400105c0
dec rax
mov qword [rsp + 0x38], rax
movabs rax, 0x8000000000000000
cmp r11, rax
jne 0x14001075e
xor esi, esi
movzx eax, byte [0x140026190]
mov rax, qword [0x140026178]
test rax, rax
jne 0x14001094b
jmp 0x140010935
mov qword [rsp + 0x40], r11
mov r8d, 0xe
lea rcx, [rsp + 0xf0]
lea rdx, str.RUST_MIN_STACKNtWaitForKeyedEvent
call fcn.14000bec0
mov rsi, qword [rsp + 0xf0]
movabs rax, 0x8000000000000000
cmp rsi, rax
jne 0x140010600
mov r11, qword [rsp + 0x40]
jmp 0x140010737
mov rdx, qword [rsp + 0xf8]
mov r8, qword [rsp + 0x100]
lea rcx, [rsp + 0x220]
mov qword [rsp + 0x80], rdx
call fcn.140006950
cmp qword [rsp + 0x220], 0
mov r8b, 1
jne 0x140010669
mov rcx, qword [rsp + 0x230]
test rcx, rcx
mov r11, qword [rsp + 0x40]
je 0x140010673
mov r8, qword [rsp + 0x228]
movzx eax, byte [r8]
cmp eax, 0x2d
je 0x140010678
cmp eax, 0x2b
jne 0x140010682
dec rcx
je 0x140010703
inc r8
jmp 0x140010682
mov r11, qword [rsp + 0x40]
jmp 0x140010706
jmp 0x140010706
cmp rcx, 1
je 0x140010703
cmp rcx, 0x11
jae 0x1400106bf
xor eax, eax
xor edx, edx
mov qword [rsp + 0x38], rdx
movzx edx, byte [r8 + rax]
add edx, 0xffffffd0
cmp edx, 9
ja 0x140010703
mov r9, qword [rsp + 0x38]
lea r9, [r9 + r9*4]
mov edx, edx
lea rdx, [rdx + r9*2]
mov qword [rsp + 0x38], rdx
inc rax
cmp rcx, rax
jne 0x140010691
xor r8d, r8d
jmp 0x140010706
xor r9d, r9d
xor eax, eax
mov qword [rsp + 0x38], rax
cmp rcx, r9
je 0x1400106ba
movzx r10d, byte [r8 + r9]
mov rax, qword [rsp + 0x38]
mov edx, 0xa
mul rdx
seto dl
add r10d, 0xffffffd0
mov qword [rsp + 0x38], rax
cmp r10d, 9
ja 0x140010703
test dl, dl
jne 0x140010703
mov eax, r10d
inc r9
add qword [rsp + 0x38], rax
jae 0x1400106c9
mov r8b, 1
test rsi, rsi
je 0x14001072d
mov rcx, qword [0x140026178]
xor edx, edx
mov esi, r8d
mov r8, qword [rsp + 0x80]
call qword [sym.imp.kernel32.dll_HeapFree]
mov r8d, esi
mov r11, qword [rsp + 0x40]
test r8b, r8b
mov rax, qword [rsp + 0x38]
je 0x14001073c
mov eax, 0x200000
mov qword [rsp + 0x38], rax
inc rax
mov qword [0x140026160], rax
movabs rax, 0x8000000000000000
cmp r11, rax
je 0x1400105a2
cmp r13, 0x10
jae 0x140010788
test r13, r13
je 0x140010823
xor eax, eax
nop
cmp byte [r15 + rax], 0
je 0x14000fa30
inc rax
cmp r13, rax
jne 0x140010770
jmp 0x140010823
lea rax, [r15 + 7]
and rax, 0xfffffffffffffff8
sub rax, r15
jne 0x14001079d
lea rcx, [r13 - 0x10]
xor eax, eax
jmp 0x1400107d5
cmp rax, r13
cmovae rax, r13
xor ecx, ecx
nop word cs:[rax + rax]
cmp byte [r15 + rcx], 0
je 0x14000fa30
inc rcx
cmp rax, rcx
jne 0x1400107b0
lea rcx, [r13 - 0x10]
nop word [rax + rax]
cmp rax, rcx
ja 0x14001080b
movdqu xmm0, xmmword [r15 + rax]
movdqa xmm1, xmm0
paddq xmm1, xmm8
pandn xmm0, xmm1
pshufd xmm1, xmm0, 0xee
por xmm1, xmm0
movq rdx, xmm1
movabs r8, 0x8080808080808080
test rdx, r8
jne 0x14001080b
add rax, 0x10
jmp 0x1400107d0
cmp rax, r13
je 0x140010823
cmp byte [r15 + rax], 0
je 0x14000fa30
inc rax
cmp r13, rax
jne 0x140010810
mov qword [rsp + 0x50], r11
mov qword [rsp + 0x58], r15
mov qword [rsp + 0x60], r13
cmp r11, r13
jne 0x1400108c3
mov rsi, r13
inc rsi
je 0x14000fa30
test r11, r11
mov qword [rsp + 0x40], r11
je 0x140010868
mov qword [rsp + 0xf0], r15
mov qword [rsp + 0x100], r11
mov eax, 1
jmp 0x14001086a
xor eax, eax
mov rdx, rsi
not rdx
shr rdx, 0x3f
mov qword [rsp + 0xf8], rax
lea rcx, [rsp + 0x220]
mov r8, rsi
lea r9, [rsp + 0xf0]
call fcn.140004e20
cmp qword [rsp + 0x220], 0
mov rax, qword [rsp + 0x228]
je 0x1400110ab
movabs rcx, 0x8000000000000001
cmp rax, rcx
mov r11, qword [rsp + 0x40]
jne 0x14001166b
cmp r13, r11
jne 0x1400108df
lea rcx, [rsp + 0x50]
mov rdx, r13
call fcn.140004ed0
mov r15, qword [rsp + 0x58]
mov r13, qword [rsp + 0x60]
mov byte [r15 + r13], 0
inc r13
mov qword [rsp + 0x60], r13
mov rsi, qword [rsp + 0x58]
cmp qword [rsp + 0x50], r13
jbe 0x140010922
mov rcx, qword [0x140026178]
xor edx, edx
mov r8, rsi
test r13, r13
je 0x140011084
mov r9, r13
call qword [sym.imp.kernel32.dll_HeapReAlloc]
mov rsi, rax
test rax, rax
je 0x14000fa30
movzx eax, byte [0x140026190]
mov rax, qword [0x140026178]
test rax, rax
jne 0x14001094b
call qword [sym.imp.kernel32.dll_GetProcessHeap]
test rax, rax
je 0x14000fa30
mov qword [0x140026178], rax
mov r8d, 0x30
mov rcx, rax
xor edx, edx
call qword [sym.imp.kernel32.dll_HeapAlloc]
test rax, rax
je 0x14000fa30
mov rdx, rax
mov qword [rax], 1
mov qword [rax + 8], 1
mov qword [rax + 0x18], rsi
mov qword [rax + 0x20], r13
mov rax, qword [0x1400260f0]
nop word cs:[rax + rax]
mov rcx, rax
inc rcx
je 0x14000fa30
lock cmpxchg qword [0x1400260f0], rcx
jne 0x140010990
mov qword [rdx + 0x10], rcx
mov byte [rdx + 0x28], 0
lock inc qword [rdx]
jle 0x14000fa30
mov qword [rsp + 0x40], rdx
movzx eax, byte [0x140026190]
mov rax, qword [0x140026178]
test rax, rax
jne 0x1400109e7
call qword [sym.imp.kernel32.dll_GetProcessHeap]
test rax, rax
je 0x14000fa30
mov qword [0x140026178], rax
mov r8d, 0x30
mov rcx, rax
xor edx, edx
call qword [sym.imp.kernel32.dll_HeapAlloc]
test rax, rax
je 0x14000fa30
mov rsi, rax
mov qword [rax], 1
mov qword [rax + 8], 1
movups xmmword [rax + 0x10], xmm6
mov qword [rsp + 0xf0], rax
lock inc qword [rax]
jle 0x14000fa30
movzx eax, byte [0x140026110]
test al, al
je 0x140010abc
mov byte [0x140026110], 1
mov eax, dword [0x140026194]
mov rcx, qword gs:[0x58]
mov rax, qword [rcx + rax*8]
cmp qword [rax + 0x18], 0
je 0x140010a65
lea rax, [rax + 0x20]
jmp 0x140010a75
xor ecx, ecx
call fcn.140009df0
test rax, rax
je 0x14000fa30
mov r13, qword [rax]
mov qword [rax], 0
test r13, r13
je 0x140010abc
lock inc qword [r13]
jle 0x14000fa30
mov byte [0x140026110], 1
mov eax, dword [0x140026194]
mov rcx, qword gs:[0x58]
mov rax, qword [rcx + rax*8]
cmp qword [rax + 0x18], 0
je 0x140010af9
lea rax, [rax + 0x20]
jmp 0x140010b09
movzx eax, byte [0x140026110]
test al, al
je 0x140010af4
mov byte [0x140026110], 1
mov eax, dword [0x140026194]
mov rcx, qword gs:[0x58]
mov rax, qword [rcx + rax*8]
cmp qword [rax + 0x18], 0
je 0x140010b16
lea rax, [rax + 0x20]
jmp 0x140010b26
xor r13d, r13d
jmp 0x140010b43
xor ecx, ecx
call fcn.140009df0
test rax, rax
je 0x140011670
mov rcx, qword [rax]
mov qword [rax], r13
test rcx, rcx
jne 0x140010b38
jmp 0x140010b43
xor ecx, ecx
call fcn.140009df0
test rax, rax
je 0x14000fa30
mov rcx, qword [rax]
mov qword [rax], 0
xor r13d, r13d
test rcx, rcx
je 0x140010b43
lock dec qword [rcx]
jne 0x140010b43
call fcn.140009f70
mov rax, qword [rsp + 0xf0]
mov rcx, qword [rax + 0x10]
test rcx, rcx
je 0x140010b5f
lock inc qword [rcx + 0x18]
jle 0x14001165e
mov qword [rsp + 0x80], rax
movzx eax, byte [0x140026190]
mov rax, qword [0x140026178]
test rax, rax
jne 0x140010b90
call qword [sym.imp.kernel32.dll_GetProcessHeap]
test rax, rax
je 0x14000fa30
mov qword [0x140026178], rax
mov r8d, 0x38
mov rcx, rax
xor edx, edx
call qword [sym.imp.kernel32.dll_HeapAlloc]
test rax, rax
je 0x14000fa30
mov r15, rax
mov rax, qword [rsp + 0x40]
mov qword [r15], rax
mov qword [r15 + 8], rsi
mov qword [r15 + 0x10], r13
mov rax, qword [rsp + 0x90]
mov qword [r15 + 0x18], rax
mov qword [r15 + 0x20], r14
mov rax, qword [rsp + 0x98]
mov qword [r15 + 0x28], rax
mov rax, qword [rsp + 0x48]
mov qword [r15 + 0x30], rax
movzx eax, byte [0x140026190]
mov rax, qword [0x140026178]
test rax, rax
je 0x140010bfc
mov r13, qword [rsp + 0x38]
jmp 0x140010c17
call qword [sym.imp.kernel32.dll_GetProcessHeap]
test rax, rax
mov r13, qword [rsp + 0x38]
je 0x14000fa30
mov qword [0x140026178], rax
mov r8d, 0x10
mov rcx, rax
xor edx, edx
call qword [sym.imp.kernel32.dll_HeapAlloc]
test rax, rax
je 0x14000fa30
mov rsi, rax
mov qword [rax], r15
lea rax, [0x140022e98]
mov qword [rsi + 8], rax
mov qword [rsp + 0x28], 0
mov dword [rsp + 0x20], 0x10000
xor ecx, ecx
mov rdx, r13
lea r8, [0x14000d290]
mov r9, rsi
call qword [sym.imp.kernel32.dll_CreateThread]
test rax, rax
je 0x140010f3d
mov qword [rsp + 0x38], rax
lock inc qword [rdi + 0x100]
inc qword [rdi + 0xc0]
mov rsi, qword [rdi + 0x90]
mov r13, qword [rdi + 0x98]
cmp qword [rdi + 0x80], 0
je 0x1400110c9
mov rcx, rsi
movabs rax, 0x736f6d6570736575
xor rcx, rax
mov rax, r13
movabs rdx, 0x646f72616e646f6d
xor rax, rdx
movabs rdx, 0x6c7967656e657261
xor rsi, rdx
add rcx, rax
rol rax, 0xd
mov r8, qword [rsp + 0x48]
xor r13, r8
xor rax, rcx
rol rcx, 0x20
movabs rdx, 0x7465646279746573
xor r13, rdx
add rsi, r13
rol r13, 0x10
xor r13, rsi
add rcx, r13
rol r13, 0x15
add rsi, rax
rol rax, 0x11
xor rax, rsi
rol rsi, 0x20
mov rdx, rcx
xor rdx, r8
add rdx, rax
rol rax, 0xd
movabs r8, 0x800000000000000
xor rcx, r8
xor rax, rdx
rol rdx, 0x20
xor rcx, r13
add rsi, rcx
rol rcx, 0x10
xor rcx, rsi
add rdx, rcx
rol rcx, 0x15
add rsi, rax
rol rax, 0x11
xor rcx, rdx
xor rax, rsi
rol rsi, 0x20
xor rdx, r8
add rdx, rax
rol rax, 0xd
xor rax, rdx
rol rdx, 0x20
xor rsi, 0xff
add rsi, rcx
rol rcx, 0x10
xor rcx, rsi
add rdx, rcx
rol rcx, 0x15
add rsi, rax
rol rax, 0x11
xor rax, rsi
rol rsi, 0x20
xor rcx, rdx
add rdx, rax
rol rax, 0xd
xor rax, rdx
rol rdx, 0x20
add rsi, rcx
rol rcx, 0x10
xor rcx, rsi
add rdx, rcx
rol rcx, 0x15
add rsi, rax
rol rax, 0x11
xor rax, rsi
rol rsi, 0x20
xor rcx, rdx
add rdx, rax
rol rax, 0xd
add rsi, rcx
rol rcx, 0x10
xor rcx, rsi
rol rcx, 0x15
xor rax, rdx
add rsi, rax
rol rax, 0x11
xor rax, rcx
mov r9, rsi
rol r9, 0x20
xor r9, rsi
xor r9, rax
mov rax, qword [rdi + 0x70]
mov rcx, qword [rdi + 0x78]
mov rdx, r9
shr rdx, 0x39
movd xmm0, edx
punpcklbw xmm0, xmm0
pshuflw xmm0, xmm0, 0
pshufd xmm0, xmm0, 0
xor r10d, r10d
xor r11d, r11d
and r9, rcx
movdqu xmm1, xmmword [rax + r9]
movdqa xmm2, xmm1
pcmpeqb xmm2, xmm0
pmovmskb esi, xmm2
nop dword [rax + rax]
test si, si
je 0x140010e60
lea r15d, [rsi - 1]
and r15d, esi
tzcnt esi, esi
add rsi, r9
and rsi, rcx
shl rsi, 5
mov r13, rax
sub r13, rsi
mov esi, r15d
mov r15, qword [rsp + 0x48]
cmp r15, qword [r13 - 0x20]
jne 0x140010e30
jmp 0x140010ea6
cmp r11, 1
mov r11d, 1
je 0x140010e86
pmovmskb r8d, xmm1
xor r11d, r11d
test r8d, r8d
setne r11b
tzcnt r8d, r8d
add r8, r9
and r8, rcx
pcmpeqb xmm1, xmm7
pmovmskb esi, xmm1
test esi, esi
jne 0x1400110de
add r9, r10
add r9, 0x10
add r10, 0x10
jmp 0x140010e16
mov rax, qword [r13 - 8]
mov qword [rsp + 0x100], rax
movdqu xmm0, xmmword [r13 - 0x18]
movdqa xmmword [rsp + 0xf0], xmm0
mov rax, qword [rsp + 0x40]
mov qword [r13 - 0x18], rax
mov rax, qword [rsp + 0x80]
mov qword [r13 - 0x10], rax
mov rax, qword [rsp + 0x38]
mov qword [r13 - 8], rax
mov rsi, qword [rsp + 0xf0]
test rsi, rsi
mov r13, qword [rsp + 0xa0]
je 0x140010f30
mov rcx, qword [rsp + 0x100]
call qword [sym.imp.kernel32.dll_CloseHandle]
lock dec qword [rsi]
jne 0x140010f15
mov rcx, qword [rsp + 0xf0]
call fcn.140009f10
mov rax, qword [rsp + 0xf8]
lock dec qword [rax]
jne 0x140010f30
lea rcx, [rsp + 0xf8]
call fcn.140013350
mov rsi, qword [rsp + 0x88]
jmp 0x140011010
mov r15, qword [rsi]
mov r13, qword [rsi + 8]
mov rcx, r15
call qword [r13]
cmp qword [r13 + 8], 0
je 0x140010f6f
cmp qword [r13 + 0x10], 0x11
jb 0x140010f5d
mov r15, qword [r15 - 8]
mov rcx, qword [0x140026178]
xor edx, edx
mov r8, r15
call qword [sym.imp.kernel32.dll_HeapFree]
mov rcx, qword [0x140026178]
xor edx, edx
mov r8, rsi
call qword [sym.imp.kernel32.dll_HeapFree]
call qword [sym.imp.kernel32.dll_GetLastError]
mov esi, eax
mov rax, qword [rsp + 0x80]
lock dec qword [rax]
je 0x140010fbf
mov rcx, qword [rsp + 0x40]
lock dec qword [rcx]
mov r13, qword [rsp + 0xa0]
je 0x140010fdf
cmp esi, 0x2733
mov rsi, qword [rsp + 0x88]
je 0x140010ff8
jmp 0x140011653
lea rcx, [rsp + 0xf0]
call fcn.140013350
mov rcx, qword [rsp + 0x40]
lock dec qword [rcx]
mov r13, qword [rsp + 0xa0]
jne 0x140010faa
call fcn.140009f10
cmp esi, 0x2733
mov rsi, qword [rsp + 0x88]
jne 0x140011653
mov rax, qword [rdi + 0x100]
test rax, rax
je 0x140011653
nop dword [rax + rax]
mov rcx, rsi
call qword [sym.imp.kernel32.dll_ReleaseSRWLockExclusive]
lock dec qword [r14]
sete al
test rbp, rbp
je 0x140011040
test al, al
je 0x140011060
lea rcx, [rsp + 0xd8]
call fcn.140013810
jmp 0x140011060
test al, al
je 0x140011060
lea rcx, [rsp + 0xd8]
call fcn.140012e10
nop word cs:[rax + rax]
mov eax, 0xcc
mov ecx, 0x84
lock cmpxchg qword [rbx], rcx
je 0x1400101d0
mov rax, qword [rbx + 0x10]
mov rcx, rbx
call qword [rax + 0x20]
jmp 0x1400101d0
call qword [sym.imp.kernel32.dll_HeapFree]
mov esi, 1
movzx eax, byte [0x140026190]
mov rax, qword [0x140026178]
test rax, rax
jne 0x14001094b
jmp 0x140010935
mov qword [rsp + 0x58], rax
mov qword [rsp + 0x50], rsi
mov r15, rax
mov r11, rsi
cmp r13, r11
je 0x1400108c8
jmp 0x1400108df
lea rcx, [rdi + 0x70]
lea rdx, [rdi + 0x90]
call fcn.14001f740
jmp 0x140010ca1
movzx r9d, byte [rax + r8]
test r9b, r9b
js 0x1400110fb
movdqa xmm0, xmmword [rax]
pmovmskb r8d, xmm0
tzcnt r8d, r8d
movzx r9d, byte [rax + r8]
and r9b, 1
movzx r9d, r9b
sub qword [rdi + 0x80], r9
lea r9, [r8 - 0x10]
and rcx, r9
mov byte [rax + r8], dl
mov byte [rcx + rax + 0x10], dl
inc qword [rdi + 0x88]
shl r8, 5
mov rcx, rax
sub rcx, r8
neg r8
mov rdx, qword [rsp + 0x48]
mov qword [rax + r8 - 0x20], rdx
mov rax, qword [rsp + 0x40]
mov qword [rcx - 0x18], rax
mov rax, qword [rsp + 0x80]
mov qword [rcx - 0x10], rax
mov rax, qword [rsp + 0x38]
mov qword [rcx - 8], rax
mov r13, qword [rsp + 0xa0]
mov rsi, qword [rsp + 0x88]
jmp 0x140011010
sub r13, r12
je 0x14001119c
shr r13, 3
mov rsi, qword [rsp + 0xb8]
jmp 0x140011189
add rsi, 8
dec r13
je 0x14001119c
mov rax, qword [rsi]
lock dec qword [rax]
jne 0x140011180
mov rcx, rsi
call fcn.1400136b0
jmp 0x140011180
cmp qword [rsp + 0xe0], 0
je 0x1400111be
mov rcx, qword [0x140026178]
xor edx, edx
mov r8, qword [rsp + 0xb8]
call qword [sym.imp.kernel32.dll_HeapFree]
mov rax, qword [rsp + 0xc8]
mov qword [rax], 1
mov qword [rax + 0x38], 1
mov rcx, qword [rsp + 0x30]
mov qword [rax + 0x40], rcx
mov rcx, qword [rsp + 0xc0]
mov qword [rax + 0x48], rcx
mov rcx, qword [rsp + 0xe8]
mov qword [rax + 0x50], rcx
mov rdx, qword [rsp + 0x78]
lea rcx, [rsp + 0x68]
call fcn.140019350
mov rax, qword [rsp + 0x68]
cmp rax, 2
je 0x1400115e8
lea rcx, [rsp + 0x70]
test rax, rax
je 0x140011237
mov rax, qword [rsp + 0x70]
lock dec qword [rax]
jne 0x1400115e8
call fcn.140013810
jmp 0x1400115e8
mov rax, qword [rsp + 0x70]
lock dec qword [rax]
jne 0x1400115e8
call fcn.140012e10
jmp 0x1400115e8
mov rcx, qword [0x140026178]
xor edx, edx
mov r8, rbx
call qword [sym.imp.kernel32.dll_HeapFree]
mov ebx, 8
add dword [rsp + 0x30], r15d
add edi, r15d
add r14d, ebp
add r13d, ebp
nop word cs:[rax + rax]
mov r15d, 1
lock xadd qword [0x140026030], r15
test r15, r15
je 0x140011280
movzx eax, byte [rsp + 0xd2]
mov byte [rsp + 0x52], al
movzx eax, word [rsp + 0xd0]
mov word [rsp + 0x50], ax
mov eax, dword [rsp + 0xf0]
mov ecx, dword [rsp + 0xf3]
mov dword [rsp + 0x2e3], ecx
mov dword [rsp + 0x2e0], eax
movzx eax, byte [0x140026190]
mov rcx, qword [0x140026178]
test rcx, rcx
mov ebp, esi
jne 0x1400112f7
call qword [sym.imp.kernel32.dll_GetProcessHeap]
test rax, rax
je 0x14000fa30
mov rcx, rax
mov qword [0x140026178], rax
mov r8d, 0x1a8
xor edx, edx
call qword [sym.imp.kernel32.dll_HeapAlloc]
test rax, rax
je 0x14000fa30
mov rsi, rax
mov qword [rax], 1
mov qword [rax + 8], 1
mov eax, dword [rsp + 0x48]
mov dword [rsi + 0x10], eax
mov dword [rsi + 0x14], ebp
mov rax, qword [rsp + 0xa0]
mov qword [rsi + 0x18], rax
mov rax, qword [rsp + 0xc0]
mov qword [rsi + 0x20], rax
mov rax, qword [rsp + 0xe0]
mov qword [rsi + 0x28], rax
mov rax, qword [rsp + 0x90]
mov qword [rsi + 0x30], rax
mov rax, qword [rsp + 0xb8]
mov qword [rsi + 0x38], rax
mov qword [rsi + 0x40], 0
mov byte [rsi + 0x48], 0
movzx eax, word [rsp + 0x50]
mov word [rsi + 0x49], ax
movzx eax, byte [rsp + 0x52]
mov byte [rsi + 0x4b], al
mov eax, dword [rsp + 0x30]
mov dword [rsi + 0x4c], eax
mov dword [rsi + 0x50], edi
mov eax, dword [rsp + 0x88]
mov dword [rsi + 0x58], eax
movzx eax, byte [rsp + 0x80]
mov byte [rsi + 0x5c], al
movzx eax, byte [rsp + 0xe8]
mov byte [rsi + 0x5d], al
mov qword [rsi + 0x60], rbx
mov qword [rsi + 0x68], r12
mov qword [rsi + 0x70], 0
mov qword [rsi + 0x78], 3
mov qword [rsi + 0x80], r15
mov byte [rsi + 0x88], 0
mov eax, dword [rsp + 0x2e0]
mov ecx, dword [rsp + 0x2e3]
mov dword [rsi + 0x8c], ecx
mov dword [rsi + 0x89], eax
pxor xmm0, xmm0
movdqu xmmword [rsi + 0x90], xmm0
mov byte [rsi + 0xa0], 0
movdqu xmmword [rsi + 0xa8], xmm0
mov byte [rsi + 0xb8], 0
mov byte [rsi + 0xc0], 0
mov rcx, rsi
add rcx, 0xc8
lea rdx, [rsp + 0x220]
mov r8d, 0xc0
call sub.VCRUNTIME140.dll_memcpy
mov r15, qword [rsp + 0xa8]
mov qword [rsi + 0x188], r15
mov qword [rsi + 0x190], 0
mov byte [rsi + 0x198], 0
movzx eax, word [rsp + 0x68]
mov word [rsi + 0x199], ax
movzx eax, byte [rsp + 0x6a]
mov byte [rsi + 0x19b], al
mov dword [rsi + 0x19c], r14d
mov dword [rsi + 0x1a0], r13d
movzx eax, byte [0x140026190]
mov rcx, qword [0x140026178]
test rcx, rcx
je 0x140011496
mov rdi, qword [rsp + 0xc8]
jmp 0x1400114b7
call qword [sym.imp.kernel32.dll_GetProcessHeap]
test rax, rax
mov rdi, qword [rsp + 0xc8]
je 0x14000fa30
mov rcx, rax
mov qword [0x140026178], rax
mov r8d, 0x200
xor edx, edx
call qword [sym.imp.kernel32.dll_HeapAlloc]
test rax, rax
je 0x14000fa30
mov rbx, rax
movzx eax, byte [0x140026190]
mov rcx, qword [0x140026178]
test rcx, rcx
jne 0x1400114fd
call qword [sym.imp.kernel32.dll_GetProcessHeap]
test rax, rax
je 0x14000fa30
mov rcx, rax
mov qword [0x140026178], rax
mov r8d, 0x70
xor edx, edx
call qword [sym.imp.kernel32.dll_HeapAlloc]
test rax, rax
je 0x14000fa30
cmp dword [rsp + 0x48], 0
mov ecx, 0x1f
cmove ebp, ecx
mov rcx, qword [rsp + 0x40]
mov qword [rax], rcx
mov rcx, qword [rsp + 0x38]
mov qword [rax + 8], rcx
movaps xmm0, xmmword [rsp + 0x1f0]
movdqa xmm1, xmmword [rsp + 0x200]
movdqa xmm2, xmmword [rsp + 0x210]
movups xmmword [rax + 0x10], xmm0
movdqu xmmword [rax + 0x20], xmm1
movdqu xmmword [rax + 0x30], xmm2
mov qword [rax + 0x40], 0x40
mov qword [rax + 0x48], rbx
xorps xmm0, xmm0
movups xmmword [rax + 0x50], xmm0
mov dword [rax + 0x60], 0
mov dword [rax + 0x64], ebp
mov byte [rax + 0x68], 0
movups xmmword [rsp + 0x2e7], xmm0
mov qword [rsp + 0x2f7], 0
mov rcx, qword [rsp + 0x2ef]
mov qword [rdi + 0x28], rcx
mov rcx, qword [rsp + 0x2f7]
mov qword [rdi + 0x30], rcx
movdqu xmm0, xmmword [rsp + 0x2e0]
movdqu xmmword [rdi + 0x19], xmm0
mov qword [rdi], 0
mov qword [rdi + 8], rax
mov qword [rdi + 0x10], 0
mov byte [rdi + 0x18], 0
mov qword [rdi + 0x38], 0
mov qword [rdi + 0x40], rsi
mov qword [rdi + 0x48], r15
mov rax, qword [rsp + 0x98]
mov qword [rdi + 0x50], rax
movaps xmm6, xmmword [rsp + 0x3e0]
movaps xmm7, xmmword [rsp + 0x3f0]
movaps xmm8, xmmword [rsp + 0x400]
add rsp, 0x418
pop rbx
pop rbp
pop rdi
pop rsi
pop r12
pop r13
pop r14
pop r15
ret
cmp rcx, rsi
je 0x14000ec4b
jmp 0x14000fa30
mov ecx, dword [0x140026194]
mov rdx, qword gs:[0x58]
mov rcx, qword [rdx + rcx*8]
mov qword [rcx + 0x80], rax
ud2
mov rcx, qword [0x140026178]
xor edx, edx
mov r8, rbx
call qword [sym.imp.kernel32.dll_HeapFree]
ud2
mov rcx, rsi
call qword [sym.imp.kernel32.dll_ReleaseSRWLockExclusive]
ud2
add rcx, 0x10
xor edx, edx
call fcn.14000b9c0
ud2
test rax, rax
ud2
lock dec qword [r13]
jne 0x14000fa30
mov rcx, r13
call fcn.140009f70
ud2