Function at 0x14000ff30
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 0x1400101cd
lea rdx, [0x14002851e]
lea rcx, [rsp + 0x200]
call fcn.140013100
mov rax, qword [rsp + 0x200]
mov rcx, rax
neg rcx
movabs rdi, 0x8000000000000001
jo 0x140010087
cmp rax, rdi
jne 0x14001000a
mov rcx, qword [rsp + 0x208]
movabs rax, 0x8000000000000000
cmp rcx, rax
je 0x140010087
mov r8, qword [rsp + 0x210]
mov r9, qword [rsp + 0x218]
test r9, r9
je 0x140010073
cmp r9, 1
jne 0x140010019
movzx eax, byte [r8]
cmp eax, 0x2b
je 0x140010073
mov r9d, 1
mov r10, r8
cmp eax, 0x2d
je 0x140010073
jmp 0x140012018
test rax, rax
je 0x140010087
mov r8, qword [rsp + 0x208]
jmp 0x140010078
cmp byte [r8], 0x2b
jne 0x14001200b
lea r10, [r8 + 1]
lea rax, [r9 - 1]
cmp r9, 0x12
mov r9, rax
jb 0x140012018
xor r11d, r11d
mov esi, 0xa
xor r14d, r14d
cmp r9, r11
je 0x140012043
mov rax, r14
mul rsi
seto bl
movzx edx, byte [r10 + r11]
add edx, 0xffffffd0
cmp edx, 9
ja 0x140010073
test bl, bl
jne 0x140010073
mov r14, rax
mov eax, edx
inc r11
add r14, rax
jae 0x140010043
test rcx, rcx
je 0x140010087
mov rcx, qword [0x14002d0f0]
xor edx, edx
call qword [sym.imp.KERNEL32.dll_HeapFree]
lea rdx, [0x14002852f]
lea rcx, [rsp + 0x200]
call fcn.140013100
mov rax, qword [rsp + 0x200]
mov rcx, rax
neg rcx
jo 0x140010187
cmp rax, rdi
jne 0x14001010a
mov rcx, qword [rsp + 0x208]
movabs rax, 0x8000000000000000
cmp rcx, rax
je 0x140010187
mov r8, qword [rsp + 0x210]
mov r9, qword [rsp + 0x218]
test r9, r9
je 0x140010173
cmp r9, 1
jne 0x140010119
movzx eax, byte [r8]
cmp eax, 0x2b
je 0x140010173
mov r9d, 1
mov r10, r8
cmp eax, 0x2d
je 0x140010173
jmp 0x1400120f3
test rax, rax
je 0x140010187
mov r8, qword [rsp + 0x208]
jmp 0x140010178
cmp byte [r8], 0x2b
jne 0x1400120e6
lea r10, [r8 + 1]
lea rax, [r9 - 1]
cmp r9, 0x12
mov r9, rax
jb 0x1400120f3
xor r11d, r11d
mov esi, 0xa
xor r14d, r14d
cmp r9, r11
je 0x140012123
mov rax, r14
mul rsi
seto bl
movzx edx, byte [r10 + r11]
add edx, 0xffffffd0
cmp edx, 9
ja 0x140010173
test bl, bl
jne 0x140010173
mov r14, rax
mov eax, edx
inc r11
add r14, rax
jae 0x140010143
test rcx, rcx
je 0x140010187
mov rcx, qword [0x14002d0f0]
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 0x1400101cd
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 0x140011bbb
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 0x140011db3
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 0x140012173
movabs rcx, 0x8000000000000000
add rcx, 0xfffffffffffffff8
cmp rax, rcx
ja 0x140012173
test rax, rax
je 0x1400103d6
movzx ecx, byte [0x14002d118]
xor ecx, ecx
mov rdx, rax
mov r14, r9
call fcn.140016930
test rax, rax
je 0x140012173
mov r9, r14
mov r14, rax
test r15, rsi
je 0x1400103e7
add r15, rsi
and rsi, r15
je 0x1400103f1
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 0x140010380
test r15b, 1
mov rsi, qword [rsp + 0x70]
je 0x140010407
jmp 0x140010430
mov r14d, 8
xor ebx, ebx
test r15, rsi
jne 0x140010356
xor r12d, r12d
mov rsi, qword [rsp + 0x70]
jmp 0x140010430
xor r12d, r12d
mov rax, qword [rsp + 0x80]
test r15b, 1
mov rsi, qword [rsp + 0x70]
jne 0x140010430
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 0x14001044c
mov rcx, qword [0x14002d0f0]
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 0x1400104a5
mov rdx, rsi
shl rdx, 7
movzx eax, byte [0x14002d118]
sub rdx, 0xffffffffffffff80
xor ecx, ecx
call fcn.140016930
test rax, rax
je 0x140012173
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 0x1400104bb
xor edi, edi
jmp 0x140010515
mov r15d, 0x80
mov qword [rsp + 0x70], 0
xor edi, edi
jmp 0x140010556
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 0x1400104e0
sub r15, 0xffffffffffffff80
test rcx, rcx
je 0x140010556
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 0x140010540
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 [0x14002d118]
mov edx, 0x5f0
xor ecx, ecx
call fcn.140016930
test rax, rax
je 0x140012173
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 [0x14002d118]
mov edx, 0x300
xor ecx, ecx
call fcn.140016930
test rax, rax
je 0x140012173
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 0x140011770
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 0x140010c3e
inc qword [rsp + 0x70]
cmp rbx, rdi
je 0x140011770
mov rax, rbx
add rbx, 0x20
movzx esi, byte [rax + 0x18]
cmp sil, 2
je 0x140011770
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 0x140011755
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 0x140010d0b
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 0x140012173
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 0x140010ee0
cmp byte [r13 + 0x58], 0
je 0x140010ee0
mov eax, dword [0x14002d11c]
mov rcx, qword gs:[0x58]
mov rax, qword [rcx + rax*8]
cmp qword [rax + 0x18], 0
mov r15, qword [rsp + 0x68]
jne 0x140011f45
mov r14, rdx
lea r13, [rsp + 0x200]
mov rcx, r13
lea rdx, [rsp + 0x158]
call fcn.14000f370
movzx eax, byte [0x14002d118]
mov edx, 0x200
xor ecx, ecx
call fcn.140016930
test rax, rax
je 0x140012173
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 [0x14002d11c]
mov rcx, qword gs:[0x58]
mov rax, qword [rcx + rax*8]
cmp qword [rax + 0x18], 0
jne 0x140012173
mov eax, dword [0x14002d11c]
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 0x140012173
mov r14, qword [r14 + 0x200]
lea rsi, [r14 + 4]
xor eax, eax
mov cl, 1
lock cmpxchg byte [r14 + 4], cl
jne 0x140011253
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 0x140010c30
mov rcx, rsi
call qword [sym.imp.api_ms_win_core_synch_l1_2_0.dll_WakeByAddressSingle]
jmp 0x140010c30
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 0x140010fd5
mov rsi, qword [rsp + 0x98]
test rsi, rsi
js 0x140012173
je 0x140010fa6
movzx eax, byte [0x14002d118]
xor ecx, ecx
mov rdx, rsi
call fcn.140016930
test rax, rax
je 0x140012173
mov r15, rax
mov r14, rsi
jmp 0x140010faf
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 0x140011130
mov r11, qword [0x14002d0f8]
test r11, r11
je 0x140010ffa
dec r11
jmp 0x140011130
mov r8d, 0xe
lea rcx, [rsp + 0xd0]
lea rdx, str.RUST_MIN_STACKRAYON_NUM_THREADSRAYON_RS_NUM_CPUS
call fcn.140016310
mov rsi, qword [rsp + 0xd0]
movabs rax, 0x8000000000000000
cmp rsi, rax
jne 0x140011036
mov r11d, 0x200000
jmp 0x14001111e
mov r13, qword [rsp + 0xd8]
mov r8, qword [rsp + 0xe0]
lea rcx, [rsp + 0x110]
mov rdx, r13
call fcn.14000dfe0
test byte [rsp + 0x110], 1
jne 0x1400110f3
mov r8, qword [rsp + 0x120]
test r8, r8
je 0x1400110f3
mov rcx, qword [rsp + 0x118]
cmp r8, 1
jne 0x14001109b
movzx eax, byte [rcx]
cmp eax, 0x2b
je 0x1400110f3
mov r8d, 1
cmp eax, 0x2d
je 0x1400110f3
jmp 0x14001126a
cmp byte [rcx], 0x2b
jne 0x140011260
inc rcx
lea rax, [r8 - 1]
cmp r8, 0x12
mov r8, rax
jb 0x14001126a
xor r9d, r9d
xor r11d, r11d
nop
cmp r8, r9
je 0x1400110f9
mov rax, r11
mov edx, 0xa
mul rdx
seto r10b
movzx edx, byte [rcx + r9]
add edx, 0xffffffd0
cmp edx, 9
ja 0x1400110f3
test r10b, r10b
jne 0x1400110f3
mov r11, rax
mov eax, edx
inc r9
add r11, rax
jae 0x1400110c0
mov r11d, 0x200000
test rsi, rsi
je 0x140011116
mov rcx, qword [0x14002d0f0]
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 [0x14002d0f8], rax
nop dword [rax]
mov qword [rsp + 0x128], r11
movabs rax, 0x8000000000000000
cmp r14, rax
mov qword [rsp + 0x138], r15
jne 0x1400111b0
movzx eax, byte [0x14002d118]
mov edx, 0x38
xor ecx, ecx
call fcn.140016930
test rax, rax
je 0x140012173
mov r13, rax
mov qword [rax], 1
mov qword [rax + 8], 1
mov qword [rax + 0x10], 2
mov rax, qword [0x14002d100]
nop dword [rax]
cmp rax, 0xffffffffffffffff
je 0x140012173
lea rcx, [rax + 1]
lock cmpxchg qword [0x14002d100], rcx
jne 0x140011190
jmp 0x140011409
cmp r13, 0xf
movabs r10, 0x8080808080808080
movabs r11, 0x101010101010100
ja 0x1400111f8
test r13, r13
je 0x140011241
xor eax, eax
nop word cs:[rax + rax]
cmp byte [r15 + rax], 0
je 0x140012173
inc rax
cmp r13, rax
jne 0x1400111e0
jmp 0x1400112f3
lea rax, [r15 + 7]
and rax, 0xfffffffffffffff8
sub rax, r15
jne 0x140011210
lea rcx, [r13 - 0x10]
xor eax, eax
jmp 0x1400112a0
xor ecx, ecx
nop word cs:[rax + rax]
cmp byte [r15 + rcx], 0
je 0x140012173
inc rcx
cmp rax, rcx
jne 0x140011220
lea rcx, [r13 - 0x10]
cmp rax, rcx
jbe 0x1400112a0
jmp 0x1400112cf
cmp r14, r13
jne 0x140011326
lea rsi, [r13 + 1]
jmp 0x14001135f
mov rcx, rsi
call fcn.1400210a0
jmp 0x140010eb1
cmp r8, 0x11
jae 0x1400110b8
xor eax, eax
xor r11d, r11d
nop
movzx edx, byte [rcx + rax]
add edx, 0xffffffd0
cmp edx, 9
ja 0x1400110f3
lea r9, [r11 + r11*4]
mov edx, edx
lea r11, [rdx + r9*2]
inc rax
cmp r8, rax
jne 0x140011270
jmp 0x1400110f9
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 0x1400112cf
add rax, 0x10
cmp rax, rcx
jbe 0x1400112a0
cmp rax, r13
je 0x1400112f3
nop word cs:[rax + rax]
cmp byte [r15 + rax], 0
je 0x140012173
inc rax
cmp r13, rax
jne 0x1400112e0
cmp r14, r13
jne 0x140011326
mov rsi, r13
inc rsi
je 0x140012173
js 0x140012173
test r13, r13
je 0x14001135f
mov qword [rsp + 0xd0], r15
mov qword [rsp + 0xe0], r13
mov eax, 1
jmp 0x140011361
lea rsi, [r13 + 1]
mov byte [r15 + r13], 0
cmp r14, rsi
jbe 0x14001139c
test rsi, rsi
je 0x14001170c
mov rcx, qword [0x14002d0f0]
xor edx, edx
mov r8, r15
mov r9, rsi
call qword [sym.imp.KERNEL32.dll_HeapReAlloc]
mov r15, rax
test rax, rax
jne 0x14001139c
jmp 0x140012173
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 0x14001216a
mov r15, qword [rsp + 0x118]
mov byte [r15 + r13], 0
movzx eax, byte [0x14002d118]
mov edx, 0x38
xor ecx, ecx
call fcn.140016930
test rax, rax
je 0x140012173
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 [0x14002d100]
nop word cs:[rax + rax]
cmp rax, 0xffffffffffffffff
je 0x140012173
lea rcx, [rax + 1]
lock cmpxchg qword [0x14002d100], rcx
jne 0x1400113f0
mov qword [r13 + 0x28], rcx
mov byte [r13 + 0x30], 0
lock inc qword [r13]
jle 0x140012173
movzx eax, byte [0x14002d118]
mov edx, 0x30
xor ecx, ecx
call fcn.140016930
test rax, rax
je 0x140012173
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 0x140012173
movzx eax, byte [0x14002d088]
test al, al
je 0x140011510
mov byte [0x14002d088], 1
mov eax, dword [0x14002d11c]
mov rcx, qword gs:[0x58]
mov rax, qword [rcx + rax*8]
mov rax, qword [rax + 0x30]
cmp rax, 1
jne 0x140011729
mov eax, dword [0x14002d11c]
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 0x140011510
lock inc qword [r15]
jle 0x140012173
mov byte [0x14002d088], 1
mov eax, dword [0x14002d11c]
mov rcx, qword gs:[0x58]
mov rax, qword [rcx + rax*8]
mov rax, qword [rax + 0x30]
cmp rax, 1
je 0x140011549
test rax, rax
je 0x14001174b
jmp 0x14001215a
movzx eax, byte [0x14002d088]
test al, al
je 0x14001157c
mov byte [0x14002d088], 1
mov eax, dword [0x14002d11c]
mov rcx, qword gs:[0x58]
mov rax, qword [rcx + rax*8]
mov rax, qword [rax + 0x30]
cmp rax, 1
jne 0x14001173c
xor r15d, r15d
mov eax, dword [0x14002d11c]
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 0x14001157f
lock dec qword [rcx]
jne 0x14001157f
call fcn.140016dc0
jmp 0x14001157f
xor r15d, r15d
mov rax, qword [rsp + 0xd0]
mov qword [rsp + 0x108], rax
mov rcx, qword [rax + 0x10]
test rcx, rcx
je 0x1400115a3
lock inc qword [rcx + 0x18]
jle 0x14001214d
movzx eax, byte [0x14002d118]
mov edx, 0x80
xor ecx, ecx
call fcn.140016930
test rax, rax
je 0x140012173
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 [0x14002d118]
mov edx, 0x10
xor ecx, ecx
call fcn.140016930
test rax, rax
je 0x140012173
mov rsi, rax
mov qword [rax], r14
lea rax, [0x1400284f0]
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, [0x140013ef0]
mov r9, rsi
call qword [sym.imp.KERNEL32.dll_CreateThread]
test rax, rax
mov r15, qword [rsp + 0x68]
je 0x14001194e
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 0x1400116e0
mov rcx, qword [rsp + 0x140]
call fcn.140016e10
mov rax, qword [rsp + 0x148]
lock dec qword [rax]
mov r13, qword [rsp + 0xb0]
jne 0x140010c30
lea rcx, [rsp + 0x148]
call fcn.140013260
jmp 0x140010c30
mov rcx, qword [0x14002d0f0]
xor edx, edx
mov r8, r15
call qword [sym.imp.KERNEL32.dll_HeapFree]
mov r15d, 1
jmp 0x14001139c
test rax, rax
jne 0x140012173
call fcn.140020da0
jmp 0x14001149b
mov r15d, 0
test rax, rax
jne 0x140012173
call fcn.140020da0
jmp 0x140011549
mov rax, qword [rsp + 0x200]
lock dec qword [rax]
jne 0x140011770
lea rcx, [rsp + 0x200]
call fcn.1400133f0
sub rdi, rbx
mov r14, qword [rsp + 0x78]
je 0x14001179c
shr rdi, 5
jmp 0x140011789
add rbx, 0x20
dec rdi
je 0x14001179c
mov rax, qword [rbx]
lock dec qword [rax]
jne 0x140011780
mov rcx, rbx
call fcn.1400133f0
jmp 0x140011780
cmp qword [rsp + 0xb8], 0
je 0x1400117be
mov rcx, qword [0x14002d0f0]
xor edx, edx
mov r8, qword [rsp + 0xa8]
call qword [sym.imp.KERNEL32.dll_HeapFree]
sub r15, r12
mov rsi, qword [rsp + 0x100]
je 0x1400117fd
shr r15, 4
jmp 0x1400117e9
add r12, 0x10
dec r15
je 0x1400117fd
mov rax, qword [r12]
lock dec qword [rax]
jne 0x1400117e0
mov rcx, r12
call fcn.1400133f0
jmp 0x1400117e0
test rsi, rsi
je 0x140011819
mov rcx, qword [0x14002d0f0]
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 0x14001186a
mov rdi, qword [r13 + 0x20]
mov rax, qword [rdi]
test rax, rax
je 0x140011846
mov rcx, rsi
call rax
cmp qword [rdi + 8], 0
je 0x14001186a
cmp qword [rdi + 0x10], 0x11
jb 0x140011858
mov rsi, qword [rsi - 8]
mov rcx, qword [0x14002d0f0]
xor edx, edx
mov r8, rsi
call qword [sym.imp.KERNEL32.dll_HeapFree]
mov rsi, qword [r13 + 0x28]
test rsi, rsi
je 0x1400118a8
mov rdi, qword [r13 + 0x30]
mov rax, qword [rdi]
test rax, rax
je 0x140011884
mov rcx, rsi
call rax
cmp qword [rdi + 8], 0
je 0x1400118a8
cmp qword [rdi + 0x10], 0x11
jb 0x140011896
mov rsi, qword [rsi - 8]
mov rcx, qword [0x14002d0f0]
xor edx, edx
mov r8, rsi
call qword [sym.imp.KERNEL32.dll_HeapFree]
mov rsi, qword [r13 + 0x38]
test rsi, rsi
je 0x1400118e6
mov rdi, qword [r13 + 0x40]
mov rax, qword [rdi]
test rax, rax
je 0x1400118c2
mov rcx, rsi
call rax
cmp qword [rdi + 8], 0
je 0x1400118e6
cmp qword [rdi + 0x10], 0x11
jb 0x1400118d4
mov rsi, qword [rsi - 8]
mov rcx, qword [0x14002d0f0]
xor edx, edx
mov r8, rsi
call qword [sym.imp.KERNEL32.dll_HeapFree]
mov rsi, qword [r13 + 0x48]
test rsi, rsi
je 0x140011924
mov rdi, qword [r13 + 0x50]
mov rax, qword [rdi]
test rax, rax
je 0x140011900
mov rcx, rsi
call rax
cmp qword [rdi + 8], 0
je 0x140011924
cmp qword [rdi + 0x10], 0x11
jb 0x140011912
mov rsi, qword [rsi - 8]
mov rcx, qword [0x14002d0f0]
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 0x140011962
mov rcx, r14
call rax
cmp qword [r15 + 8], 0
je 0x140011986
cmp qword [r15 + 0x10], 0x11
jb 0x140011974
mov r14, qword [r14 - 8]
mov rcx, qword [0x14002d0f0]
xor edx, edx
mov r8, r14
call qword [sym.imp.KERNEL32.dll_HeapFree]
mov rcx, qword [0x14002d0f0]
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 0x1400119bf
lea rcx, [rsp + 0xd0]
call fcn.140013260
or rsi, 2
lock dec qword [r13]
mov r15, qword [rsp + 0x68]
jne 0x1400119d7
mov rcx, r13
call fcn.140016e10
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 0x140011a2c
shr rdi, 5
jmp 0x140011a19
add rbx, 0x20
dec rdi
je 0x140011a2c
mov rax, qword [rbx]
lock dec qword [rax]
jne 0x140011a10
mov rcx, rbx
call fcn.1400133f0
jmp 0x140011a10
test rsi, rsi
je 0x140011a48
mov rcx, qword [0x14002d0f0]
xor edx, edx
mov r8, qword [rsp + 0xa8]
call qword [sym.imp.KERNEL32.dll_HeapFree]
sub r15, r12
mov rsi, qword [rsp + 0x100]
je 0x140011a7d
shr r15, 4
jmp 0x140011a69
add r12, 0x10
dec r15
je 0x140011a7d
mov rax, qword [r12]
lock dec qword [rax]
jne 0x140011a60
mov rcx, r12
call fcn.1400133f0
jmp 0x140011a60
test rsi, rsi
je 0x140011a99
mov rcx, qword [0x14002d0f0]
xor edx, edx
mov r8, qword [rsp + 0xa0]
call qword [sym.imp.KERNEL32.dll_HeapFree]
lock dec qword [r14]
jne 0x140011b9a
mov rax, qword [rsp + 0x78]
mov rax, qword [rax + 0x208]
test rax, rax
je 0x140011b9a
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 0x140011af4
add r12, 0x28
sub r14, 0xffffffffffffff80
inc r13
cmp rbx, r12
je 0x140011b9a
mov eax, 3
xchg qword [rdi + r12 + 0x10], rax
cmp rax, 2
jne 0x140011ae0
mov rax, qword [rsp + 0x78]
cmp qword [rax + 0x1e8], r13
jbe 0x140012173
mov r15, qword [rax + 0x1e0]
lea rsi, [r15 + r14]
xor eax, eax
mov cl, 1
lock cmpxchg byte [r15 + r14], cl
jne 0x140011b6a
cmp byte [r15 + r14 + 1], 0
je 0x140011b80
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 0x140011ae0
jmp 0x140011b8c
mov rcx, rsi
call fcn.1400210a0
cmp byte [r15 + r14 + 1], 0
jne 0x140011b35
nop word [rax + rax]
xor eax, eax
xchg byte [rsi], al
cmp al, 2
jne 0x140011ae0
mov rcx, rsi
call qword [sym.imp.api_ms_win_core_synch_l1_2_0.dll_WakeByAddressSingle]
jmp 0x140011ae0
mov rcx, qword [rsp + 0x78]
lock dec qword [rcx]
mov r13, qword [rsp + 0xb0]
jne 0x14001182c
call fcn.140013460
jmp 0x14001182c
mov byte [rsp + 0x90], cl
lea rbx, [rsp + 0x218]
lea rcx, [rsp + 0x200]
mov r8d, 0x20
mov rdx, rsi
call fcn.140020000
mov r8d, 0x10
mov rcx, rbx
mov rdx, rsi
call fcn.140020000
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.140013070
mov rbx, rax
movzx eax, byte [0x14002d118]
mov edx, 0x10
xor ecx, ecx
call fcn.140016930
mov r14, rax
cmp byte [rsp + 0x90], 0
je 0x140011cd0
test r14, r14
je 0x140012173
mov qword [r14], rbx
mov qword [r14 + 8], 0x40
movzx eax, byte [0x14002d118]
xor r13d, r13d
mov edx, 0x200
xor ecx, ecx
call fcn.140016930
test rax, rax
jne 0x140011d03
jmp 0x140012173
test r14, r14
je 0x140012173
mov qword [r14], rbx
mov qword [r14 + 8], 0x40
movzx eax, byte [0x14002d118]
mov edx, 0x200
xor ecx, ecx
call fcn.140016930
test rax, rax
je 0x140012173
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 0x140012173
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 0x140011c60
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 0x140010265
mov qword [rsp + 0xc0], r9
lea rbx, [rsp + 0x218]
lea rcx, [rsp + 0x200]
mov r8d, 0x20
mov rdx, rsi
call fcn.140020000
mov r8d, 0x10
mov rcx, rbx
mov rdx, rsi
call fcn.140020000
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.140013070
mov rbx, rax
movzx eax, byte [0x14002d118]
mov edx, 0x10
xor ecx, ecx
call fcn.140016930
test rax, rax
je 0x140012173
mov r14, rax
mov qword [rax], rbx
mov qword [rax + 8], 0x40
movzx eax, byte [0x14002d118]
mov edx, 0x200
xor ecx, ecx
call fcn.140016930
test rax, rax
je 0x140012173
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 0x140012173
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 0x140011e50
mov qword [rsp + 0x210], rsi
mov rdi, qword [rsp + 0x218]
mov r13, qword [rsp + 0xb0]
mov r9, qword [rsp + 0xc0]
jmp 0x1400102c9
mov rax, qword [rsp + 0xf8]
mov qword [rax], 1
movabs rax, 0x8000000000000000
cmp r9, rax
je 0x140011f7f
test r9, r9
je 0x140011f7f
mov r8, qword [rsp + 0x170]
mov rcx, qword [0x14002d0f0]
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 0x140011fcc
lea rcx, [rsp + 0x190]
call fcn.1400133f0
mov rax, qword [rsp + 0x180]
lock dec qword [rax]
je 0x140011fda
mov rax, qword [rsp + 0x1b0]
lock dec qword [rax]
jne 0x1400119fa
jmp 0x140011ff9
mov rax, qword [rsp + 0x180]
lock dec qword [rax]
jne 0x140011fb8
lea rcx, [rsp + 0x180]
call fcn.1400133f0
mov rax, qword [rsp + 0x1b0]
lock dec qword [rax]
jne 0x1400119fa
mov rcx, qword [rsp + 0x1b0]
call fcn.140013460
jmp 0x1400119fa
mov r10, r8
cmp r9, 0x11
jae 0x140010038
xor eax, eax
xor r14d, r14d
nop dword [rax]
movzx edx, byte [r10 + rax]
add edx, 0xffffffd0
cmp edx, 9
ja 0x140010073
lea r11, [r14 + r14*4]
mov edx, edx
lea r14, [rdx + r11*2]
inc rax
cmp r9, rax
jne 0x140012020
test rcx, rcx
je 0x140012057
mov rcx, qword [0x14002d0f0]
xor edx, edx
call qword [sym.imp.KERNEL32.dll_HeapFree]
test r14, r14
jne 0x1400101cd
call fcn.140016f60
test rax, rax
je 0x140012145
mov r14d, 1
test al, 1
je 0x1400101cd
mov eax, edx
and eax, 3
cmp eax, 1
jne 0x1400101cd
mov rdi, qword [rdx - 1]
mov rsi, qword [rdx + 7]
mov rax, qword [rsi]
test rax, rax
je 0x1400120a5
mov rcx, rdi
mov rbx, rdx
call rax
mov rdx, rbx
dec rdx
mov rbx, rdx
cmp qword [rsi + 8], 0
je 0x1400120cf
cmp qword [rsi + 0x10], 0x11
jb 0x1400120bd
mov rdi, qword [rdi - 8]
mov rcx, qword [0x14002d0f0]
xor edx, edx
mov r8, rdi
call qword [sym.imp.KERNEL32.dll_HeapFree]
mov rcx, qword [0x14002d0f0]
xor edx, edx
mov r8, rbx
call qword [sym.imp.KERNEL32.dll_HeapFree]
jmp 0x1400101cd
mov r10, r8
cmp r9, 0x11
jae 0x140010138
xor eax, eax
xor r14d, r14d
nop dword [rax + rax]
movzx edx, byte [r10 + rax]
add edx, 0xffffffd0
cmp edx, 9
ja 0x140010173
lea r11, [r14 + r14*4]
mov edx, edx
lea r14, [rdx + r11*2]
inc rax
cmp r9, rax
jne 0x140012100
test rcx, rcx
je 0x140012137
mov rcx, qword [0x14002d0f0]
xor edx, edx
call qword [sym.imp.KERNEL32.dll_HeapFree]
test r14, r14
jne 0x1400101cd
jmp 0x140010187
mov r14, rdx
jmp 0x1400101cd
add rcx, 0x10
xor edx, edx
call fcn.140013ec0
ud2
lock dec qword [r15]
jne 0x140012173
mov rcx, r15
call fcn.140016dc0
ud2
cmp qword [rsp + 0x118], 0
ud2