Function at 0x140025680
Capabilities:
Get system information on windows

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
movdqa xmmword [rbp + 0x790], xmm7
movaps xmmword [rbp + 0x780], xmm6
and rsp, 0xffffffffffffff80
mov rbx, rdx
mov qword [rsp + 0xe8], rcx
mov rax, qword [rdx + 0x10]
test rax, rax
jne 0x140025a0e
lea rdx, str.RAYON_NUM_THREADSRAYON_RS_NUM_CPUS
lea rcx, [rsp + 0x200]
mov r8d, 0x11
call fcn.14008e3e0
mov rcx, qword [rsp + 0x200]
movabs rax, 0x8000000000000000
cmp rcx, rax
je 0x1400258bd
cmp byte [rsp + 0x218], 0
mov r8, qword [rsp + 0x208]
jne 0x1400257ae
mov r9, qword [rsp + 0x210]
test r9, r9
je 0x1400257bb
lea rax, [r8 + r9]
mov r10, r8
jmp 0x140025748
add r10, 2
cmp rdx, rax
cmovne rdx, r10
nop
mov r10, rdx
cmp rdx, rax
je 0x1400257b6
lea rdx, [r10 + 1]
movzx r11d, byte [r10]
test r11b, r11b
jns 0x140025740
cmp r11b, 0xe0
jb 0x140025733
cmp r11b, 0xed
jne 0x140025783
cmp rdx, rax
je 0x1400257b6
lea rdx, [r10 + 2]
cmp rdx, rax
je 0x1400257b6
cmp byte [r10 + 1], 0x9f
ja 0x1400258a7
add r10, 3
mov rdx, r10
jmp 0x140025740
add r10, 2
cmp rdx, rax
cmove r10, rdx
xor edx, edx
cmp r10, rax
setne dl
add rdx, r10
cmp r11b, 0xf0
jb 0x140025740
xor r10d, r10d
cmp rdx, rax
setne r10b
add rdx, r10
jmp 0x140025740
mov r9, qword [rsp + 0x210]
test r9, r9
jne 0x1400257ed
xor esi, esi
test rcx, rcx
je 0x1400257d6
mov rcx, qword [0x1402590e0]
xor edx, edx
mov rdi, rax
call sub.KERNEL32.dll_HeapFree
mov rax, rdi
test sil, sil
je 0x1400258bd
test rax, rax
je 0x1400259d5
jmp 0x140025a0e
movzx eax, byte [r8]
cmp eax, 0x2b
je 0x14002584f
cmp eax, 0x2d
jne 0x140025801
cmp r9, 1
je 0x1400257bb
mov r10, r8
cmp r9, 0x10
jbe 0x140025862
xor r11d, r11d
mov esi, 0xa
xor eax, eax
nop word cs:[rax + rax]
cmp r9, r11
je 0x140025896
movzx edi, byte [r10 + r11]
mul rsi
seto dl
add edi, 0xffffffd0
cmp edi, 9
ja 0x1400257bb
test dl, dl
jne 0x1400257bb
mov edx, edi
inc r11
add rax, rdx
jae 0x140025820
jmp 0x1400257bb
dec r9
je 0x1400257bb
lea r10, [r8 + 1]
cmp r9, 0x11
jae 0x14002580a
xor edx, edx
xor eax, eax
nop word cs:[rax + rax]
movzx r11d, byte [r10 + rdx]
add r11d, 0xffffffd0
cmp r11d, 9
ja 0x1400257bb
lea rax, [rax + rax*4]
mov r11d, r11d
lea rax, [r11 + rax*2]
inc rdx
cmp r9, rdx
jne 0x140025870
mov sil, 1
test rcx, rcx
jne 0x1400257c2
jmp 0x1400257d6
shl rcx, 1
test rcx, rcx
je 0x1400258bd
mov rcx, qword [0x1402590e0]
xor edx, edx
call sub.KERNEL32.dll_HeapFree
lea rdx, [0x1401d6d61]
lea rcx, [rsp + 0x200]
mov r8d, 0x11
call fcn.14008e3e0
mov rcx, qword [rsp + 0x200]
movabs rax, 0x8000000000000000
cmp rcx, rax
je 0x1400259d5
cmp byte [rsp + 0x218], 0
mov r8, qword [rsp + 0x208]
jne 0x14002599e
mov r9, qword [rsp + 0x210]
test r9, r9
je 0x1400259af
lea rax, [r8 + r9]
mov r10, r8
jmp 0x140025938
add r10, 2
cmp rdx, rax
cmovne rdx, r10
nop dword [rax]
mov r10, rdx
cmp rdx, rax
je 0x1400259a6
lea rdx, [r10 + 1]
movzx r11d, byte [r10]
test r11b, r11b
jns 0x140025930
cmp r11b, 0xe0
jb 0x140025922
cmp r11b, 0xed
jne 0x140025973
cmp rdx, rax
je 0x1400259a6
lea rdx, [r10 + 2]
cmp rdx, rax
je 0x1400259a6
cmp byte [r10 + 1], 0x9f
ja 0x140027637
add r10, 3
mov rdx, r10
jmp 0x140025930
add r10, 2
cmp rdx, rax
cmove r10, rdx
xor edx, edx
cmp r10, rax
setne dl
add rdx, r10
cmp r11b, 0xf0
jb 0x140025930
xor r10d, r10d
cmp rdx, rax
setne r10b
add rdx, r10
jmp 0x140025930
mov r9, qword [rsp + 0x210]
test r9, r9
jne 0x1400272ba
xor esi, esi
test rcx, rcx
je 0x1400259ca
mov rcx, qword [0x1402590e0]
xor edx, edx
mov rdi, rax
call sub.KERNEL32.dll_HeapFree
mov rax, rdi
test rax, rax
setne cl
test sil, cl
jne 0x140025a0e
pxor xmm0, xmm0
movdqa xmmword [rsp + 0x220], xmm0
movdqa xmmword [rsp + 0x210], xmm0
movdqa xmmword [rsp + 0x200], xmm0
lea rcx, [rsp + 0x200]
call sub.KERNEL32.dll_GetSystemInfo
mov eax, dword [rsp + 0x220]
cmp eax, 1
adc eax, 0
cmp rax, 0xffff
mov esi, 0xffff
mov qword [rsp + 0x70], rax
cmovb rsi, rax
mov qword [rsp + 0xa0], rbx
movzx r12d, byte [rbx + 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
lea rcx, [rsp + 0x200]
xor edx, edx
mov r8, rsi
call fcn.1400cfa10
mov rax, qword [rsp + 0x218]
mov rdx, qword [rsp + 0x228]
sub rax, rdx
cmp rax, rsi
jae 0x140025aa4
lea rcx, [rsp + 0x218]
mov r8, rsi
call fcn.140028890
lea r14, [rsp + 0x200]
mov qword [rsp + 0x78], rsi
mov r13, rsi
jmp 0x140025aed
mov rbx, qword [rsp + 0x220]
mov rax, rdx
shl rax, 4
mov qword [rbx + rax], rsi
mov byte [rbx + rax + 8], dil
lea rsi, [rdx + 1]
mov qword [rsp + 0x228], rsi
dec r13
je 0x140025c4c
mov ecx, 0x40
call fcn.140028b60
mov rbx, rax
movzx eax, byte [0x140259141]
mov edx, 0x10
xor ecx, ecx
call fcn.14008b700
mov r15, rax
test r12b, r12b
je 0x140025b60
test r15, r15
je 0x140027689
mov qword [r15], rbx
mov qword [r15 + 8], 0x40
movzx eax, byte [0x140259141]
mov edx, 0x200
xor ecx, ecx
call fcn.14008b700
test rax, rax
je 0x140027689
mov rsi, rax
and rsi, 0xffffffffffffff80
sub rsi, 0xffffffffffffff80
xor edi, edi
jmp 0x140025b9e
test r15, r15
je 0x140027689
mov qword [r15], rbx
mov qword [r15 + 8], 0x40
movzx eax, byte [0x140259141]
mov edx, 0x200
xor ecx, ecx
call fcn.14008b700
test rax, rax
je 0x140027689
mov rsi, rax
and rsi, 0xffffffffffffff80
sub rsi, 0xffffffffffffff80
mov dil, 1
mov qword [rsi - 8], rax
mov qword [rsi], 1
mov qword [rsi + 8], 1
mov qword [rsi + 0x80], r15
movaps xmmword [rsi + 0x100], xmm6
lock inc qword [rsi]
jle 0x140027689
mov rdx, qword [rsp + 0x210]
cmp rdx, qword [rsp + 0x200]
jne 0x140025beb
mov rcx, r14
call fcn.140045e80
mov rdx, qword [rsp + 0x210]
mov rax, qword [rsp + 0x208]
mov rcx, rdx
shl rcx, 5
mov qword [rax + rcx], rsi
mov qword [rax + rcx + 8], rbx
mov qword [rax + rcx + 0x10], 0x40
mov byte [rax + rcx + 0x18], dil
inc rdx
mov qword [rsp + 0x210], rdx
mov rdx, qword [rsp + 0x228]
cmp rdx, qword [rsp + 0x218]
jne 0x140025ac0
lea rcx, [rsp + 0x218]
call fcn.1400287e0
mov rdx, qword [rsp + 0x228]
jmp 0x140025ac0
mov qword [rsp + 0x88], rdx
mov rax, qword [rsp + 0x200]
mov qword [rsp + 0x108], rax
mov rax, qword [rsp + 0x208]
mov qword [rsp + 0xa8], rax
mov rax, qword [rsp + 0x210]
mov qword [rsp + 0xb0], rax
mov rax, qword [rsp + 0x218]
mov qword [rsp + 0x90], rax
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
lea rcx, [rsp + 0x200]
xor edx, edx
mov rdi, qword [rsp + 0x78]
mov r8, rdi
call fcn.1400cfa10
mov rax, qword [rsp + 0x218]
mov rdx, qword [rsp + 0x228]
sub rax, rdx
cmp rax, rdi
jb 0x140027327
lea r12, [rsp + 0x200]
jmp 0x140025d3d
mov r14, qword [rsp + 0x220]
mov rax, r15
shl rax, 4
mov qword [r14 + rax], r13
mov byte [r14 + rax + 8], 0
inc r15
mov qword [rsp + 0x228], r15
dec rdi
je 0x140025e58
mov ecx, 0x40
call fcn.140028b60
mov r14, rax
movzx eax, byte [0x140259141]
mov edx, 0x10
xor ecx, ecx
call fcn.14008b700
test rax, rax
je 0x140027689
mov r15, rax
mov qword [rax], r14
mov qword [rax + 8], 0x40
movzx eax, byte [0x140259141]
mov edx, 0x200
xor ecx, ecx
call fcn.14008b700
test rax, rax
je 0x140027689
mov r13, rax
and r13, 0xffffffffffffff80
mov qword [r13 + 0x78], rax
mov qword [r13 + 0x80], 1
mov qword [r13 + 0x88], 1
mov qword [r13 + 0x100], r15
movaps xmmword [r13 + 0x180], xmm6
lock inc qword [r13 + 0x80]
jle 0x140027689
mov rdx, qword [rsp + 0x210]
cmp rdx, qword [rsp + 0x200]
jne 0x140025df0
mov rcx, r12
call fcn.140045e80
mov rdx, qword [rsp + 0x210]
sub r13, 0xffffffffffffff80
mov rax, qword [rsp + 0x208]
mov rcx, rdx
shl rcx, 5
mov qword [rax + rcx], r13
mov qword [rax + rcx + 8], r14
mov qword [rax + rcx + 0x10], 0x40
mov byte [rax + rcx + 0x18], 0
inc rdx
mov qword [rsp + 0x210], rdx
mov r15, qword [rsp + 0x228]
cmp r15, qword [rsp + 0x218]
jne 0x140025d10
lea rcx, [rsp + 0x218]
mov rdx, r15
call fcn.1400287e0
mov r15, qword [rsp + 0x228]
jmp 0x140025d10
mov rax, qword [rsp + 0x210]
mov qword [rsp + 0xd0], rax
movdqu xmm0, xmmword [rsp + 0x200]
movdqa xmmword [rsp + 0xc0], xmm0
mov rax, qword [rsp + 0x218]
mov r12, rsi
shl r12, 4
add r12, rbx
test rsi, rsi
je 0x14002600e
mov qword [rsp + 0xe0], rax
movabs rax, 0x1c71c71c71c71c7
cmp rsi, rax
ja 0x140027689
lea rax, [rsi*8]
lea rdx, [rax + rax*8]
movzx eax, byte [0x140259141]
xor ecx, ecx
call fcn.14008b700
test rax, rax
je 0x140027689
lea rdx, [rsp + 0x207]
lea r8, [rsp + 0x137]
mov qword [rsp + 0x98], rax
mov r9, rax
add r9, 0x40
movabs rcx, 0xfffffffffffffff
mov rax, qword [rsp + 0x88]
and rax, rcx
inc rax
pxor xmm0, xmm0
mov r10, rbx
mov rcx, qword [rsp + 0x70]
nop word cs:[rax + rax]
mov r11, qword [r10]
movzx r13d, byte [r10 + 8]
movdqu xmmword [rdx], xmm0
mov byte [rdx + 0x10], 0
movdqu xmmword [r8], xmm0
mov qword [r9 - 0x40], 0
mov byte [r9 - 0x38], 0
movups xmm1, xmmword [rsp + 0x200]
movups xmmword [r9 - 0x37], xmm1
mov rdi, qword [rsp + 0x210]
mov qword [r9 - 0x27], rdi
movdqu xmm1, xmmword [rsp + 0x130]
movdqu xmmword [r9 - 0x1f], xmm1
mov rdi, qword [rsp + 0x13f]
mov qword [r9 - 0x10], rdi
mov qword [r9 - 8], r11
mov byte [r9], r13b
add r9, 0x48
add r10, 0x10
cmp r10, r12
jne 0x140025f20
mov rdi, qword [rsp + 0x78]
cmp qword [rsp + 0x90], 0
je 0x140025fb6
mov rcx, qword [0x1402590e0]
mov r12, rax
xor edx, edx
mov r8, rbx
call sub.KERNEL32.dll_HeapFree
mov rax, r12
mov rcx, qword [rsp + 0x70]
test rcx, rcx
mov qword [rsp + 0x88], rax
je 0x140026067
mov rdx, rdi
shl rdx, 7
movzx eax, byte [0x140259141]
sub rdx, 0xffffffffffffff80
xor ecx, ecx
call fcn.14008b700
test rax, rax
je 0x140027689
mov edx, eax
and edx, 0x7f
mov r13, rax
and r13, 0xffffffffffffff80
mov qword [r13 + 0x78], rax
mov ecx, edi
and ecx, 3
cmp qword [rsp + 0x70], 4
jae 0x140026075
xor r12d, r12d
jmp 0x14002610b
cmp r12, rbx
mov rdi, qword [rsp + 0x78]
jne 0x140026054
mov qword [rsp + 0xe0], rax
mov eax, 8
mov qword [rsp + 0x98], rax
xor eax, eax
mov rcx, qword [rsp + 0x70]
cmp qword [rsp + 0x90], 0
jne 0x140025f9a
jmp 0x140025fb6
add rbx, 0x10
mov rax, qword [rbx]
lock dec qword [rax]
jne 0x140026050
mov rcx, rbx
call fcn.140029150
jmp 0x140026050
mov r13d, pe_nt_image_headers64
xor r12d, r12d
jmp 0x140026152
mov r8d, edi
and r8d, 0xfffc
mov r9, rax
sub r9, rdx
add r9, 0x210
xor r12d, r12d
nop
mov qword [r9 - 0x190], 0
mov byte [r9 - 0x188], 0
mov qword [r9 - 0x180], 0
mov qword [r9 - 0x110], 0
mov byte [r9 - 0x108], 0
mov qword [r9 - 0x100], 0
mov qword [r9 - 0x90], 0
mov byte [r9 - 0x88], 0
mov qword [r9 - 0x80], 0
add r12, 4
mov qword [r9 - 0x10], 0
mov byte [r9 - 8], 0
mov qword [r9], 0
add r9, 0x200
cmp r8, r12
jne 0x140026090
sub r13, 0xffffffffffffff80
test rcx, rcx
je 0x140026152
mov r8, r12
shl r8, 7
sub r8, rdx
add rax, r8
add rax, 0x90
neg rcx
xor edx, edx
nop dword [rax]
mov qword [rax - 0x10], 0
mov byte [rax - 8], 0
mov qword [rax], 0
sub rax, 0xffffffffffffff80
dec rdx
cmp rcx, rdx
jne 0x140026130
sub r12, rdx
pxor xmm0, xmm0
movdqa xmmword [rsp + 0x200], xmm0
mov qword [rsp + 0x210], 0
movdqu xmmword [rsp + 0x218], xmm0
mov qword [rsp + 0x228], 0
movdqa xmmword [rsp + 0x230], xmm0
mov qword [rsp + 0x240], 0
movdqu xmmword [rsp + 0x248], xmm0
mov qword [rsp + 0x258], 0
movdqa xmmword [rsp + 0x260], xmm0
mov qword [rsp + 0x270], 0
movdqu xmmword [rsp + 0x278], xmm0
mov qword [rsp + 0x288], 0
movdqa xmmword [rsp + 0x290], xmm0
mov qword [rsp + 0x2a0], 0
movdqu xmmword [rsp + 0x2a8], xmm0
mov qword [rsp + 0x2b8], 0
movdqa xmmword [rsp + 0x2c0], xmm0
mov qword [rsp + 0x2d0], 0
movdqu xmmword [rsp + 0x2d8], xmm0
mov qword [rsp + 0x2e8], 0
movdqa xmmword [rsp + 0x2f0], xmm0
mov qword [rsp + 0x300], 0
movdqu xmmword [rsp + 0x308], xmm0
mov qword [rsp + 0x318], 0
movdqa xmmword [rsp + 0x320], xmm0
mov qword [rsp + 0x330], 0
movdqu xmmword [rsp + 0x338], xmm0
mov qword [rsp + 0x348], 0
movdqa xmmword [rsp + 0x350], xmm0
mov qword [rsp + 0x360], 0
movdqu xmmword [rsp + 0x368], xmm0
mov qword [rsp + 0x378], 0
movdqa xmmword [rsp + 0x380], xmm0
mov qword [rsp + 0x390], 0
movdqu xmmword [rsp + 0x398], xmm0
mov qword [rsp + 0x3a8], 0
movdqa xmmword [rsp + 0x3b0], xmm0
mov qword [rsp + 0x3c0], 0
movdqu xmmword [rsp + 0x3c8], xmm0
mov qword [rsp + 0x3d8], 0
movdqa xmmword [rsp + 0x3e0], xmm0
mov qword [rsp + 0x3f0], 0
movdqu xmmword [rsp + 0x3f8], xmm0
mov qword [rsp + 0x408], 0
movdqa xmmword [rsp + 0x410], xmm0
mov qword [rsp + 0x420], 0
movdqu xmmword [rsp + 0x428], xmm0
mov qword [rsp + 0x438], 0
movdqa xmmword [rsp + 0x440], xmm0
mov qword [rsp + 0x450], 0
movdqu xmmword [rsp + 0x458], xmm0
mov qword [rsp + 0x468], 0
movdqa xmmword [rsp + 0x470], xmm0
mov qword [rsp + 0x480], 0
movdqu xmmword [rsp + 0x488], xmm0
mov qword [rsp + 0x498], 0
movdqa xmmword [rsp + 0x4a0], xmm0
mov qword [rsp + 0x4b0], 0
movdqu xmmword [rsp + 0x4b8], xmm0
mov qword [rsp + 0x4c8], 0
movdqa xmmword [rsp + 0x4d0], xmm0
mov qword [rsp + 0x4e0], 0
movdqu xmmword [rsp + 0x4e8], xmm0
mov qword [rsp + 0x4f8], 0
movdqa xmmword [rsp + 0x500], xmm0
mov qword [rsp + 0x510], 0
movdqu xmmword [rsp + 0x518], xmm0
mov qword [rsp + 0x528], 0
movdqa xmmword [rsp + 0x530], xmm0
mov qword [rsp + 0x540], 0
movdqu xmmword [rsp + 0x548], xmm0
mov qword [rsp + 0x558], 0
movdqa xmmword [rsp + 0x560], xmm0
mov qword [rsp + 0x570], 0
movdqu xmmword [rsp + 0x578], xmm0
mov qword [rsp + 0x588], 0
movdqa xmmword [rsp + 0x590], xmm0
mov qword [rsp + 0x5a0], 0
movdqu xmmword [rsp + 0x5a8], xmm0
mov qword [rsp + 0x5b8], 0
movdqa xmmword [rsp + 0x5c0], xmm0
mov qword [rsp + 0x5d0], 0
movdqu xmmword [rsp + 0x5d8], xmm0
mov qword [rsp + 0x5e8], 0
movdqa xmmword [rsp + 0x5f0], xmm0
mov qword [rsp + 0x600], 0
movdqu xmmword [rsp + 0x608], xmm0
mov qword [rsp + 0x618], 0
movdqa xmmword [rsp + 0x620], xmm0
mov qword [rsp + 0x630], 0
movdqu xmmword [rsp + 0x638], xmm0
mov qword [rsp + 0x648], 0
movdqa xmmword [rsp + 0x650], xmm0
mov qword [rsp + 0x660], 0
movdqu xmmword [rsp + 0x668], xmm0
mov qword [rsp + 0x678], 0
movdqa xmmword [rsp + 0x680], xmm0
mov qword [rsp + 0x690], 0
movdqu xmmword [rsp + 0x698], xmm0
mov qword [rsp + 0x6a8], 0
movdqa xmmword [rsp + 0x6b0], xmm0
mov qword [rsp + 0x6c0], 0
movdqu xmmword [rsp + 0x6c8], xmm0
mov qword [rsp + 0x6d8], 0
movdqa xmmword [rsp + 0x6e0], xmm0
mov qword [rsp + 0x6f0], 0
movdqu xmmword [rsp + 0x6f8], xmm0
mov qword [rsp + 0x708], 0
movdqa xmmword [rsp + 0x710], xmm0
mov qword [rsp + 0x720], 0
movdqu xmmword [rsp + 0x728], xmm0
mov qword [rsp + 0x738], 0
movdqa xmmword [rsp + 0x740], xmm0
mov qword [rsp + 0x750], 0
movdqu xmmword [rsp + 0x758], xmm0
mov qword [rsp + 0x768], 0
movdqa xmmword [rsp + 0x770], xmm0
mov qword [rsp + 0x780], 0
movdqu xmmword [rsp + 0x788], xmm0
mov qword [rsp + 0x798], 0
movdqa xmmword [rsp + 0x7a0], xmm0
mov qword [rsp + 0x7b0], 0
movdqu xmmword [rsp + 0x7b8], xmm0
mov qword [rsp + 0x7c8], 0
movdqa xmmword [rsp + 0x7d0], xmm0
mov qword [rsp + 0x7e0], 0
movzx eax, byte [0x140259141]
mov edx, 0x5f0
xor ecx, ecx
call fcn.14008b700
test rax, rax
je 0x140027689
mov rbx, rax
mov qword [rax], 0
mov rcx, rax
add rcx, 8
lea rdx, [rsp + 0x200]
mov r8d, 0x5e8
call sub.msvcrt.dll_memcpy
mov rax, qword [rsp + 0xa0]
movups xmm6, xmmword [rax + 0x18]
movdqu xmm7, xmmword [rax + 0x38]
movups xmm8, xmmword [rax + 0x48]
mov qword [rax + 0x18], 0
mov qword [rax + 0x38], 0
mov qword [rax + 0x48], 0
movzx eax, byte [0x140259141]
mov edx, 0x300
xor ecx, ecx
call fcn.14008b700
test rax, rax
je 0x140027689
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], rbx
mov qword [rcx + 0x180], 0
mov qword [rcx + 0x188], rbx
mov qword [rcx + 0x200], 0
movdqa xmm0, xmmword [rsp + 0xc0]
movdqu xmmword [rcx + 0x208], xmm0
mov rax, qword [rsp + 0xd0]
mov qword [rcx + 0x218], rax
movaps xmmword [rcx + 0x220], xmm6
movdqa xmmword [rcx + 0x230], xmm7
movaps xmmword [rcx + 0x240], xmm8
mov qword [rcx + 0x250], 1
mov rax, qword [rsp + 0x78]
mov qword [rcx + 0x258], rax
mov qword [rcx + 0x260], r13
mov qword [rcx + 0x268], r12
lea rdi, [rcx + 0x80]
mov qword [rcx + 0x270], 0
mov qword [rcx + 0x278], rsi
mov rax, qword [rsp + 0x98]
mov qword [rcx + 0x280], rax
mov rax, qword [rsp + 0x88]
mov qword [rcx + 0x288], rax
mov rax, qword [rsp + 0xb0]
mov r12, rax
shl r12, 5
mov rbx, qword [rsp + 0xa8]
add r12, rbx
shl r15, 4
add r15, r14
mov r13, r14
test rax, rax
je 0x140027115
add rcx, 0x250
mov qword [rsp + 0x148], rcx
xor eax, eax
mov qword [rsp + 0x78], rax
xorps xmm6, xmm6
movdqa xmm7, xmmword [0x1401b6ba0]
mov r13, r14
mov rax, qword [rsp + 0xa8]
mov qword [rsp + 0x70], rdi
mov qword [rsp + 0x118], r12
jmp 0x140026895
mov rsi, qword [rdi + 0x200]
mov rcx, rsi
call sub.KERNEL32.dll_AcquireSRWLockExclusive
mov byte [rsi + 8], 1
lea rcx, [rsi + 0x10]
call sub.KERNEL32.dll_WakeAllConditionVariable
mov rcx, rsi
call fcn.140114ea8
inc qword [rsp + 0x78]
mov rax, rbx
cmp rbx, r12
je 0x14002713c
lea rbx, [rax + 0x20]
movzx esi, byte [rax + 0x18]
cmp sil, 2
je 0x140027115
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 r13, r15
je 0x1400270f7
lea rcx, [rax + 0x19]
mov rdx, qword [r13]
mov qword [rsp + 0x88], rdx
movzx r12d, byte [r13 + 8]
mov rdx, qword [rax + 0x10]
mov qword [rsp + 0x1f0], rdx
movups xmm0, xmmword [rax]
movaps xmmword [rsp + 0x1e0], xmm0
mov eax, dword [rcx]
mov ecx, dword [rcx + 3]
mov dword [rsp + 0xb8], eax
mov dword [rsp + 0xbb], ecx
mov rdi, qword [rsp + 0xa0]
mov rdx, qword [rdi + 0x28]
movabs r8, 0x8000000000000000
test rdx, rdx
je 0x14002696e
mov rax, qword [rdi + 0x30]
lea rcx, [rsp + 0x200]
mov r8, qword [rsp + 0x78]
call qword [rax + 0x20]
mov r8, qword [rsp + 0x200]
lea rax, [rsp + 0x219]
movups xmm0, xmmword [rax - 0x11]
movaps xmmword [rsp + 0xc0], xmm0
mov r10, qword [rdi]
mov r11, qword [rdi + 8]
mov r9, qword [rsp + 0x70]
lock inc qword [r9]
jle 0x140027689
add r13, 0x10
mov qword [rsp + 0x188], r8
movaps xmm0, xmmword [rsp + 0xc0]
lea rdx, [rsp + 0x1b0]
movups xmmword [rdx - 0x20], xmm0
mov qword [rsp + 0x178], r10
mov qword [rsp + 0x180], r11
mov rax, qword [rsp + 0x1f0]
mov qword [rdx + 0x10], rax
movdqa xmm0, xmmword [rsp + 0x1e0]
movdqu xmmword [rdx], xmm0
mov byte [rsp + 0x1c8], sil
mov eax, dword [rsp + 0xb8]
mov ecx, dword [rsp + 0xbb]
mov dword [rdx + 0x1c], ecx
mov dword [rdx + 0x19], eax
mov rax, qword [rsp + 0x88]
mov qword [rsp + 0x1a0], rax
mov byte [rsp + 0x1a8], r12b
mov qword [rsp + 0x1d0], r9
mov rax, qword [rsp + 0x78]
mov qword [rsp + 0x1d8], rax
test rax, rax
mov qword [rsp + 0x88], r8
jne 0x140026af0
mov rax, qword [rsp + 0xa0]
cmp byte [rax + 0x58], 0
je 0x140026af0
xor ecx, ecx
call fcn.140024fc0
test rax, rax
mov r12, qword [rsp + 0x118]
je 0x140027689
cmp qword [rax], 0
lea rdi, [rsp + 0x200]
mov rcx, qword [rsp + 0x88]
jne 0x14002733c
mov rcx, rdi
lea rdx, [rsp + 0x178]
call fcn.1400241d0
movzx eax, byte [0x140259141]
mov edx, 0x200
xor ecx, ecx
call fcn.14008b700
test rax, rax
je 0x140027689
mov rsi, rax
and rsi, 0xffffffffffffff80
mov qword [rsi + 0x78], rax
sub rsi, 0xffffffffffffff80
mov r8d, 0x180
mov rcx, rsi
mov rdx, rdi
call sub.msvcrt.dll_memcpy
xor ecx, ecx
call fcn.140024fc0
test rax, rax
je 0x140027689
cmp qword [rax], 0
mov rdi, qword [rsp + 0x70]
jne 0x140027689
mov qword [rax], rsi
cmp qword [rdi + 0x208], 0
jne 0x140026860
jmp 0x140027689
mov qword [rsp + 0xb0], r11
mov rax, qword [rsp + 0x190]
mov qword [rsp + 0x120], rax
mov rax, qword [rsp + 0x198]
mov qword [rsp + 0x98], rax
lea rax, [rsp + 0x1a0]
movdqu xmm0, xmmword [rax]
movdqu xmm1, xmmword [rax + 0x10]
movups xmm2, xmmword [rax + 0x20]
movups xmm3, xmmword [rax + 0x30]
movdqa xmmword [rsp + 0x200], xmm0
movdqa xmmword [rsp + 0x210], xmm1
movaps xmmword [rsp + 0x220], xmm2
movaps xmmword [rsp + 0x230], xmm3
movabs rax, 0x8000000000000000
mov rdi, rax
cmp r8, rax
mov r12, qword [rsp + 0x118]
mov rsi, qword [rsp + 0x158]
mov rdx, qword [rsp + 0x90]
mov qword [rsp + 0x128], r10
je 0x140026bd9
mov rdi, qword [rsp + 0x98]
test rdi, rdi
je 0x140026bb6
js 0x140027689
movzx eax, byte [0x140259141]
xor ecx, ecx
mov rdx, rdi
call fcn.14008b700
mov rsi, rax
test rax, rax
jne 0x140026bbb
jmp 0x140027689
mov esi, 1
mov rcx, rsi
mov rdx, qword [rsp + 0x120]
mov r8, rdi
call sub.msvcrt.dll_memcpy
mov rdx, rdi
mov r10, qword [rsp + 0x128]
mov rax, qword [rsp + 0xb0]
test r10, r10
mov qword [rsp + 0x90], rdx
jne 0x140026bfb
call fcn.14008ee40
mov rdx, qword [rsp + 0x90]
mov qword [rsp + 0x150], rax
movabs rax, 0x8000000000000000
cmp rdi, rax
mov qword [rsp + 0x158], rsi
jne 0x140026c30
xor eax, eax
jmp 0x140026e30
cmp rdx, 0x10
jae 0x140026c67
test rdx, rdx
je 0x140026d12
xor eax, eax
nop word cs:[rax + rax]
cmp byte [rsi + rax], 0
je 0x140027689
inc rax
cmp rdx, rax
jne 0x140026c50
jmp 0x140026d12
lea rax, [rsi + 7]
and rax, 0xfffffffffffffff8
sub rax, rsi
jne 0x140026c7c
lea rcx, [rdx - 0x10]
xor eax, eax
jmp 0x140026cb5
cmp rax, rdx
cmovae rax, rdx
xor ecx, ecx
nop word cs:[rax + rax]
cmp byte [rsi + rcx], 0
je 0x140027689
inc rcx
cmp rax, rcx
jne 0x140026c90
lea rcx, [rdx - 0x10]
nop word cs:[rax + rax]
cmp rax, rcx
ja 0x140026ce9
movdqu xmm0, xmmword [rsi + rax]
movdqa xmm1, xmm0
paddq xmm1, xmm7
pandn xmm0, xmm1
pshufd xmm1, xmm0, 0xee
por xmm1, xmm0
movq rdx, xmm1
movabs r8, 0x8080808080808080
test rdx, r8
jne 0x140026ce9
add rax, 0x10
jmp 0x140026cb0
mov rdx, qword [rsp + 0x90]
cmp rax, rdx
je 0x140026d12
nop word cs:[rax + rax]
cmp byte [rsi + rax], 0
je 0x140027689
inc rax
cmp rdx, rax
jne 0x140026d00
mov qword [rsp + 0xf0], rdi
mov qword [rsp + 0xf8], rsi
mov qword [rsp + 0x100], rdx
mov rax, rsi
cmp rdi, rdx
jne 0x140026db9
mov rdi, rdx
inc rdi
je 0x140027689
test rdx, rdx
je 0x140026d5e
mov qword [rsp + 0xc0], rsi
mov qword [rsp + 0xd0], rdx
mov eax, 1
jmp 0x140026d60
xor eax, eax
mov rdx, rdi
not rdx
shr rdx, 0x3f
mov qword [rsp + 0xc8], rax
lea rcx, [rsp + 0x130]
mov r8, rdi
lea r9, [rsp + 0xc0]
call fcn.14000b6e0
cmp qword [rsp + 0x130], 0
jne 0x140027680
mov rax, qword [rsp + 0x138]
mov qword [rsp + 0xf8], rax
mov qword [rsp + 0xf0], rdi
mov rdx, qword [rsp + 0x90]
mov rsi, rdx
cmp rdx, rdi
jne 0x140026dee
lea rcx, [rsp + 0xf0]
mov rdx, qword [rsp + 0x90]
call fcn.14000b770
mov rsi, qword [rsp + 0x100]
mov rdi, qword [rsp + 0xf0]
mov rax, qword [rsp + 0xf8]
mov byte [rax + rsi], 0
inc rsi
mov qword [rsp + 0x100], rsi
cmp rdi, rsi
jbe 0x140026e30
mov rcx, qword [0x1402590e0]
xor edx, edx
mov r8, rax
test rsi, rsi
je 0x140026e25
mov r9, rsi
call sub.KERNEL32.dll_HeapReAlloc
test rax, rax
jne 0x140026e30
jmp 0x140027689
call sub.KERNEL32.dll_HeapFree
mov eax, 1
nop
mov qword [rsp + 0x80], rax
movzx eax, byte [0x140259141]
mov edx, 0x30
xor ecx, ecx
call fcn.14008b700
test rax, rax
je 0x140027689
mov rdi, rax
mov qword [rax], 1
mov qword [rax + 8], 1
mov rax, qword [rsp + 0x80]
mov qword [rdi + 0x18], rax
mov qword [rdi + 0x20], rsi
mov rax, qword [0x140259108]
nop dword [rax]
mov rcx, rax
inc rcx
je 0x140027689
lock cmpxchg qword [0x140259108], rcx
jne 0x140026e80
mov qword [rdi + 0x10], rcx
mov byte [rdi + 0x28], 0
lock inc qword [rdi]
jle 0x140027689
movzx eax, byte [0x140259141]
mov edx, 0x30
xor ecx, ecx
call fcn.14008b700
test rax, rax
je 0x140027689
mov rsi, rax
mov qword [rax], 1
mov qword [rax + 8], 1
movups xmmword [rax + 0x10], xmm6
mov qword [rsp + 0xc0], rax
lock inc qword [rax]
jle 0x140027689
movzx eax, byte [0x140259100]
test al, al
je 0x140026f60
mov byte [0x140259100], 1
call fcn.140087820
test rax, rax
je 0x140027689
mov rcx, qword [rax]
mov qword [rax], 0
test rcx, rcx
je 0x140026f60
mov rax, rcx
mov qword [rsp + 0x80], rcx
lock inc qword [rcx]
jle 0x140027689
mov byte [0x140259100], 1
call fcn.140087820
test rax, rax
je 0x140027663
mov rcx, qword [rax]
mov rdx, qword [rsp + 0x80]
mov qword [rax], rdx
test rcx, rcx
jne 0x140026f99
jmp 0x140026fb0
movzx eax, byte [0x140259100]
test al, al
je 0x140026fa6
mov byte [0x140259100], 1
call fcn.140087820
test rax, rax
je 0x140027689
mov rcx, qword [rax]
mov qword [rax], 0
xor eax, eax
mov qword [rsp + 0x80], rax
test rcx, rcx
je 0x140026fb0
lock dec qword [rcx]
jne 0x140026fb0
call fcn.140029670
jmp 0x140026fb0
xor eax, eax
mov qword [rsp + 0x80], rax
mov rax, qword [rsp + 0xc0]
mov qword [rsp + 0x110], rax
mov rcx, qword [rax + 0x10]
test rcx, rcx
je 0x140026fd4
lock inc qword [rcx + 0x18]
jle 0x140027656
movzx eax, byte [0x140259141]
mov edx, pe_nt_image_headers64
xor ecx, ecx
call fcn.14008b700
test rax, rax
je 0x140027689
mov qword [rax], rdi
mov qword [rax + 8], rsi
mov rcx, qword [rsp + 0x80]
mov qword [rax + 0x10], rcx
mov rcx, qword [rsp + 0x128]
mov qword [rax + 0x18], rcx
mov rcx, qword [rsp + 0xb0]
mov qword [rax + 0x20], rcx
mov rcx, qword [rsp + 0x88]
mov qword [rax + 0x28], rcx
mov rcx, qword [rsp + 0x120]
mov qword [rax + 0x30], rcx
mov rcx, qword [rsp + 0x98]
mov qword [rax + 0x38], rcx
movdqa xmm0, xmmword [rsp + 0x200]
movdqa xmm1, xmmword [rsp + 0x210]
movaps xmm2, xmmword [rsp + 0x220]
movaps xmm3, xmmword [rsp + 0x230]
movdqu xmmword [rax + 0x40], xmm0
movdqu xmmword [rax + 0x50], xmm1
movups xmmword [rax + 0x60], xmm2
movups xmmword [rax + 0x70], xmm3
mov rcx, qword [rsp + 0x150]
mov rdx, rax
lea r8, [0x1401d6d78]
call fcn.140087a80
test rax, rax
jne 0x1400273be
mov qword [rsp + 0x160], rdi
mov rax, qword [rsp + 0x110]
mov qword [rsp + 0x168], rax
mov qword [rsp + 0x170], rdx
mov rcx, rdx
call sub.KERNEL32.dll_CloseHandle
lock dec qword [rdi]
jne 0x1400270ce
mov rcx, qword [rsp + 0x160]
call fcn.1400293e0
mov rax, qword [rsp + 0x168]
lock dec qword [rax]
mov rdi, qword [rsp + 0x70]
jne 0x140026884
lea rcx, [rsp + 0x168]
call fcn.1400291c0
jmp 0x140026884
mov rax, qword [rsp + 0x200]
lock dec qword [rax]
jne 0x140027112
lea rcx, [rsp + 0x200]
call fcn.140029150
mov r13, r15
sub r12, rbx
je 0x14002713c
shr r12, 5
jmp 0x140027129
add rbx, 0x20
dec r12
je 0x14002713c
mov rax, qword [rbx]
lock dec qword [rax]
jne 0x140027120
mov rcx, rbx
call fcn.140029150
jmp 0x140027120
cmp qword [rsp + 0x108], 0
mov rbx, qword [rsp + 0xa0]
je 0x140027165
mov rcx, qword [0x1402590e0]
xor edx, edx
mov r8, qword [rsp + 0xa8]
call sub.KERNEL32.dll_HeapFree
sub r15, r13
je 0x14002718d
shr r15, 4
jmp 0x140027179
add r13, 0x10
dec r15
je 0x14002718d
mov rax, qword [r13]
lock dec qword [rax]
jne 0x140027170
mov rcx, r13
call fcn.140029150
jmp 0x140027170
cmp qword [rsp + 0xe0], 0
je 0x1400271a9
mov rcx, qword [0x1402590e0]
xor edx, edx
mov r8, r14
call sub.KERNEL32.dll_HeapFree
mov rax, qword [rsp + 0xe8]
mov qword [rax + 8], rdi
mov qword [rax], 3
mov rsi, qword [rbx + 0x18]
test rsi, rsi
je 0x1400271f1
mov rdi, qword [rbx + 0x20]
mov rcx, rsi
call qword [rdi]
cmp qword [rdi + 8], 0
je 0x1400271f1
cmp qword [rdi + 0x10], 0x11
jb 0x1400271e0
mov rsi, qword [rsi - 8]
mov rcx, qword [0x1402590e0]
xor edx, edx
mov r8, rsi
call sub.KERNEL32.dll_HeapFree
mov rsi, qword [rbx + 0x28]
test rsi, rsi
je 0x140027226
mov rdi, qword [rbx + 0x30]
mov rcx, rsi
call qword [rdi]
cmp qword [rdi + 8], 0
je 0x140027226
cmp qword [rdi + 0x10], 0x11
jb 0x140027215
mov rsi, qword [rsi - 8]
mov rcx, qword [0x1402590e0]
xor edx, edx
mov r8, rsi
call sub.KERNEL32.dll_HeapFree
mov rsi, qword [rbx + 0x38]
test rsi, rsi
je 0x14002725b
mov rdi, qword [rbx + 0x40]
mov rcx, rsi
call qword [rdi]
cmp qword [rdi + 8], 0
je 0x14002725b
cmp qword [rdi + 0x10], 0x11
jb 0x14002724a
mov rsi, qword [rsi - 8]
mov rcx, qword [0x1402590e0]
xor edx, edx
mov r8, rsi
call sub.KERNEL32.dll_HeapFree
mov rsi, qword [rbx + 0x48]
test rsi, rsi
je 0x140027290
mov rdi, qword [rbx + 0x50]
mov rcx, rsi
call qword [rdi]
cmp qword [rdi + 8], 0
je 0x140027290
cmp qword [rdi + 0x10], 0x11
jb 0x14002727f
mov rsi, qword [rsi - 8]
mov rcx, qword [0x1402590e0]
xor edx, edx
mov r8, rsi
call sub.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
movzx eax, byte [r8]
cmp eax, 0x2b
je 0x1400275d9
cmp eax, 0x2d
jne 0x1400272d6
cmp r9, 1
je 0x1400259af
mov r10, r8
cmp r9, 0x10
jbe 0x1400275f0
xor r11d, r11d
mov esi, 0xa
xor eax, eax
nop dword [rax]
cmp r9, r11
je 0x140027626
movzx edi, byte [r10 + r11]
mul rsi
seto dl
add edi, 0xffffffd0
cmp edi, 9
ja 0x1400259af
test dl, dl
jne 0x1400259af
mov edx, edi
inc r11
add rax, rdx
jae 0x1400272f0
jmp 0x1400259af
lea rcx, [rsp + 0x218]
mov r8, rdi
call fcn.140028890
jmp 0x140025d02
mov rax, qword [rsp + 0xe8]
mov qword [rax], 1
movabs rax, 0x8000000000000000
cmp rcx, rax
je 0x140027375
test rcx, rcx
je 0x140027375
mov r8, qword [rsp + 0x190]
mov rcx, qword [0x1402590e0]
xor edx, edx
call sub.KERNEL32.dll_HeapFree
mov rax, qword [rsp + 0x1b0]
lock dec qword [rax]
mov rsi, qword [rsp + 0x70]
je 0x140027412
mov rax, qword [rsp + 0x1a0]
lock dec qword [rax]
je 0x140027431
mov rax, qword [rsp + 0x1d0]
lock dec qword [rax]
je 0x140027450
sub r12, rbx
jne 0x140027462
jmp 0x14002748c
mov rax, qword [rsp + 0x110]
lock dec qword [rax]
jne 0x1400273df
lea rcx, [rsp + 0xc0]
mov rsi, rdx
call fcn.1400291c0
mov rdx, rsi
lock dec qword [rdi]
jne 0x1400273f3
mov rcx, rdi
mov rsi, rdx
call fcn.1400293e0
mov rdx, rsi
mov rax, qword [rsp + 0xe8]
mov qword [rax], 2
mov qword [rax + 8], rdx
mov rsi, qword [rsp + 0x70]
sub r12, rbx
jne 0x140027462
jmp 0x14002748c
lea rcx, [rsp + 0x1b0]
call fcn.140029150
mov rax, qword [rsp + 0x1a0]
lock dec qword [rax]
jne 0x14002739e
lea rcx, [rsp + 0x1a0]
call fcn.140029150
mov rax, qword [rsp + 0x1d0]
lock dec qword [rax]
jne 0x1400273b0
mov rcx, qword [rsp + 0x1d0]
call fcn.140029440
sub r12, rbx
je 0x14002748c
shr r12, 5
jmp 0x140027479
add rbx, 0x20
dec r12
je 0x14002748c
mov rax, qword [rbx]
lock dec qword [rax]
jne 0x140027470
mov rcx, rbx
call fcn.140029150
jmp 0x140027470
cmp qword [rsp + 0x108], 0
je 0x1400274ad
mov rcx, qword [0x1402590e0]
xor edx, edx
mov r8, qword [rsp + 0xa8]
call sub.KERNEL32.dll_HeapFree
sub r15, r13
je 0x1400274dd
shr r15, 4
jmp 0x1400274c9
add r13, 0x10
dec r15
je 0x1400274dd
mov rax, qword [r13]
lock dec qword [rax]
jne 0x1400274c0
mov rcx, r13
call fcn.140029150
jmp 0x1400274c0
cmp qword [rsp + 0xe0], 0
je 0x1400274f9
mov rcx, qword [0x1402590e0]
xor edx, edx
mov r8, r14
call sub.KERNEL32.dll_HeapFree
mov rax, qword [rsp + 0x148]
lock dec qword [rax]
jne 0x1400275ba
mov rax, qword [rsi + 0x208]
test rax, rax
je 0x1400275ba
mov r14, qword [rsi + 0x200]
shl rax, 3
lea rdx, [rax + rax*8]
mov r15d, 0x10
xor r12d, r12d
xor r13d, r13d
mov qword [rsp + 0x78], rdx
jmp 0x140027560
mov rcx, rsi
call fcn.140114ea8
mov rsi, rbx
mov rdx, qword [rsp + 0x78]
add r12, 0x48
sub r15, 0xffffffffffffff80
inc r13
cmp rdx, r12
je 0x1400275ba
mov eax, 3
xchg qword [r14 + r12 + 0x30], rax
cmp rax, 2
jne 0x140027550
cmp qword [rsi + 0x1e8], r13
jbe 0x140027689
mov rbx, rsi
mov rdi, qword [rsi + 0x1e0]
lea rsi, [rdi + r15]
add rsi, 0xfffffffffffffff0
mov rcx, rsi
call sub.KERNEL32.dll_AcquireSRWLockExclusive
cmp byte [rdi + r15 - 8], 0
je 0x140027540
mov byte [rdi + r15 - 8], 0
add rdi, r15
mov rcx, rdi
call sub.KERNEL32.dll_WakeConditionVariable
lock dec qword [rbx + 0x1f0]
jmp 0x140027540
lock dec qword [rsi]
mov rbx, qword [rsp + 0xa0]
jne 0x1400271bc
mov rcx, rsi
call fcn.140029440
jmp 0x1400271bc
dec r9
je 0x1400259af
lea r10, [r8 + 1]
cmp r9, 0x11
jae 0x1400272e3
xor edx, edx
xor eax, eax
nop word cs:[rax + rax]
movzx r11d, byte [r10 + rdx]
add r11d, 0xffffffd0
cmp r11d, 9
ja 0x1400259af
lea rax, [rax + rax*4]
mov r11d, r11d
lea rax, [r11 + rax*2]
inc rdx
cmp r9, rdx
jne 0x140027600
mov sil, 1
test rcx, rcx
jne 0x1400259b6
jmp 0x1400259ca
shl rcx, 1
test rcx, rcx
je 0x1400259d5
mov rcx, qword [0x1402590e0]
xor edx, edx
call sub.KERNEL32.dll_HeapFree
jmp 0x1400259d5
add rcx, 0x10
xor edx, edx
call fcn.140087620
ud2
mov rax, qword [rsp + 0x80]
lock dec qword [rax]
jne 0x140027689
mov rcx, qword [rsp + 0x80]
call fcn.1400873e0
ud2
cmp qword [rsp + 0x138], 0
ud2