Function at 0x140010830
Capabilities:
Create thread
Get system information on windows
Resolve function by parsing pe exports

Disassembly:
push rbp
push r15
push r14
push r13
push r12
push rsi
push rdi
push rbx
sub rsp, 0x838
lea rbp, [rsp + 0x80]
movaps xmmword [rbp + 0x7a0], xmm8
movaps xmmword [rbp + 0x790], xmm7
movaps xmmword [rbp + 0x780], xmm6
and rsp, 0xffffffffffffff80
mov r13, rdx
mov qword [rsp + 0xf8], rcx
mov r14, qword [rdx + 0x10]
test r14, r14
jne 0x140010acd
lea rdx, [0x140029556]
lea rcx, [rsp + 0x200]
call fcn.140013a00
mov rax, qword [rsp + 0x200]
mov rcx, rax
neg rcx
movabs rdi, 0x8000000000000001
jo 0x140010987
cmp rax, rdi
jne 0x14001090a
mov rcx, qword [rsp + 0x208]
movabs rax, 0x8000000000000000
cmp rcx, rax
je 0x140010987
mov r8, qword [rsp + 0x210]
mov r9, qword [rsp + 0x218]
test r9, r9
je 0x140010973
cmp r9, 1
jne 0x140010919
movzx eax, byte [r8]
cmp eax, 0x2b
je 0x140010973
mov r9d, 1
mov r10, r8
cmp eax, 0x2d
je 0x140010973
jmp 0x140012918
test rax, rax
je 0x140010987
mov r8, qword [rsp + 0x208]
jmp 0x140010978
cmp byte [r8], 0x2b
jne 0x14001290b
lea r10, [r8 + 1]
lea rax, [r9 - 1]
cmp r9, 0x12
mov r9, rax
jb 0x140012918
xor r11d, r11d
mov esi, 0xa
xor r14d, r14d
cmp r9, r11
je 0x140012943
mov rax, r14
mul rsi
seto bl
movzx edx, byte [r10 + r11]
add edx, 0xffffffd0
cmp edx, 9
ja 0x140010973
test bl, bl
jne 0x140010973
mov r14, rax
mov eax, edx
inc r11
add r14, rax
jae 0x140010943
test rcx, rcx
je 0x140010987
mov rcx, qword [0x14002e0f0]
xor edx, edx
call qword [sym.imp.KERNEL32.dll_HeapFree]
lea rdx, [0x140029567]
lea rcx, [rsp + 0x200]
call fcn.140013a00
mov rax, qword [rsp + 0x200]
mov rcx, rax
neg rcx
jo 0x140010a87
cmp rax, rdi
jne 0x140010a0a
mov rcx, qword [rsp + 0x208]
movabs rax, 0x8000000000000000
cmp rcx, rax
je 0x140010a87
mov r8, qword [rsp + 0x210]
mov r9, qword [rsp + 0x218]
test r9, r9
je 0x140010a73
cmp r9, 1
jne 0x140010a19
movzx eax, byte [r8]
cmp eax, 0x2b
je 0x140010a73
mov r9d, 1
mov r10, r8
cmp eax, 0x2d
je 0x140010a73
jmp 0x1400129f3
test rax, rax
je 0x140010a87
mov r8, qword [rsp + 0x208]
jmp 0x140010a78
cmp byte [r8], 0x2b
jne 0x1400129e6
lea r10, [r8 + 1]
lea rax, [r9 - 1]
cmp r9, 0x12
mov r9, rax
jb 0x1400129f3
xor r11d, r11d
mov esi, 0xa
xor r14d, r14d
cmp r9, r11
je 0x140012a23
mov rax, r14
mul rsi
seto bl
movzx edx, byte [r10 + r11]
add edx, 0xffffffd0
cmp edx, 9
ja 0x140010a73
test bl, bl
jne 0x140010a73
mov r14, rax
mov eax, edx
inc r11
add r14, rax
jae 0x140010a43
test rcx, rcx
je 0x140010a87
mov rcx, qword [0x14002e0f0]
xor edx, edx
call qword [sym.imp.KERNEL32.dll_HeapFree]
xorps xmm0, xmm0
movaps xmmword [rsp + 0x220], xmm0
movaps xmmword [rsp + 0x210], xmm0
movaps xmmword [rsp + 0x200], xmm0
lea rcx, [rsp + 0x200]
call qword [sym.imp.KERNEL32.dll_GetSystemInfo]
mov eax, dword [rsp + 0x220]
lea r14, str.The_number_of_hardware_threads_is_not_known_for_the_target_platform
test rax, rax
cmovne r14, rax
jne 0x140010acd
mov r14d, 1
cmp r14, 0xffff
mov esi, 0xffff
cmovb rsi, r14
movzx ecx, byte [r13 + 0x59]
mov qword [rsp + 0x200], 0
mov qword [rsp + 0x208], 8
xorps xmm6, xmm6
movups xmmword [rsp + 0x210], xmm6
mov qword [rsp + 0x220], 8
mov qword [rsp + 0x228], 0
test r14, r14
mov qword [rsp + 0xb0], r13
mov qword [rsp + 0x70], rsi
mov qword [rsp + 0x98], r14
jne 0x1400124bb
mov eax, 8
mov qword [rsp + 0x80], rax
xor r15d, r15d
xor r9d, r9d
xor r12d, r12d
mov qword [rsp + 0xa8], rax
mov qword [rsp + 0xb8], 0
mov qword [rsp + 0x90], r12
mov qword [rsp + 0x200], 0
mov qword [rsp + 0x208], 8
xorps xmm6, xmm6
movups xmmword [rsp + 0x210], xmm6
mov qword [rsp + 0x220], 8
mov qword [rsp + 0x228], 0
test r14, r14
jne 0x1400126b3
mov eax, 8
mov qword [rsp + 0xa0], rax
mov qword [rsp + 0x68], 0
xor edi, edi
movabs rsi, 0xfffffffffffffff
mov rax, qword [rsp + 0x210]
mov qword [rsp + 0xe0], rax
movups xmm0, xmmword [rsp + 0x200]
movaps xmmword [rsp + 0xd0], xmm0
mov rbx, r15
and rbx, rsi
mov ecx, 0x28
mov rax, rbx
mul rcx
jo 0x140012a73
movabs rcx, 0x8000000000000000
add rcx, 0xfffffffffffffff8
cmp rax, rcx
ja 0x140012a73
test rax, rax
je 0x140010cd6
movzx ecx, byte [0x14002e118]
xor ecx, ecx
mov rdx, rax
mov r14, r9
call fcn.140017130
test rax, rax
je 0x140012a73
mov r9, r14
mov r14, rax
test r15, rsi
je 0x140010ce7
add r15, rsi
and rsi, r15
je 0x140010cf1
inc rsi
and rsi, 0xfffffffffffffffe
lea rcx, [r14 + 0x48]
xor r12d, r12d
xorps xmm0, xmm0
mov rax, qword [rsp + 0x80]
nop dword [rax + rax]
mov rdx, qword [rax]
movzx r8d, byte [rax + 8]
movups xmmword [rcx - 0x48], xmm0
mov qword [rcx - 0x38], 0
mov qword [rcx - 0x30], rdx
mov byte [rcx - 0x28], r8b
mov rdx, qword [rax + 0x10]
movzx r8d, byte [rax + 0x18]
add rax, 0x20
movups xmmword [rcx - 0x20], xmm0
mov qword [rcx - 0x10], 0
mov qword [rcx - 8], rdx
mov byte [rcx], r8b
add r12, 2
add rcx, 0x50
cmp rsi, r12
jne 0x140010c80
test r15b, 1
mov rsi, qword [rsp + 0x70]
je 0x140010d07
jmp 0x140010d30
mov r14d, 8
xor ebx, ebx
test r15, rsi
jne 0x140010c56
xor r12d, r12d
mov rsi, qword [rsp + 0x70]
jmp 0x140010d30
xor r12d, r12d
mov rax, qword [rsp + 0x80]
test r15b, 1
mov rsi, qword [rsp + 0x70]
jne 0x140010d30
mov rcx, qword [rax]
movzx eax, byte [rax + 8]
lea rdx, [r12 + r12*4]
xorps xmm0, xmm0
movups xmmword [r14 + rdx*8], xmm0
mov qword [r14 + rdx*8 + 0x10], 0
mov qword [r14 + rdx*8 + 0x18], rcx
mov byte [r14 + rdx*8 + 0x20], al
inc r12
test r9, r9
je 0x140010d4c
mov rcx, qword [0x14002e0f0]
xor edx, edx
mov r8, qword [rsp + 0x80]
call qword [sym.imp.KERNEL32.dll_HeapFree]
cmp qword [rsp + 0x98], 0
mov qword [rsp + 0x100], rdi
je 0x140010da5
mov rdx, rsi
shl rdx, 7
movzx eax, byte [0x14002e118]
sub rdx, 0xffffffffffffff80
xor ecx, ecx
call fcn.140017130
test rax, rax
je 0x140012a73
mov edx, eax
and edx, 0x7f
mov r15, rax
and r15, 0xffffffffffffff80
mov qword [r15 + 0x78], rax
mov ecx, esi
and ecx, 3
cmp qword [rsp + 0x98], 4
jae 0x140010dbb
xor edi, edi
jmp 0x140010e15
mov r15d, 0x80
mov qword [rsp + 0x70], 0
xor edi, edi
jmp 0x140010e56
mov r8d, esi
and r8d, 0xfffc
mov r9, rax
sub r9, rdx
add r9, 0x200
xor edi, edi
nop word cs:[rax + rax]
mov qword [r9 - 0x180], 0
mov qword [r9 - 0x100], 0
mov qword [r9 - 0x80], 0
add rdi, 4
mov qword [r9], 0
add r9, 0x200
cmp r8, rdi
jne 0x140010de0
sub r15, 0xffffffffffffff80
test rcx, rcx
je 0x140010e56
mov r8, rdi
shl r8, 7
sub r8, rdx
add rax, r8
add rax, 0x80
neg rcx
xor edx, edx
nop word cs:[rax + rax]
mov qword [rax], 0
sub rax, 0xffffffffffffff80
dec rdx
cmp rcx, rdx
jne 0x140010e40
sub rdi, rdx
xorps xmm0, xmm0
movaps xmmword [rsp + 0x200], xmm0
mov qword [rsp + 0x210], 0
movups xmmword [rsp + 0x218], xmm0
mov qword [rsp + 0x228], 0
movaps xmmword [rsp + 0x230], xmm0
mov qword [rsp + 0x240], 0
movups xmmword [rsp + 0x248], xmm0
mov qword [rsp + 0x258], 0
movaps xmmword [rsp + 0x260], xmm0
mov qword [rsp + 0x270], 0
movups xmmword [rsp + 0x278], xmm0
mov qword [rsp + 0x288], 0
movaps xmmword [rsp + 0x290], xmm0
mov qword [rsp + 0x2a0], 0
movups xmmword [rsp + 0x2a8], xmm0
mov qword [rsp + 0x2b8], 0
movaps xmmword [rsp + 0x2c0], xmm0
mov qword [rsp + 0x2d0], 0
movups xmmword [rsp + 0x2d8], xmm0
mov qword [rsp + 0x2e8], 0
movaps xmmword [rsp + 0x2f0], xmm0
mov qword [rsp + 0x300], 0
movups xmmword [rsp + 0x308], xmm0
mov qword [rsp + 0x318], 0
movaps xmmword [rsp + 0x320], xmm0
mov qword [rsp + 0x330], 0
movups xmmword [rsp + 0x338], xmm0
mov qword [rsp + 0x348], 0
movaps xmmword [rsp + 0x350], xmm0
mov qword [rsp + 0x360], 0
movups xmmword [rsp + 0x368], xmm0
mov qword [rsp + 0x378], 0
movaps xmmword [rsp + 0x380], xmm0
mov qword [rsp + 0x390], 0
movups xmmword [rsp + 0x398], xmm0
mov qword [rsp + 0x3a8], 0
movaps xmmword [rsp + 0x3b0], xmm0
mov qword [rsp + 0x3c0], 0
movups xmmword [rsp + 0x3c8], xmm0
mov qword [rsp + 0x3d8], 0
movaps xmmword [rsp + 0x3e0], xmm0
mov qword [rsp + 0x3f0], 0
movups xmmword [rsp + 0x3f8], xmm0
mov qword [rsp + 0x408], 0
movaps xmmword [rsp + 0x410], xmm0
mov qword [rsp + 0x420], 0
movups xmmword [rsp + 0x428], xmm0
mov qword [rsp + 0x438], 0
movaps xmmword [rsp + 0x440], xmm0
mov qword [rsp + 0x450], 0
movups xmmword [rsp + 0x458], xmm0
mov qword [rsp + 0x468], 0
movaps xmmword [rsp + 0x470], xmm0
mov qword [rsp + 0x480], 0
movups xmmword [rsp + 0x488], xmm0
mov qword [rsp + 0x498], 0
movaps xmmword [rsp + 0x4a0], xmm0
mov qword [rsp + 0x4b0], 0
movups xmmword [rsp + 0x4b8], xmm0
mov qword [rsp + 0x4c8], 0
movaps xmmword [rsp + 0x4d0], xmm0
mov qword [rsp + 0x4e0], 0
movups xmmword [rsp + 0x4e8], xmm0
mov qword [rsp + 0x4f8], 0
movaps xmmword [rsp + 0x500], xmm0
mov qword [rsp + 0x510], 0
movups xmmword [rsp + 0x518], xmm0
mov qword [rsp + 0x528], 0
movaps xmmword [rsp + 0x530], xmm0
mov qword [rsp + 0x540], 0
movups xmmword [rsp + 0x548], xmm0
mov qword [rsp + 0x558], 0
movaps xmmword [rsp + 0x560], xmm0
mov qword [rsp + 0x570], 0
movups xmmword [rsp + 0x578], xmm0
mov qword [rsp + 0x588], 0
movaps xmmword [rsp + 0x590], xmm0
mov qword [rsp + 0x5a0], 0
movups xmmword [rsp + 0x5a8], xmm0
mov qword [rsp + 0x5b8], 0
movaps xmmword [rsp + 0x5c0], xmm0
mov qword [rsp + 0x5d0], 0
movups xmmword [rsp + 0x5d8], xmm0
mov qword [rsp + 0x5e8], 0
movaps xmmword [rsp + 0x5f0], xmm0
mov qword [rsp + 0x600], 0
movups xmmword [rsp + 0x608], xmm0
mov qword [rsp + 0x618], 0
movaps xmmword [rsp + 0x620], xmm0
mov qword [rsp + 0x630], 0
movups xmmword [rsp + 0x638], xmm0
mov qword [rsp + 0x648], 0
movaps xmmword [rsp + 0x650], xmm0
mov qword [rsp + 0x660], 0
movups xmmword [rsp + 0x668], xmm0
mov qword [rsp + 0x678], 0
movaps xmmword [rsp + 0x680], xmm0
mov qword [rsp + 0x690], 0
movups xmmword [rsp + 0x698], xmm0
mov qword [rsp + 0x6a8], 0
movaps xmmword [rsp + 0x6b0], xmm0
mov qword [rsp + 0x6c0], 0
movups xmmword [rsp + 0x6c8], xmm0
mov qword [rsp + 0x6d8], 0
movaps xmmword [rsp + 0x6e0], xmm0
mov qword [rsp + 0x6f0], 0
movups xmmword [rsp + 0x6f8], xmm0
mov qword [rsp + 0x708], 0
movaps xmmword [rsp + 0x710], xmm0
mov qword [rsp + 0x720], 0
movups xmmword [rsp + 0x728], xmm0
mov qword [rsp + 0x738], 0
movaps xmmword [rsp + 0x740], xmm0
mov qword [rsp + 0x750], 0
movups xmmword [rsp + 0x758], xmm0
mov qword [rsp + 0x768], 0
movaps xmmword [rsp + 0x770], xmm0
mov qword [rsp + 0x780], 0
movups xmmword [rsp + 0x788], xmm0
mov qword [rsp + 0x798], 0
movaps xmmword [rsp + 0x7a0], xmm0
mov qword [rsp + 0x7b0], 0
movups xmmword [rsp + 0x7b8], xmm0
mov qword [rsp + 0x7c8], 0
movaps xmmword [rsp + 0x7d0], xmm0
mov qword [rsp + 0x7e0], 0
movzx eax, byte [0x14002e118]
mov edx, 0x5f0
xor ecx, ecx
call fcn.140017130
test rax, rax
je 0x140012a73
mov rsi, rax
mov qword [rax], 0
mov rcx, rax
add rcx, 8
lea rdx, [rsp + 0x200]
mov r8d, 0x5e8
call sub.VCRUNTIME140.dll_memcpy
movaps xmm0, xmmword [rsp + 0xd0]
movups xmmword [rsp + 0x1e8], xmm0
mov rax, qword [rsp + 0xe0]
mov qword [rsp + 0x1f8], rax
movups xmm6, xmmword [r13 + 0x18]
movups xmm7, xmmword [r13 + 0x38]
movups xmm8, xmmword [r13 + 0x48]
mov qword [r13 + 0x18], 0
mov qword [r13 + 0x38], 0
mov qword [r13 + 0x48], 0
movzx eax, byte [0x14002e118]
mov edx, 0x300
xor ecx, ecx
call fcn.140017130
test rax, rax
je 0x140012a73
mov rcx, rax
and rcx, 0xffffffffffffff80
mov qword [rcx + 0x78], rax
mov qword [rcx + 0x80], 1
mov qword [rcx + 0x88], 1
mov qword [rcx + 0x100], 0
mov qword [rcx + 0x108], rsi
mov qword [rcx + 0x180], 0
mov qword [rcx + 0x188], rsi
mov byte [rcx + 0x200], 0
movups xmm0, xmmword [rsp + 0x1e1]
movups xmm1, xmmword [rsp + 0x1f0]
movups xmmword [rcx + 0x201], xmm0
movups xmmword [rcx + 0x210], xmm1
movaps xmmword [rcx + 0x220], xmm6
movaps xmmword [rcx + 0x230], xmm7
movaps xmmword [rcx + 0x240], xmm8
mov qword [rcx + 0x250], 1
mov rax, qword [rsp + 0x70]
mov qword [rcx + 0x258], rax
mov qword [rcx + 0x260], r15
mov qword [rcx + 0x268], rdi
lea rax, [rcx + 0x80]
mov qword [rsp + 0x78], rax
mov qword [rcx + 0x270], 0
mov qword [rcx + 0x278], rbx
mov qword [rcx + 0x280], r14
mov qword [rsp + 0xf0], rcx
mov qword [rcx + 0x288], r12
mov rax, qword [rsp + 0x90]
mov rdi, rax
shl rdi, 5
mov rbx, qword [rsp + 0xa8]
add rdi, rbx
mov r15, qword [rsp + 0x68]
shl r15, 4
mov r12, qword [rsp + 0xa0]
add r15, r12
test rax, rax
je 0x140012070
add qword [rsp + 0xf0], 0x250
xorps xmm6, xmm6
mov qword [rsp + 0x70], 0
mov r12, qword [rsp + 0xa0]
mov rbx, qword [rsp + 0xa8]
mov qword [rsp + 0x68], r15
jmp 0x14001153e
inc qword [rsp + 0x70]
cmp rbx, rdi
je 0x140012070
mov rax, rbx
add rbx, 0x20
movzx esi, byte [rax + 0x18]
cmp sil, 2
je 0x140012070
mov rcx, qword [rax + 0x10]
mov qword [rsp + 0x210], rcx
movups xmm0, xmmword [rax]
movaps xmmword [rsp + 0x200], xmm0
mov byte [rsp + 0x218], sil
mov ecx, dword [rax + 0x19]
mov edx, dword [rax + 0x1c]
lea r8, [rsp + 0x219]
mov dword [r8 + 3], edx
mov dword [r8], ecx
cmp r12, r15
je 0x140012055
lea rcx, [rax + 0x19]
mov r14, qword [r12]
movzx r15d, byte [r12 + 8]
mov rdx, qword [rax + 0x10]
mov qword [rsp + 0x1d0], rdx
movups xmm0, xmmword [rax]
movaps xmmword [rsp + 0x1c0], xmm0
mov eax, dword [rcx]
mov ecx, dword [rcx + 3]
mov dword [rsp + 0xc8], eax
mov dword [rsp + 0xcb], ecx
mov rdx, qword [r13 + 0x28]
movabs r9, 0x8000000000000000
test rdx, rdx
je 0x14001160b
mov rax, qword [r13 + 0x30]
lea rcx, [rsp + 0x200]
mov r8, qword [rsp + 0x70]
call qword [rax + 0x20]
mov r9, qword [rsp + 0x200]
lea rax, [rsp + 0x219]
movups xmm0, xmmword [rax - 0x11]
movaps xmmword [rsp + 0xd0], xmm0
mov r10, qword [r13]
mov r11, qword [r13 + 8]
mov rdx, qword [rsp + 0x78]
lock inc qword [rdx]
jle 0x140012a73
add r12, 0x10
mov qword [rsp + 0x168], r9
movaps xmm0, xmmword [rsp + 0xd0]
lea r8, [rsp + 0x170]
movups xmmword [r8], xmm0
mov qword [rsp + 0x158], r10
mov qword [rsp + 0x160], r11
mov rax, qword [rsp + 0x1d0]
lea rcx, [rsp + 0x190]
mov qword [rcx + 0x10], rax
movaps xmm0, xmmword [rsp + 0x1c0]
movups xmmword [rcx], xmm0
mov byte [rsp + 0x1a8], sil
mov eax, dword [rsp + 0xc8]
mov ecx, dword [rsp + 0xcb]
mov dword [r8 + 0x3c], ecx
mov dword [r8 + 0x39], eax
mov qword [rsp + 0x180], r14
mov byte [rsp + 0x188], r15b
mov qword [rsp + 0x1b0], rdx
mov rax, qword [rsp + 0x70]
mov qword [rsp + 0x1b8], rax
test rax, rax
jne 0x1400117e0
cmp byte [r13 + 0x58], 0
je 0x1400117e0
mov eax, dword [0x14002e11c]
mov rcx, qword gs:[0x58]
mov rax, qword [rcx + rax*8]
cmp qword [rax + 0x18], 0
mov r15, qword [rsp + 0x68]
jne 0x140012845
mov r14, rdx
lea r13, [rsp + 0x200]
mov rcx, r13
lea rdx, [rsp + 0x158]
call fcn.14000fc70
movzx eax, byte [0x14002e118]
mov edx, 0x200
xor ecx, ecx
call fcn.140017130
test rax, rax
je 0x140012a73
mov rsi, rax
and rsi, 0xffffffffffffff80
mov qword [rsi + 0x78], rax
sub rsi, 0xffffffffffffff80
mov r8d, 0x180
mov rcx, rsi
mov rdx, r13
call sub.VCRUNTIME140.dll_memcpy
mov eax, dword [0x14002e11c]
mov rcx, qword gs:[0x58]
mov rax, qword [rcx + rax*8]
cmp qword [rax + 0x18], 0
jne 0x140012a73
mov eax, dword [0x14002e11c]
mov rcx, qword gs:[0x58]
mov rax, qword [rcx + rax*8]
mov qword [rax + 0x18], rsi
cmp qword [r14 + 0x208], 0
mov r13, qword [rsp + 0xb0]
je 0x140012a73
mov r14, qword [r14 + 0x200]
lea rsi, [r14 + 4]
xor eax, eax
mov cl, 1
lock cmpxchg byte [r14 + 4], cl
jne 0x140011b53
mov byte [r14 + 5], 1
lock inc dword [r14]
mov rcx, r14
call qword [sym.imp.api_ms_win_core_synch_l1_2_0.dll_WakeByAddressAll]
xor eax, eax
xchg byte [r14 + 4], al
cmp al, 2
jne 0x140011530
mov rcx, rsi
call qword [sym.imp.api_ms_win_core_synch_l1_2_0.dll_WakeByAddressSingle]
jmp 0x140011530
mov rax, qword [rsp + 0x170]
mov qword [rsp + 0x88], rax
mov rax, qword [rsp + 0x178]
mov qword [rsp + 0x98], rax
lea rax, [rsp + 0x180]
movups xmm0, xmmword [rax]
movups xmm1, xmmword [rax + 0x10]
movups xmm2, xmmword [rax + 0x20]
movups xmm3, xmmword [rax + 0x30]
movaps xmmword [rsp + 0x200], xmm0
movaps xmmword [rsp + 0x210], xmm1
movaps xmmword [rsp + 0x220], xmm2
movaps xmmword [rsp + 0x230], xmm3
movabs rax, 0x8000000000000000
mov r14, rax
cmp r9, rax
mov r15, qword [rsp + 0x138]
mov r13, qword [rsp + 0xc0]
mov qword [rsp + 0x130], r9
mov qword [rsp + 0x80], r10
mov qword [rsp + 0x90], r11
je 0x1400118d5
mov rsi, qword [rsp + 0x98]
test rsi, rsi
js 0x140012a73
je 0x1400118a6
movzx eax, byte [0x14002e118]
xor ecx, ecx
mov rdx, rsi
call fcn.140017130
test rax, rax
je 0x140012a73
mov r15, rax
mov r14, rsi
jmp 0x1400118af
mov r15d, 1
xor r14d, r14d
mov rcx, r15
mov rdx, qword [rsp + 0x88]
mov r8, rsi
call sub.VCRUNTIME140.dll_memcpy
mov r13, rsi
mov r10, qword [rsp + 0x80]
mov r11, qword [rsp + 0x90]
test r10, r10
mov qword [rsp + 0xc0], r13
jne 0x140011a30
mov r11, qword [0x14002e0f8]
test r11, r11
je 0x1400118fa
dec r11
jmp 0x140011a30
mov r8d, 0xe
lea rcx, [rsp + 0xd0]
lea rdx, str.RUST_MIN_STACKRAYON_NUM_THREADSRAYON_RS_NUM_CPUS
call fcn.140016b10
mov rsi, qword [rsp + 0xd0]
movabs rax, 0x8000000000000000
cmp rsi, rax
jne 0x140011936
mov r11d, 0x200000
jmp 0x140011a1e
mov r13, qword [rsp + 0xd8]
mov r8, qword [rsp + 0xe0]
lea rcx, [rsp + 0x110]
mov rdx, r13
call fcn.14000e8e0
test byte [rsp + 0x110], 1
jne 0x1400119f3
mov r8, qword [rsp + 0x120]
test r8, r8
je 0x1400119f3
mov rcx, qword [rsp + 0x118]
cmp r8, 1
jne 0x14001199b
movzx eax, byte [rcx]
cmp eax, 0x2b
je 0x1400119f3
mov r8d, 1
cmp eax, 0x2d
je 0x1400119f3
jmp 0x140011b6a
cmp byte [rcx], 0x2b
jne 0x140011b60
inc rcx
lea rax, [r8 - 1]
cmp r8, 0x12
mov r8, rax
jb 0x140011b6a
xor r9d, r9d
xor r11d, r11d
nop
cmp r8, r9
je 0x1400119f9
mov rax, r11
mov edx, 0xa
mul rdx
seto r10b
movzx edx, byte [rcx + r9]
add edx, 0xffffffd0
cmp edx, 9
ja 0x1400119f3
test r10b, r10b
jne 0x1400119f3
mov r11, rax
mov eax, edx
inc r9
add r11, rax
jae 0x1400119c0
mov r11d, 0x200000
test rsi, rsi
je 0x140011a16
mov rcx, qword [0x14002e0f0]
xor edx, edx
mov r8, r13
mov rsi, r11
call qword [sym.imp.KERNEL32.dll_HeapFree]
mov r11, rsi
mov r13, qword [rsp + 0xc0]
lea rax, [r11 + 1]
mov qword [0x14002e0f8], rax
nop dword [rax]
mov qword [rsp + 0x128], r11
movabs rax, 0x8000000000000000
cmp r14, rax
mov qword [rsp + 0x138], r15
jne 0x140011ab0
movzx eax, byte [0x14002e118]
mov edx, 0x38
xor ecx, ecx
call fcn.140017130
test rax, rax
je 0x140012a73
mov r13, rax
mov qword [rax], 1
mov qword [rax + 8], 1
mov qword [rax + 0x10], 2
mov rax, qword [0x14002e100]
nop dword [rax]
cmp rax, 0xffffffffffffffff
je 0x140012a73
lea rcx, [rax + 1]
lock cmpxchg qword [0x14002e100], rcx
jne 0x140011a90
jmp 0x140011d09
cmp r13, 0xf
movabs r10, 0x8080808080808080
movabs r11, 0x101010101010100
ja 0x140011af8
test r13, r13
je 0x140011b41
xor eax, eax
nop word cs:[rax + rax]
cmp byte [r15 + rax], 0
je 0x140012a73
inc rax
cmp r13, rax
jne 0x140011ae0
jmp 0x140011bf3
lea rax, [r15 + 7]
and rax, 0xfffffffffffffff8
sub rax, r15
jne 0x140011b10
lea rcx, [r13 - 0x10]
xor eax, eax
jmp 0x140011ba0
xor ecx, ecx
nop word cs:[rax + rax]
cmp byte [r15 + rcx], 0
je 0x140012a73
inc rcx
cmp rax, rcx
jne 0x140011b20
lea rcx, [r13 - 0x10]
cmp rax, rcx
jbe 0x140011ba0
jmp 0x140011bcf
cmp r14, r13
jne 0x140011c26
lea rsi, [r13 + 1]
jmp 0x140011c5f
mov rcx, rsi
call fcn.1400219a0
jmp 0x1400117b1
cmp r8, 0x11
jae 0x1400119b8
xor eax, eax
xor r11d, r11d
nop
movzx edx, byte [rcx + rax]
add edx, 0xffffffd0
cmp edx, 9
ja 0x1400119f3
lea r9, [r11 + r11*4]
mov edx, edx
lea r11, [rdx + r9*2]
inc rax
cmp r8, rax
jne 0x140011b70
jmp 0x1400119f9
mov rdx, qword [r15 + rax]
mov r8, qword [r15 + rax + 8]
mov r9, r11
sub r9, r8
or r9, r8
mov r8, r11
sub r8, rdx
or r8, rdx
and r8, r10
and r8, r9
cmp r8, r10
jne 0x140011bcf
add rax, 0x10
cmp rax, rcx
jbe 0x140011ba0
cmp rax, r13
je 0x140011bf3
nop word cs:[rax + rax]
cmp byte [r15 + rax], 0
je 0x140012a73
inc rax
cmp r13, rax
jne 0x140011be0
cmp r14, r13
jne 0x140011c26
mov rsi, r13
inc rsi
je 0x140012a73
js 0x140012a73
test r13, r13
je 0x140011c5f
mov qword [rsp + 0xd0], r15
mov qword [rsp + 0xe0], r13
mov eax, 1
jmp 0x140011c61
lea rsi, [r13 + 1]
mov byte [r15 + r13], 0
cmp r14, rsi
jbe 0x140011c9c
test rsi, rsi
je 0x14001200c
mov rcx, qword [0x14002e0f0]
xor edx, edx
mov r8, r15
mov r9, rsi
call qword [sym.imp.KERNEL32.dll_HeapReAlloc]
mov r15, rax
test rax, rax
jne 0x140011c9c
jmp 0x140012a73
xor eax, eax
mov qword [rsp + 0xd8], rax
lea rcx, [rsp + 0x110]
mov rdx, rsi
lea r8, [rsp + 0xd0]
call fcn.140005940
test byte [rsp + 0x110], 1
jne 0x140012a6a
mov r15, qword [rsp + 0x118]
mov byte [r15 + r13], 0
movzx eax, byte [0x14002e118]
mov edx, 0x38
xor ecx, ecx
call fcn.140017130
test rax, rax
je 0x140012a73
mov r13, rax
mov qword [rax], 1
mov qword [rax + 8], 1
mov qword [rax + 0x10], 1
mov qword [rax + 0x18], r15
mov qword [rax + 0x20], rsi
mov rax, qword [0x14002e100]
nop word cs:[rax + rax]
cmp rax, 0xffffffffffffffff
je 0x140012a73
lea rcx, [rax + 1]
lock cmpxchg qword [0x14002e100], rcx
jne 0x140011cf0
mov qword [r13 + 0x28], rcx
mov byte [r13 + 0x30], 0
lock inc qword [r13]
jle 0x140012a73
movzx eax, byte [0x14002e118]
mov edx, 0x30
xor ecx, ecx
call fcn.140017130
test rax, rax
je 0x140012a73
mov rsi, rax
mov qword [rax], 1
mov qword [rax + 8], 1
movups xmmword [rax + 0x10], xmm6
mov qword [rsp + 0xd0], rax
lock inc qword [rax]
jle 0x140012a73
movzx eax, byte [0x14002e088]
test al, al
je 0x140011e10
mov byte [0x14002e088], 1
mov eax, dword [0x14002e11c]
mov rcx, qword gs:[0x58]
mov rax, qword [rcx + rax*8]
mov rax, qword [rax + 0x30]
cmp rax, 1
jne 0x140012029
mov eax, dword [0x14002e11c]
mov rcx, qword gs:[0x58]
mov rax, qword [rcx + rax*8]
mov r15, qword [rax + 0x38]
mov qword [rax + 0x38], 0
test r15, r15
je 0x140011e10
lock inc qword [r15]
jle 0x140012a73
mov byte [0x14002e088], 1
mov eax, dword [0x14002e11c]
mov rcx, qword gs:[0x58]
mov rax, qword [rcx + rax*8]
mov rax, qword [rax + 0x30]
cmp rax, 1
je 0x140011e49
test rax, rax
je 0x14001204b
jmp 0x140012a5a
movzx eax, byte [0x14002e088]
test al, al
je 0x140011e7c
mov byte [0x14002e088], 1
mov eax, dword [0x14002e11c]
mov rcx, qword gs:[0x58]
mov rax, qword [rcx + rax*8]
mov rax, qword [rax + 0x30]
cmp rax, 1
jne 0x14001203c
xor r15d, r15d
mov eax, dword [0x14002e11c]
mov rcx, qword gs:[0x58]
mov rax, qword [rcx + rax*8]
mov rcx, qword [rax + 0x38]
mov qword [rax + 0x38], r15
test rcx, rcx
je 0x140011e7f
lock dec qword [rcx]
jne 0x140011e7f
call fcn.1400176c0
jmp 0x140011e7f
xor r15d, r15d
mov rax, qword [rsp + 0xd0]
mov qword [rsp + 0x108], rax
mov rcx, qword [rax + 0x10]
test rcx, rcx
je 0x140011ea3
lock inc qword [rcx + 0x18]
jle 0x140012a4d
movzx eax, byte [0x14002e118]
mov edx, 0x80
xor ecx, ecx
call fcn.140017130
test rax, rax
je 0x140012a73
mov r14, rax
mov qword [rax], r13
mov qword [rax + 8], rsi
mov qword [rax + 0x10], r15
mov rax, qword [rsp + 0x80]
mov qword [r14 + 0x18], rax
mov rax, qword [rsp + 0x90]
mov qword [r14 + 0x20], rax
mov rax, qword [rsp + 0x130]
mov qword [r14 + 0x28], rax
mov rax, qword [rsp + 0x88]
mov qword [r14 + 0x30], rax
mov rax, qword [rsp + 0x98]
mov qword [r14 + 0x38], rax
movaps xmm0, xmmword [rsp + 0x200]
movaps xmm1, xmmword [rsp + 0x210]
movaps xmm2, xmmword [rsp + 0x220]
movaps xmm3, xmmword [rsp + 0x230]
movups xmmword [r14 + 0x40], xmm0
movups xmmword [r14 + 0x50], xmm1
movups xmmword [r14 + 0x60], xmm2
movups xmmword [r14 + 0x70], xmm3
movzx eax, byte [0x14002e118]
mov edx, 0x10
xor ecx, ecx
call fcn.140017130
test rax, rax
je 0x140012a73
mov rsi, rax
mov qword [rax], r14
lea rax, [0x140029528]
mov qword [rsi + 8], rax
mov qword [rsp + 0x28], 0
mov dword [rsp + 0x20], 0x10000
xor ecx, ecx
mov rdx, qword [rsp + 0x128]
lea r8, [0x1400147f0]
mov r9, rsi
call qword [sym.imp.KERNEL32.dll_CreateThread]
test rax, rax
mov r15, qword [rsp + 0x68]
je 0x14001224e
mov qword [rsp + 0x140], r13
mov rcx, qword [rsp + 0x108]
mov qword [rsp + 0x148], rcx
mov qword [rsp + 0x150], rax
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_CloseHandle]
lock dec qword [r13]
jne 0x140011fe0
mov rcx, qword [rsp + 0x140]
call fcn.140017710
mov rax, qword [rsp + 0x148]
lock dec qword [rax]
mov r13, qword [rsp + 0xb0]
jne 0x140011530
lea rcx, [rsp + 0x148]
call fcn.140013b60
jmp 0x140011530
mov rcx, qword [0x14002e0f0]
xor edx, edx
mov r8, r15
call qword [sym.imp.KERNEL32.dll_HeapFree]
mov r15d, 1
jmp 0x140011c9c
test rax, rax
jne 0x140012a73
call fcn.1400216a0
jmp 0x140011d9b
mov r15d, 0
test rax, rax
jne 0x140012a73
call fcn.1400216a0
jmp 0x140011e49
mov rax, qword [rsp + 0x200]
lock dec qword [rax]
jne 0x140012070
lea rcx, [rsp + 0x200]
call fcn.140013cf0
sub rdi, rbx
mov r14, qword [rsp + 0x78]
je 0x14001209c
shr rdi, 5
jmp 0x140012089
add rbx, 0x20
dec rdi
je 0x14001209c
mov rax, qword [rbx]
lock dec qword [rax]
jne 0x140012080
mov rcx, rbx
call fcn.140013cf0
jmp 0x140012080
cmp qword [rsp + 0xb8], 0
je 0x1400120be
mov rcx, qword [0x14002e0f0]
xor edx, edx
mov r8, qword [rsp + 0xa8]
call qword [sym.imp.KERNEL32.dll_HeapFree]
sub r15, r12
mov rsi, qword [rsp + 0x100]
je 0x1400120fd
shr r15, 4
jmp 0x1400120e9
add r12, 0x10
dec r15
je 0x1400120fd
mov rax, qword [r12]
lock dec qword [rax]
jne 0x1400120e0
mov rcx, r12
call fcn.140013cf0
jmp 0x1400120e0
test rsi, rsi
je 0x140012119
mov rcx, qword [0x14002e0f0]
xor edx, edx
mov r8, qword [rsp + 0xa0]
call qword [sym.imp.KERNEL32.dll_HeapFree]
mov rax, qword [rsp + 0xf8]
mov qword [rax + 8], r14
mov qword [rax], 3
mov rsi, qword [r13 + 0x18]
test rsi, rsi
je 0x14001216a
mov rdi, qword [r13 + 0x20]
mov rax, qword [rdi]
test rax, rax
je 0x140012146
mov rcx, rsi
call rax
cmp qword [rdi + 8], 0
je 0x14001216a
cmp qword [rdi + 0x10], 0x11
jb 0x140012158
mov rsi, qword [rsi - 8]
mov rcx, qword [0x14002e0f0]
xor edx, edx
mov r8, rsi
call qword [sym.imp.KERNEL32.dll_HeapFree]
mov rsi, qword [r13 + 0x28]
test rsi, rsi
je 0x1400121a8
mov rdi, qword [r13 + 0x30]
mov rax, qword [rdi]
test rax, rax
je 0x140012184
mov rcx, rsi
call rax
cmp qword [rdi + 8], 0
je 0x1400121a8
cmp qword [rdi + 0x10], 0x11
jb 0x140012196
mov rsi, qword [rsi - 8]
mov rcx, qword [0x14002e0f0]
xor edx, edx
mov r8, rsi
call qword [sym.imp.KERNEL32.dll_HeapFree]
mov rsi, qword [r13 + 0x38]
test rsi, rsi
je 0x1400121e6
mov rdi, qword [r13 + 0x40]
mov rax, qword [rdi]
test rax, rax
je 0x1400121c2
mov rcx, rsi
call rax
cmp qword [rdi + 8], 0
je 0x1400121e6
cmp qword [rdi + 0x10], 0x11
jb 0x1400121d4
mov rsi, qword [rsi - 8]
mov rcx, qword [0x14002e0f0]
xor edx, edx
mov r8, rsi
call qword [sym.imp.KERNEL32.dll_HeapFree]
mov rsi, qword [r13 + 0x48]
test rsi, rsi
je 0x140012224
mov rdi, qword [r13 + 0x50]
mov rax, qword [rdi]
test rax, rax
je 0x140012200
mov rcx, rsi
call rax
cmp qword [rdi + 8], 0
je 0x140012224
cmp qword [rdi + 0x10], 0x11
jb 0x140012212
mov rsi, qword [rsi - 8]
mov rcx, qword [0x14002e0f0]
xor edx, edx
mov r8, rsi
call qword [sym.imp.KERNEL32.dll_HeapFree]
movaps xmm6, xmmword [rbp + 0x780]
movaps xmm7, xmmword [rbp + 0x790]
movaps xmm8, xmmword [rbp + 0x7a0]
lea rsp, [rbp + 0x7b8]
pop rbx
pop rdi
pop rsi
pop r12
pop r13
pop r14
pop r15
pop rbp
ret
mov r14, qword [rsi]
mov r15, qword [rsi + 8]
mov rax, qword [r15]
test rax, rax
je 0x140012262
mov rcx, r14
call rax
cmp qword [r15 + 8], 0
je 0x140012286
cmp qword [r15 + 0x10], 0x11
jb 0x140012274
mov r14, qword [r14 - 8]
mov rcx, qword [0x14002e0f0]
xor edx, edx
mov r8, r14
call qword [sym.imp.KERNEL32.dll_HeapFree]
mov rcx, qword [0x14002e0f0]
xor edx, edx
mov r8, rsi
call qword [sym.imp.KERNEL32.dll_HeapFree]
call qword [sym.imp.KERNEL32.dll_GetLastError]
mov esi, eax
shl rsi, 0x20
mov rax, qword [rsp + 0x108]
lock dec qword [rax]
jne 0x1400122bf
lea rcx, [rsp + 0xd0]
call fcn.140013b60
or rsi, 2
lock dec qword [r13]
mov r15, qword [rsp + 0x68]
jne 0x1400122d7
mov rcx, r13
call fcn.140017710
mov rax, qword [rsp + 0xf8]
mov qword [rax], 2
mov qword [rax + 8], rsi
mov rsi, qword [rsp + 0xb8]
mov r14, qword [rsp + 0xf0]
sub rdi, rbx
je 0x14001232c
shr rdi, 5
jmp 0x140012319
add rbx, 0x20
dec rdi
je 0x14001232c
mov rax, qword [rbx]
lock dec qword [rax]
jne 0x140012310
mov rcx, rbx
call fcn.140013cf0
jmp 0x140012310
test rsi, rsi
je 0x140012348
mov rcx, qword [0x14002e0f0]
xor edx, edx
mov r8, qword [rsp + 0xa8]
call qword [sym.imp.KERNEL32.dll_HeapFree]
sub r15, r12
mov rsi, qword [rsp + 0x100]
je 0x14001237d
shr r15, 4
jmp 0x140012369
add r12, 0x10
dec r15
je 0x14001237d
mov rax, qword [r12]
lock dec qword [rax]
jne 0x140012360
mov rcx, r12
call fcn.140013cf0
jmp 0x140012360
test rsi, rsi
je 0x140012399
mov rcx, qword [0x14002e0f0]
xor edx, edx
mov r8, qword [rsp + 0xa0]
call qword [sym.imp.KERNEL32.dll_HeapFree]
lock dec qword [r14]
jne 0x14001249a
mov rax, qword [rsp + 0x78]
mov rax, qword [rax + 0x208]
test rax, rax
je 0x14001249a
mov rcx, qword [rsp + 0x78]
mov rdi, qword [rcx + 0x200]
shl rax, 3
lea rbx, [rax + rax*4]
mov r14d, 4
xor r12d, r12d
xor r13d, r13d
jmp 0x1400123f4
add r12, 0x28
sub r14, 0xffffffffffffff80
inc r13
cmp rbx, r12
je 0x14001249a
mov eax, 3
xchg qword [rdi + r12 + 0x10], rax
cmp rax, 2
jne 0x1400123e0
mov rax, qword [rsp + 0x78]
cmp qword [rax + 0x1e8], r13
jbe 0x140012a73
mov r15, qword [rax + 0x1e0]
lea rsi, [r15 + r14]
xor eax, eax
mov cl, 1
lock cmpxchg byte [r15 + r14], cl
jne 0x14001246a
cmp byte [r15 + r14 + 1], 0
je 0x140012480
lea rcx, [r15 + r14]
add rcx, 0xfffffffffffffffc
mov byte [r15 + r14 + 1], 0
lock inc dword [r15 + r14 - 4]
call qword [sym.imp.api_ms_win_core_synch_l1_2_0.dll_WakeByAddressSingle]
mov rax, qword [rsp + 0x78]
lock dec qword [rax + 0x1f0]
xor eax, eax
xchg byte [rsi], al
cmp al, 2
jne 0x1400123e0
jmp 0x14001248c
mov rcx, rsi
call fcn.1400219a0
cmp byte [r15 + r14 + 1], 0
jne 0x140012435
nop word [rax + rax]
xor eax, eax
xchg byte [rsi], al
cmp al, 2
jne 0x1400123e0
mov rcx, rsi
call qword [sym.imp.api_ms_win_core_synch_l1_2_0.dll_WakeByAddressSingle]
jmp 0x1400123e0
mov rcx, qword [rsp + 0x78]
lock dec qword [rcx]
mov r13, qword [rsp + 0xb0]
jne 0x14001212c
call fcn.140013d60
jmp 0x14001212c
mov byte [rsp + 0x90], cl
lea rbx, [rsp + 0x218]
lea rcx, [rsp + 0x200]
mov r8d, 0x20
mov rdx, rsi
call fcn.140020900
mov r8d, 0x10
mov rcx, rbx
mov rdx, rsi
call fcn.140020900
mov rcx, qword [rsp + 0x208]
mov r12, qword [rsp + 0x210]
mov r15, qword [rsp + 0x228]
mov rdx, qword [rsp + 0x220]
mov rax, r15
shl rax, 4
mov qword [rsp + 0x80], rdx
add rax, rdx
add rax, 8
mov qword [rsp + 0x88], rax
mov rax, r12
shl rax, 5
mov qword [rsp + 0xa8], rcx
lea rdi, [rax + rcx]
add rdi, 0x18
shl rsi, 4
mov qword [rsp + 0x68], rsi
xor esi, esi
nop word cs:[rax + rax]
mov ecx, 0x40
call fcn.140013970
mov rbx, rax
movzx eax, byte [0x14002e118]
mov edx, 0x10
xor ecx, ecx
call fcn.140017130
mov r14, rax
cmp byte [rsp + 0x90], 0
je 0x1400125d0
test r14, r14
je 0x140012a73
mov qword [r14], rbx
mov qword [r14 + 8], 0x40
movzx eax, byte [0x14002e118]
xor r13d, r13d
mov edx, 0x200
xor ecx, ecx
call fcn.140017130
test rax, rax
jne 0x140012603
jmp 0x140012a73
test r14, r14
je 0x140012a73
mov qword [r14], rbx
mov qword [r14 + 8], 0x40
movzx eax, byte [0x14002e118]
mov edx, 0x200
xor ecx, ecx
call fcn.140017130
test rax, rax
je 0x140012a73
mov r13b, 1
mov rcx, rax
and rcx, 0xffffffffffffff80
mov qword [rcx + 0x78], rax
mov qword [rcx + 0x80], 1
mov qword [rcx + 0x88], 1
mov qword [rcx + 0x100], r14
movaps xmmword [rcx + 0x180], xmm6
lock inc qword [rcx + 0x80]
jle 0x140012a73
sub rcx, 0xffffffffffffff80
mov qword [rdi + rsi*2 - 0x18], rcx
mov qword [rdi + rsi*2 - 0x10], rbx
mov qword [rdi + rsi*2 - 8], 0x40
mov byte [rdi + rsi*2], r13b
inc r12
mov rax, qword [rsp + 0x88]
mov qword [rax + rsi - 8], rcx
mov byte [rax + rsi], r13b
inc r15
add rsi, 0x10
cmp qword [rsp + 0x68], rsi
mov r13, qword [rsp + 0xb0]
jne 0x140012560
mov rax, qword [rsp + 0x200]
mov qword [rsp + 0xb8], rax
mov r9, qword [rsp + 0x218]
mov rsi, qword [rsp + 0x70]
mov r14, qword [rsp + 0x98]
jmp 0x140010b65
mov qword [rsp + 0xc0], r9
lea rbx, [rsp + 0x218]
lea rcx, [rsp + 0x200]
mov r8d, 0x20
mov rdx, rsi
call fcn.140020900
mov r8d, 0x10
mov rcx, rbx
mov rdx, rsi
call fcn.140020900
mov rdx, qword [rsp + 0x220]
mov rax, qword [rsp + 0x208]
mov r9, rsi
mov rsi, qword [rsp + 0x210]
mov rcx, qword [rsp + 0x228]
mov qword [rsp + 0x68], rcx
shl rcx, 4
mov qword [rsp + 0xa0], rdx
lea rdi, [rcx + rdx]
add rdi, 8
mov rcx, rsi
shl rcx, 5
lea r12, [rcx + rax]
add r12, 0x18
shl r9, 4
mov qword [rsp + 0x88], r9
xor r13d, r13d
nop word cs:[rax + rax]
mov ecx, 0x40
call fcn.140013970
mov rbx, rax
movzx eax, byte [0x14002e118]
mov edx, 0x10
xor ecx, ecx
call fcn.140017130
test rax, rax
je 0x140012a73
mov r14, rax
mov qword [rax], rbx
mov qword [rax + 8], 0x40
movzx eax, byte [0x14002e118]
mov edx, 0x200
xor ecx, ecx
call fcn.140017130
test rax, rax
je 0x140012a73
mov rcx, rax
and rax, 0xffffffffffffff80
mov qword [rax + 0x78], rcx
mov qword [rax + 0x80], 1
mov qword [rax + 0x88], 1
mov qword [rax + 0x100], r14
movaps xmmword [rax + 0x180], xmm6
lock inc qword [rax + 0x80]
jle 0x140012a73
sub rax, 0xffffffffffffff80
mov qword [r12 + r13*2 - 0x18], rax
mov qword [r12 + r13*2 - 0x10], rbx
mov qword [r12 + r13*2 - 8], 0x40
mov byte [r12 + r13*2], 0
inc rsi
mov qword [rdi + r13 - 8], rax
mov byte [rdi + r13], 0
inc qword [rsp + 0x68]
add r13, 0x10
cmp qword [rsp + 0x88], r13
jne 0x140012750
mov qword [rsp + 0x210], rsi
mov rdi, qword [rsp + 0x218]
mov r13, qword [rsp + 0xb0]
mov r9, qword [rsp + 0xc0]
jmp 0x140010bc9
mov rax, qword [rsp + 0xf8]
mov qword [rax], 1
movabs rax, 0x8000000000000000
cmp r9, rax
je 0x14001287f
test r9, r9
je 0x14001287f
mov r8, qword [rsp + 0x170]
mov rcx, qword [0x14002e0f0]
xor edx, edx
call qword [sym.imp.KERNEL32.dll_HeapFree]
mov rax, qword [rsp + 0x190]
lock dec qword [rax]
mov rsi, qword [rsp + 0xb8]
mov r14, qword [rsp + 0xf0]
jne 0x1400128cc
lea rcx, [rsp + 0x190]
call fcn.140013cf0
mov rax, qword [rsp + 0x180]
lock dec qword [rax]
je 0x1400128da
mov rax, qword [rsp + 0x1b0]
lock dec qword [rax]
jne 0x1400122fa
jmp 0x1400128f9
mov rax, qword [rsp + 0x180]
lock dec qword [rax]
jne 0x1400128b8
lea rcx, [rsp + 0x180]
call fcn.140013cf0
mov rax, qword [rsp + 0x1b0]
lock dec qword [rax]
jne 0x1400122fa
mov rcx, qword [rsp + 0x1b0]
call fcn.140013d60
jmp 0x1400122fa
mov r10, r8
cmp r9, 0x11
jae 0x140010938
xor eax, eax
xor r14d, r14d
nop dword [rax]
movzx edx, byte [r10 + rax]
add edx, 0xffffffd0
cmp edx, 9
ja 0x140010973
lea r11, [r14 + r14*4]
mov edx, edx
lea r14, [rdx + r11*2]
inc rax
cmp r9, rax
jne 0x140012920
test rcx, rcx
je 0x140012957
mov rcx, qword [0x14002e0f0]
xor edx, edx
call qword [sym.imp.KERNEL32.dll_HeapFree]
test r14, r14
jne 0x140010acd
call fcn.140017860
test rax, rax
je 0x140012a45
mov r14d, 1
test al, 1
je 0x140010acd
mov eax, edx
and eax, 3
cmp eax, 1
jne 0x140010acd
mov rdi, qword [rdx - 1]
mov rsi, qword [rdx + 7]
mov rax, qword [rsi]
test rax, rax
je 0x1400129a5
mov rcx, rdi
mov rbx, rdx
call rax
mov rdx, rbx
dec rdx
mov rbx, rdx
cmp qword [rsi + 8], 0
je 0x1400129cf
cmp qword [rsi + 0x10], 0x11
jb 0x1400129bd
mov rdi, qword [rdi - 8]
mov rcx, qword [0x14002e0f0]
xor edx, edx
mov r8, rdi
call qword [sym.imp.KERNEL32.dll_HeapFree]
mov rcx, qword [0x14002e0f0]
xor edx, edx
mov r8, rbx
call qword [sym.imp.KERNEL32.dll_HeapFree]
jmp 0x140010acd
mov r10, r8
cmp r9, 0x11
jae 0x140010a38
xor eax, eax
xor r14d, r14d
nop dword [rax + rax]
movzx edx, byte [r10 + rax]
add edx, 0xffffffd0
cmp edx, 9
ja 0x140010a73
lea r11, [r14 + r14*4]
mov edx, edx
lea r14, [rdx + r11*2]
inc rax
cmp r9, rax
jne 0x140012a00
test rcx, rcx
je 0x140012a37
mov rcx, qword [0x14002e0f0]
xor edx, edx
call qword [sym.imp.KERNEL32.dll_HeapFree]
test r14, r14
jne 0x140010acd
jmp 0x140010a87
mov r14, rdx
jmp 0x140010acd
add rcx, 0x10
xor edx, edx
call fcn.1400147c0
ud2
lock dec qword [r15]
jne 0x140012a73
mov rcx, r15
call fcn.1400176c0
ud2
cmp qword [rsp + 0x118], 0
ud2