Function at 0x140162720
Capabilities:
Get system information on windows

Disassembly:
push r15
push r14
push r13
push r12
push rsi
push rdi
push rbp
push rbx
sub rsp, 0x888
movdqa xmmword [rsp + 0x870], xmm9
movaps xmmword [rsp + 0x860], xmm8
movaps xmmword [rsp + 0x850], xmm7
movdqa xmmword [rsp + 0x840], xmm6
mov rbp, rdx
mov r14, rcx
cmp byte [rdx + 0x70], 1
jne 0x14016277f
cmp qword [rbp], 0
je 0x140162957
mov rbx, qword [rbp + 8]
lea rsi, [rsp + 0x440]
jmp 0x1401629a3
movzx eax, byte [rbp + 0x73]
shl eax, 0x18
movzx ecx, word [rbp + 0x71]
lea edx, [rcx + rax]
add edx, 0x10000
lea rcx, [rsp + 0x1b0]
call fcn.140164280
mov r12, qword [rsp + 0x1c0]
mov rsi, qword [rsp + 0x1b0]
mov rbx, qword [rsp + 0x1b8]
lea rdx, [rsp + 0x1c8]
lea rcx, [rsp + 0x440]
mov r8d, 0x230
call sub.VCRUNTIME140.dll_memcpy
mov rdi, qword [rsp + 0x3f8]
movups xmm0, xmmword [rsp + 0x400]
movaps xmmword [rsp + 0x70], xmm0
mov rax, qword [rsp + 0x410]
mov qword [rsp + 0x80], rax
cmp rsi, 1
jne 0x14016280b
mov qword [r14 + 8], rbx
mov qword [r14 + 0x10], r12
jmp 0x140162a06
mov qword [rsp + 0xf0], rbp
mov rbp, qword [rsp + 0x440]
movups xmm0, xmmword [rsp + 0x448]
movaps xmmword [rsp + 0x120], xmm0
mov rax, qword [rsp + 0x458]
mov qword [rsp + 0x130], rax
mov r15, qword [rsp + 0x460]
mov rax, qword [rsp + 0x468]
mov qword [rsp + 0x28], rax
lea rdx, [rsp + 0x470]
lea rsi, [rsp + 0x678]
mov r8d, 0x1c8
mov rcx, rsi
call sub.VCRUNTIME140.dll_memcpy
mov r13, qword [rsp + 0x638]
movups xmm0, xmmword [rsp + 0x640]
movaps xmmword [rsp + 0x160], xmm0
movups xmm0, xmmword [rsp + 0x650]
movaps xmmword [rsp + 0x170], xmm0
movdqu xmm6, xmmword [rsp + 0x660]
mov rax, qword [rsp + 0x80]
mov qword [rsp + 0x150], rax
movaps xmm0, xmmword [rsp + 0x70]
movaps xmmword [rsp + 0x140], xmm0
movaps xmm0, xmmword [rsp + 0x120]
movaps xmmword [rsp + 0xd0], xmm0
mov rax, qword [rsp + 0x130]
mov qword [rsp + 0xe0], rax
lea rcx, [rsp + 0x1b0]
mov r8d, 0x1c8
mov rdx, rsi
call sub.VCRUNTIME140.dll_memcpy
movdqa xmm0, xmmword [rsp + 0x160]
movdqa xmm1, xmmword [rsp + 0x170]
movdqa xmmword [rsp + 0x70], xmm0
movdqa xmmword [rsp + 0x80], xmm1
mov qword [rsp + 0xa0], rbx
cmp rbx, 1
mov qword [rsp + 0x30], rdi
mov qword [rsp + 0x60], r15
jne 0x140162b62
mov rax, r12
xor rax, 1
jne 0x140162baf
lock add qword [rbp], 1
jle 0x14016369c
movaps xmm7, xmmword [0x1402207f0]
mov rsi, rbp
jmp 0x140162c35
xorps xmm0, xmm0
movaps xmmword [rsp + 0x1d0], xmm0
movaps xmmword [rsp + 0x1c0], xmm0
movaps xmmword [rsp + 0x1b0], xmm0
lea rcx, [rsp + 0x1b0]
call sub.KERNEL32.dll_GetSystemInfo
mov eax, dword [rsp + 0x1d0]
test eax, eax
mov ebx, 1
cmovne ebx, eax
lea rsi, [rsp + 0x440]
mov eax, 0x10000
cmp byte [rbp + 0x70], 1
jne 0x1401629a5
xor eax, eax
movzx ecx, byte [rbp + 0x71]
or ecx, eax
movzx edx, byte [rbp + 0x72]
movzx eax, byte [rbp + 0x73]
shl eax, 0x18
shl edx, 8
or edx, ecx
or edx, eax
lea rcx, [rsp + 0x1b0]
call fcn.140164280
mov r15, qword [rsp + 0x1c0]
mov rdi, qword [rsp + 0x1b0]
mov r12, qword [rsp + 0x1b8]
lea rdx, [rsp + 0x1c8]
mov r8d, 0x230
mov rcx, rsi
call sub.VCRUNTIME140.dll_memcpy
cmp rdi, 1
jne 0x140162a12
mov qword [r14 + 8], r12
mov qword [r14 + 0x10], r15
mov qword [r14], 1
jmp 0x1401640e3
mov qword [rsp + 0x98], rbx
mov qword [rsp + 0xf0], rbp
mov qword [rsp + 0x180], r14
mov rax, qword [rsp + 0x3f8]
mov qword [rsp + 0x110], rax
mov rax, qword [rsp + 0x400]
mov qword [rsp + 0x108], rax
mov eax, dword [rsp + 0x408]
mov dword [rsp + 0x94], eax
mov eax, dword [rsp + 0x40c]
mov dword [rsp + 0xfc], eax
mov rax, qword [rsp + 0x410]
mov qword [rsp + 0x100], rax
mov rbp, qword [rsi]
mov rax, qword [rsi + 0x18]
mov qword [rsp + 0x130], rax
movups xmm0, xmmword [rsi + 8]
movaps xmmword [rsp + 0x120], xmm0
mov r14, qword [rsi + 0x20]
mov r13, qword [rsi + 0x28]
lea rdx, [rsi + 0x30]
lea rdi, [rsp + 0x678]
mov r8d, 0x1c8
mov rcx, rdi
call sub.VCRUNTIME140.dll_memcpy
mov rbx, qword [rsi + 0x1f8]
movups xmm0, xmmword [rsi + 0x200]
movaps xmmword [rsp + 0x160], xmm0
movups xmm0, xmmword [rsi + 0x210]
movaps xmmword [rsp + 0x170], xmm0
movdqu xmm6, xmmword [rsi + 0x220]
movaps xmm0, xmmword [rsp + 0x120]
movaps xmmword [rsp + 0xb0], xmm0
mov rax, qword [rsp + 0x130]
mov qword [rsp + 0xc0], rax
lea rcx, [rsp + 0x440]
mov r8d, 0x1c8
mov rdx, rdi
call sub.VCRUNTIME140.dll_memcpy
movdqa xmm0, xmmword [rsp + 0x160]
movdqa xmm1, xmmword [rsp + 0x170]
movdqa xmmword [rsp + 0x40], xmm0
movdqa xmmword [rsp + 0x50], xmm1
cmp r12, 1
jne 0x140162b88
mov rax, r15
xor rax, 1
jne 0x140162be0
lock add qword [rbp], 1
jle 0x14016369c
movaps xmm7, xmmword [0x1402207f0]
mov rdi, rbp
jmp 0x140162fd5
cmp r15, 1
jne 0x140162c11
mov rsi, qword [rsp + 0x28]
lock add qword [rsi], 1
jle 0x14016369c
movaps xmm7, xmmword [0x140220780]
jmp 0x140162c35
cmp r14, 1
jne 0x140162fac
lock add qword [r13], 1
jle 0x14016369c
movaps xmm7, xmmword [0x140220780]
mov rdi, r13
jmp 0x140162fd5
pause
mov rax, qword [r13 + 8]
nop word cs:[rax + rax]
nop dword [rax]
cmp rax, 0xffffffffffffffff
je 0x140162bad
lea rcx, [rax + 1]
lock cmpxchg qword [r13 + 8], rcx
jne 0x140162bc0
movaps xmm7, xmmword [0x140220720]
mov rsi, r13
jmp 0x140162c35
pause
mov rax, qword [rbx + 8]
nop word cs:[rax + rax]
nop
cmp rax, 0xffffffffffffffff
je 0x140162bde
lea rcx, [rax + 1]
lock cmpxchg qword [rbx + 8], rcx
jne 0x140162bf0
movaps xmm7, xmmword [0x140220720]
mov rdi, rbx
jmp 0x140162fd5
movq rsi, xmm6
jmp 0x140162c1a
pause
mov rax, qword [rsi + 8]
nop
cmp rax, 0xffffffffffffffff
je 0x140162c18
lea rcx, [rax + 1]
lock cmpxchg qword [rsi + 8], rcx
jne 0x140162c20
xorps xmm7, xmm7
mov qword [rsp + 0x68], rbp
call sub.KERNEL32.dll_GetProcessHeap
mov r8d, 0x18
mov rcx, rax
xor edx, edx
call sub.KERNEL32.dll_HeapAlloc
test rax, rax
je 0x140164204
mov rdi, rax
movups xmmword [rax], xmm7
mov qword [rax + 0x10], rsi
call sub.KERNEL32.dll_GetProcessHeap
mov r8d, 0x400
mov rcx, rax
xor edx, edx
call sub.KERNEL32.dll_HeapAlloc
test rax, rax
je 0x1401641f3
mov rbx, rax
pxor xmm0, xmm0
movdqu xmmword [rsp + 0x447], xmm0
call sub.KERNEL32.dll_GetProcessHeap
mov r8d, 0x58
mov rcx, rax
xor edx, edx
call sub.KERNEL32.dll_HeapAlloc
test rax, rax
je 0x140164215
mov rsi, rax
movaps xmm0, xmmword [0x1402207f0]
movups xmmword [rax], xmm0
mov qword [rax + 0x10], 0
mov byte [rax + 0x18], 0
movdqu xmm0, xmmword [rsp + 0x440]
movdqu xmmword [rax + 0x19], xmm0
mov rax, qword [rsp + 0x44f]
mov qword [rsi + 0x28], rax
mov qword [rsi + 0x30], rbx
mov qword [rsi + 0x38], 0x80
mov qword [rsi + 0x40], rdi
lea rax, [0x1402782f0]
mov qword [rsi + 0x48], rax
mov byte [rsi + 0x50], 0
mov eax, dword [rsp + 0x40]
mov ecx, dword [rsp + 0x43]
mov dword [rsi + 0x51], eax
mov dword [rsi + 0x54], ecx
call sub.KERNEL32.dll_GetProcessHeap
mov r8d, 0x400
mov rcx, rax
xor edx, edx
call sub.KERNEL32.dll_HeapAlloc
test rax, rax
je 0x1401641f3
xorps xmm7, xmm7
movaps xmmword [rsp + 0x440], xmm7
lock add qword [rsi], 1
jle 0x14016369c
mov rdi, rax
movaps xmm0, xmmword [rsp + 0x440]
movaps xmmword [rsp + 0x430], xmm0
mov eax, dword [rsp + 0x440]
mov ecx, dword [rsp + 0x443]
mov dword [rsp + 0xa8], eax
mov dword [rsp + 0xab], ecx
movaps xmm0, xmmword [rsp + 0xd0]
movaps xmmword [rsp + 0xb0], xmm0
mov rax, qword [rsp + 0xe0]
mov qword [rsp + 0xc0], rax
lea rcx, [rsp + 0x440]
lea rdx, [rsp + 0x1b0]
mov r8d, 0x1c8
call sub.VCRUNTIME140.dll_memcpy
movaps xmm0, xmmword [rsp + 0x70]
movdqa xmm1, xmmword [rsp + 0x80]
movaps xmmword [rsp + 0x40], xmm0
movdqa xmmword [rsp + 0x50], xmm1
movups xmmword [rsp + 0x420], xmm7
movdqu xmm0, xmmword [rsp + 0x419]
movdqa xmmword [rsp + 0x190], xmm0
mov rax, qword [rsp + 0x428]
mov qword [rsp + 0x19f], rax
lock add qword [rsi], 1
jle 0x14016369c
mov rcx, qword [rsp + 0xf0]
mov rdx, qword [rcx + 0x10]
call fcn.1401582c0
lock add qword [rax], 1
jle 0x14016369c
mov rbx, rax
mov rbp, rdx
xorps xmm7, xmm7
movups xmmword [r14 + 8], xmm7
mov byte [r14 + 0x18], 0
mov eax, dword [rsp + 0x1b0]
mov ecx, dword [rsp + 0x1b3]
mov dword [r14 + 0x19], eax
mov dword [r14 + 0x1c], ecx
movups xmmword [r14 + 0x20], xmm7
movaps xmm0, xmmword [rsp + 0x430]
movups xmmword [r14 + 0x30], xmm0
mov qword [r14 + 0x40], rdi
mov qword [r14 + 0x48], 0x80
mov qword [r14 + 0x50], rsi
mov qword [r14 + 0x60], r12
mov rax, qword [rsp + 0xa0]
mov qword [r14 + 0x58], rax
mov rax, qword [rsp + 0x68]
mov qword [r14 + 0x68], rax
movaps xmm0, xmmword [rsp + 0xb0]
movups xmmword [r14 + 0x70], xmm0
mov rax, qword [rsp + 0xc0]
mov qword [r14 + 0x80], rax
mov rax, qword [rsp + 0x60]
mov qword [r14 + 0x88], rax
mov rax, qword [rsp + 0x28]
mov qword [r14 + 0x90], rax
lea rcx, [r14 + 0x98]
lea rdx, [rsp + 0x440]
mov r8d, 0x1c8
call sub.VCRUNTIME140.dll_memcpy
mov qword [r14 + 0x260], r13
movaps xmm0, xmmword [rsp + 0x40]
movdqa xmm1, xmmword [rsp + 0x50]
movups xmmword [r14 + 0x268], xmm0
movdqu xmmword [r14 + 0x278], xmm1
movdqu xmmword [r14 + 0x288], xmm6
mov byte [r14 + 0x298], 0
mov eax, dword [rsp + 0xa8]
mov ecx, dword [rsp + 0xab]
mov dword [r14 + 0x299], eax
mov dword [r14 + 0x29c], ecx
movups xmmword [r14 + 0x2a0], xmm7
mov byte [r14 + 0x2b0], 0
mov rax, qword [rsp + 0x19f]
mov qword [r14 + 0x2c0], rax
movaps xmm0, xmmword [rsp + 0x190]
movups xmmword [r14 + 0x2b1], xmm0
mov qword [r14 + 0x2c8], rsi
mov qword [r14 + 0x2d0], 0
mov qword [r14 + 0x2d8], rsi
mov rax, qword [rsp + 0x30]
mov qword [r14 + 0x2e0], rax
movaps xmm0, xmmword [rsp + 0x140]
movups xmmword [r14 + 0x2e8], xmm0
mov rax, qword [rsp + 0x150]
mov qword [r14 + 0x2f8], rax
mov qword [r14 + 0x300], rbx
mov qword [r14 + 0x308], rbx
mov qword [r14 + 0x310], rbp
mov qword [r14], 0
jmp 0x1401640e3
movq rdi, xmm6
jmp 0x140162fb5
pause
mov rax, qword [rdi + 8]
nop dword [rax]
cmp rax, 0xffffffffffffffff
je 0x140162fb3
lea rcx, [rax + 1]
lock cmpxchg qword [rdi + 8], rcx
jne 0x140162fc0
xorps xmm7, xmm7
movaps xmm0, xmmword [rsp + 0xb0]
movaps xmmword [rsp + 0xd0], xmm0
mov rax, qword [rsp + 0xc0]
mov qword [rsp + 0xe0], rax
lea rcx, [rsp + 0x1b0]
lea rdx, [rsp + 0x440]
mov r8d, 0x1c8
call sub.VCRUNTIME140.dll_memcpy
movaps xmm0, xmmword [rsp + 0x40]
movaps xmm1, xmmword [rsp + 0x50]
movaps xmmword [rsp + 0x70], xmm0
movaps xmmword [rsp + 0x80], xmm1
call sub.KERNEL32.dll_GetProcessHeap
mov r8d, 0x270
mov rcx, rax
xor edx, edx
call sub.KERNEL32.dll_HeapAlloc
test rax, rax
je 0x140164226
mov rsi, rax
movaps xmm8, xmmword [0x1402207f0]
movups xmmword [rax], xmm8
mov qword [rax + 0x10], r12
mov qword [rax + 0x18], r15
mov qword [rax + 0x20], rbp
movaps xmm0, xmmword [rsp + 0xd0]
movups xmmword [rax + 0x28], xmm0
mov rax, qword [rsp + 0xe0]
mov qword [rsi + 0x38], rax
mov qword [rsi + 0x40], r14
mov qword [rsi + 0x48], r13
mov rcx, rsi
add rcx, 0x50
lea rdx, [rsp + 0x1b0]
mov r8d, 0x1c8
call sub.VCRUNTIME140.dll_memcpy
mov qword [rsi + 0x218], rbx
movdqa xmm0, xmmword [rsp + 0x70]
movdqa xmm1, xmmword [rsp + 0x80]
movdqu xmmword [rsi + 0x220], xmm0
movdqu xmmword [rsi + 0x230], xmm1
movdqu xmmword [rsi + 0x240], xmm6
mov byte [rsi + 0x250], 0
mov eax, dword [rsp + 0x140]
mov ecx, dword [rsp + 0x143]
mov dword [rsi + 0x251], eax
mov dword [rsi + 0x254], ecx
movups xmmword [rsi + 0x258], xmm7
mov qword [rsi + 0x268], rdi
call sub.KERNEL32.dll_GetProcessHeap
mov r8d, 0x38
mov rcx, rax
xor edx, edx
call sub.KERNEL32.dll_HeapAlloc
test rax, rax
je 0x14016416d
mov rbx, rax
movups xmmword [rax], xmm8
pxor xmm0, xmm0
movdqu xmmword [rax + 0x10], xmm0
movdqu xmmword [rax + 0x20], xmm0
mov qword [rax + 0x30], rsi
mov qword [rsp + 0xd0], rax
mov qword [rsp + 0x40], 8
movdqu xmmword [rsp + 0x48], xmm0
mov rsi, qword [rsp + 0x98]
test rsi, rsi
je 0x1401636b2
call fcn.140167490
mov qword [rsp + 0x118], rdx
mov rsi, qword [rbx + 0x30]
lock add qword [rsi], 1
jle 0x14016369c
mov r12, rax
mov rax, qword [rsp + 0x98]
add rax, 0xffffffffffffffff
mov qword [rsp + 0x188], rax
xor ebp, ebp
xorps xmm7, xmm7
movdqa xmm9, xmmword [str.uespemosarenegylmodnarodsetybdet]
movdqa xmm6, xmmword [0x1402209e0]
lea r15, [rsp + 0x440]
mov ebx, 0
mov edi, 0
mov eax, 8
mov qword [rsp + 0x38], rax
xor r13d, r13d
nop
call sub.KERNEL32.dll_GetProcessHeap
mov r8d, 0x38
mov rcx, rax
xor edx, edx
call sub.KERNEL32.dll_HeapAlloc
test rax, rax
je 0x14016416d
mov r14, rax
movups xmmword [rax], xmm8
movups xmmword [rax + 0x10], xmm7
movups xmmword [rax + 0x20], xmm7
mov qword [rax + 0x30], rsi
lock add qword [rax], 1
jle 0x14016369c
mov qword [rsp + 0xa0], r13
mov qword [rsp + 0x60], rdi
mov qword [rsp + 0x68], rbx
mov qword [rsp + 0x30], rbp
mov qword [rsp + 0x28], r12
mov eax, dword [0x1402cf4c0]
mov rcx, qword gs:[0x58]
mov rax, qword [rcx + rax*8]
cmp dword [rax + 0x78], 1
lea rsi, [rsp + 0x1b0]
je 0x140163241
call fcn.140153e70
mov eax, dword [0x1402cf4c0]
mov rcx, qword gs:[0x58]
mov rax, qword [rcx + rax*8]
mov rcx, qword [rax + 0x80]
mov rdx, qword [rax + 0x88]
lea rbp, [rcx + 1]
mov qword [rax + 0x80], rbp
movq xmm0, rcx
pshufd xmm0, xmm0, 0x44
pxor xmm0, xmm9
movq xmm1, rdx
pshufd xmm1, xmm1, 0x44
pxor xmm1, xmm6
mov qword [rsp + 0x1b0], rcx
mov qword [rsp + 0x1b8], rdx
mov qword [rsp + 0x1c0], 0
movdqu xmmword [rsp + 0x1c8], xmm0
movdqu xmmword [rsp + 0x1d8], xmm1
lea rax, [rsp + 0x1e8]
movups xmmword [rax], xmm7
mov eax, 1
lock xadd dword [0x1402cc3e0], eax
mov dword [rsp + 0x440], eax
mov r8d, 4
mov rcx, rsi
mov r13, r15
mov rdx, r15
call fcn.1400069e0
mov rbp, qword [rsp + 0x1c0]
mov rdi, qword [rsp + 0x1d8]
shl rbp, 0x38
or rbp, qword [rsp + 0x1e8]
mov rsi, qword [rsp + 0x1e0]
xor rsi, rbp
mov rbx, qword [rsp + 0x1c8]
add rbx, rdi
mov r15, qword [rsp + 0x1d0]
add r15, rsi
call sub.KERNEL32.dll_GetProcessHeap
mov r8d, 0x38
mov rcx, rax
xor edx, edx
call sub.KERNEL32.dll_HeapAlloc
test rax, rax
je 0x14016416d
mov r12, rax
rol rdi, 0xd
xor rdi, rbx
rol rbx, 0x20
rol rsi, 0x10
xor rsi, r15
add rbx, rsi
rol rsi, 0x15
add r15, rdi
rol rdi, 0x11
xor rsi, rbx
xor rdi, r15
rol r15, 0x20
xor rbx, rbp
add rbx, rdi
rol rdi, 0xd
xor rdi, rbx
rol rbx, 0x20
xor r15, 0xff
add r15, rsi
rol rsi, 0x10
xor rsi, r15
add rbx, rsi
rol rsi, 0x15
add r15, rdi
rol rdi, 0x11
xor rdi, r15
rol r15, 0x20
xor rsi, rbx
add rbx, rdi
rol rdi, 0xd
xor rdi, rbx
rol rbx, 0x20
add r15, rsi
rol rsi, 0x10
xor rsi, r15
add rbx, rsi
rol rsi, 0x15
add r15, rdi
rol rdi, 0x11
xor rdi, r15
rol r15, 0x20
xor rsi, rbx
add rbx, rdi
rol rdi, 0xd
add r15, rsi
rol rsi, 0x10
xor rsi, r15
rol rsi, 0x15
xor rdi, rbx
add r15, rdi
rol rdi, 0x11
mov rax, r15
rol rax, 0x20
xor rdi, r15
xor rdi, rax
xor rdi, rsi
test edi, edi
mov eax, edi
mov ecx, 1
cmove eax, ecx
shr rdi, 0x20
mov qword [r12], 0
mov rcx, qword [rsp + 0x118]
mov qword [r12 + 8], rcx
movups xmmword [r12 + 0x10], xmm7
mov qword [r12 + 0x20], r14
mov dword [r12 + 0x28], edi
mov dword [r12 + 0x2c], eax
mov word [r12 + 0x30], 0
mov byte [r12 + 0x32], 0
movzx eax, byte [rsp + 0x1b4]
mov byte [r12 + 0x37], al
mov eax, dword [rsp + 0x1b0]
mov dword [r12 + 0x33], eax
mov rbp, qword [rsp + 0x50]
cmp rbp, qword [rsp + 0x48]
jne 0x140163500
mov rax, rbp
inc rax
lea r9, [rsp + 0x1b0]
je 0x1401641df
mov r15, r13
mov rcx, rbp
add rcx, rbp
cmp rcx, rax
cmova rax, rcx
cmp rax, 4
mov ecx, 4
cmovbe rax, rcx
xor r8d, r8d
mov ecx, 8
mul rcx
setno r8b
shl r8, 3
test rbp, rbp
mov r13, qword [rsp + 0xa0]
je 0x140163512
mov rcx, qword [rsp + 0x40]
shl rbp, 3
mov qword [rsp + 0x1b0], rcx
mov qword [rsp + 0x1b8], rbp
mov qword [rsp + 0x1c0], 8
jmp 0x14016351e
mov rcx, qword [rsp + 0x40]
mov r15, r13
mov r13, qword [rsp + 0xa0]
jmp 0x14016355b
mov qword [rsp + 0x1b0], 0
mov rcx, r15
mov rdx, rax
call fcn.14007daf0
mov rcx, qword [rsp + 0x448]
mov rdx, qword [rsp + 0x450]
cmp qword [rsp + 0x440], 1
je 0x14016417e
mov qword [rsp + 0x40], rcx
shr rdx, 3
mov qword [rsp + 0x48], rdx
mov rbp, qword [rsp + 0x50]
mov qword [rcx + rbp*8], r12
add qword [rsp + 0x50], 1
mov rdi, qword [rsp + 0x60]
cmp rdi, r13
jne 0x1401635e0
lea rax, [rdi + 1]
mov rbx, qword [rsp + 0x68]
cmp rbx, rax
cmova rax, rbx
cmp rax, 4
mov ecx, 4
cmovbe rax, rcx
xor r8d, r8d
mov ecx, 0x18
mul rcx
setno r8b
shl r8, 3
test rdi, rdi
mov rsi, qword [rsp + 0x28]
mov rbp, qword [rsp + 0x30]
je 0x1401635f1
mov rcx, qword [rsp + 0x38]
mov qword [rsp + 0x1b0], rcx
mov qword [rsp + 0x1b8], rbp
mov qword [rsp + 0x1c0], 8
jmp 0x1401635fd
mov rsi, qword [rsp + 0x28]
mov rbp, qword [rsp + 0x30]
mov rbx, qword [rsp + 0x68]
jmp 0x140163648
mov qword [rsp + 0x1b0], 0
mov rcx, r15
mov rdx, rax
lea r9, [rsp + 0x1b0]
call fcn.14007daf0
mov rax, qword [rsp + 0x448]
mov qword [rsp + 0x38], rax
mov rax, qword [rsp + 0x450]
cmp qword [rsp + 0x440], 1
je 0x14016418a
movabs rcx, 0xaaaaaaaaaaaaaaab
mul rcx
mov r13, rdx
shr r13, 4
mov rax, qword [rsp + 0x38]
mov qword [rax + rbp], rsi
mov qword [rax + rbp + 8], 0
mov qword [rax + rbp + 0x10], r14
cmp qword [rsp + 0x188], rdi
je 0x1401636a0
mov rsi, qword [rsp + 0xd0]
call fcn.140167490
mov r12, rax
mov qword [rsp + 0x118], rdx
mov rsi, qword [rsi + 0x30]
add rdi, 1
add rbx, 2
add rbp, 0x18
lock add qword [rsi], 1
jg 0x1401631c0
ud2
mov rsi, qword [rsp + 0x98]
cmp r13, rsi
ja 0x1401636c4
jmp 0x140163735
mov eax, 8
mov qword [rsp + 0x38], rax
xor r13d, r13d
cmp r13, rsi
jbe 0x140163735
lea rax, [rsi*8]
lea rbx, [rax + rax*2]
test rbx, rbx
je 0x140163703
call sub.KERNEL32.dll_GetProcessHeap
mov rcx, rax
xor edx, edx
mov r8, qword [rsp + 0x38]
mov r9, rbx
call sub.KERNEL32.dll_HeapReAlloc
mov rdi, rax
test rax, rax
jne 0x140163730
mov edx, 8
mov rcx, rbx
call fcn.1400182a0
ud2
shl r13, 3
lea rax, [r13*2]
add rax, r13
mov edi, 8
test rax, rax
je 0x140163730
call sub.KERNEL32.dll_GetProcessHeap
mov rcx, rax
xor edx, edx
mov r8, qword [rsp + 0x38]
call fcn.14021dfcd
mov qword [rsp + 0x38], rdi
mov ecx, 8
xor ebx, ebx
mov rax, rsi
mul rcx
mov rdi, rax
setno al
pxor xmm0, xmm0
movdqu xmmword [rsp + 0x1b7], xmm0
mov byte [rsp + 0x1c7], 0
jo 0x1401641df
mov bl, al
shl rbx, 3
test rdi, rdi
je 0x140163795
call sub.KERNEL32.dll_GetProcessHeap
mov rcx, rax
xor edx, edx
mov r8, rdi
call sub.KERNEL32.dll_HeapAlloc
mov rbp, rax
test rax, rax
jne 0x140163798
mov rcx, rdi
mov rdx, rbx
call fcn.1400182a0
ud2
mov rbp, rbx
pxor xmm0, xmm0
movdqa xmmword [rsp + 0x440], xmm0
call sub.KERNEL32.dll_GetProcessHeap
mov r8d, 0xb0
mov rcx, rax
xor edx, edx
call sub.KERNEL32.dll_HeapAlloc
test rax, rax
je 0x140164237
shr rdi, 3
mov rbx, rsi
shl rbx, 0x10
movups xmmword [rax], xmm8
mov rcx, qword [rsp + 0x38]
mov qword [rax + 0x10], rcx
mov qword [rax + 0x18], rsi
mov qword [rax + 0x20], 0
mov byte [rax + 0x28], 0
movups xmm0, xmmword [rsp + 0x1b0]
movups xmmword [rax + 0x29], xmm0
mov rcx, qword [rsp + 0x1c0]
mov qword [rax + 0x39], rcx
mov ecx, dword [rsp + 0xb0]
mov edx, dword [rsp + 0xb3]
mov dword [rax + 0x44], edx
mov dword [rax + 0x41], ecx
mov qword [rax + 0x48], 0
mov qword [rax + 0x50], rbx
mov qword [rax + 0x58], 0
mov byte [rax + 0x60], 0
mov edx, dword [rsp + 0x70]
mov ecx, dword [rsp + 0x73]
mov dword [rax + 0x64], ecx
mov dword [rax + 0x61], edx
mov qword [rax + 0x68], rbp
mov qword [rax + 0x70], rdi
mov qword [rax + 0x78], 0
mov qword [rax + 0x80], rsi
mov qword [rax + 0x88], 0
mov byte [rax + 0x90], 0
mov edx, dword [rsp + 0x140]
mov ecx, dword [rsp + 0x143]
mov dword [rax + 0x91], edx
mov dword [rax + 0x94], ecx
mov qword [rax + 0x98], 8
movdqa xmm0, xmmword [rsp + 0x440]
mov qword [rsp + 0x28], rax
movdqu xmmword [rax + 0xa0], xmm0
mov rdi, qword [rsp + 0x40]
mov rax, qword [rsp + 0x50]
mov qword [rsp + 0x50], 0
lea r14, [rdi + rax*8]
mov qword [rsp + 0x1b0], rax
mov qword [rsp + 0x1b8], 0
mov qword [rsp + 0x1c0], rdi
mov qword [rsp + 0x1c8], r14
lea rcx, [rsp + 0x40]
mov qword [rsp + 0x1d0], rcx
mov qword [rsp + 0x1d8], 0
test rax, rax
je 0x140163a1a
xor r13d, r13d
mov r12d, 8
xor ebx, ebx
jmp 0x140163920
mov qword [r12 + r13*8], rbp
mov r13, r15
cmp rdi, r14
je 0x140163a30
mov rsi, qword [rdi]
add rdi, 8
test rsi, rsi
je 0x140163a36
mov rax, qword [rsp + 0x28]
lock add qword [rax], 1
jle 0x14016369c
call sub.KERNEL32.dll_GetProcessHeap
mov r8d, 0x28
mov rcx, rax
xor edx, edx
call sub.KERNEL32.dll_HeapAlloc
test rax, rax
je 0x1401641b8
mov rbp, rax
lea r15, [r13 + 1]
movups xmmword [rax], xmm8
mov rax, qword [rsp + 0x28]
mov qword [rbp + 0x10], rax
mov qword [rbp + 0x18], r13
mov qword [rbp + 0x20], rsi
cmp r13, rbx
jne 0x140163910
mov rax, r13
add rax, r13
cmp rax, r15
cmovbe rax, r15
cmp rax, 4
mov ecx, 4
cmovbe rax, rcx
xor r8d, r8d
mov ecx, 8
mul rcx
setno r8b
shl r8, 3
test r13, r13
je 0x1401639d7
lea rcx, [r13*8]
mov qword [rsp + 0x440], r12
mov qword [rsp + 0x448], rcx
mov qword [rsp + 0x450], 8
jmp 0x1401639e3
mov qword [rsp + 0x440], 0
lea rcx, [rsp + 0x70]
mov rdx, rax
lea r9, [rsp + 0x440]
call fcn.14007daf0
mov r12, qword [rsp + 0x78]
mov rbx, qword [rsp + 0x80]
cmp qword [rsp + 0x70], 1
je 0x1401641da
shr rbx, 3
jmp 0x140163910
mov eax, 8
mov qword [rsp + 0x30], rax
xor r13d, r13d
xor eax, eax
mov qword [rsp + 0x60], rax
jmp 0x140163a50
mov rdi, r14
mov r13, r15
mov qword [rsp + 0x30], r12
mov qword [rsp + 0x60], rbx
mov qword [rsp + 0x1c0], rdi
mov qword [rsp + 0x1d8], r13
mov rdi, qword [rsp + 0x28]
lea rcx, [rsp + 0x1b0]
call fcn.1401586a0
lea rcx, [rsp + 0x40]
call fcn.140155600
mov rax, qword [rsp + 0x48]
shl rax, 3
test rax, rax
mov rsi, qword [rsp + 0x110]
je 0x140163a99
mov rbp, qword [rsp + 0x40]
call sub.KERNEL32.dll_GetProcessHeap
mov rcx, rax
xor edx, edx
mov r8, rbp
call fcn.14021dfcd
mov rax, qword [rsp + 0xd0]
lock sub qword [rax], 1
jne 0x140163ab5
lea rcx, [rsp + 0xd0]
call fcn.14015d430
lock add qword [rdi], 1
jle 0x14016369c
mov rcx, qword [rsp + 0xf0]
mov rdx, qword [rsp + 0x98]
add rdx, qword [rcx + 0x10]
call fcn.1401582c0
lock add qword [rax], 1
jle 0x14016369c
lock add qword [rdi], 1
mov rcx, qword [rsp + 0x100]
jle 0x14016369c
mov r15, rax
mov rbp, rdx
cmp rsi, 0xffffffffffffffff
je 0x140163b0c
test rsi, rsi
jne 0x140163b15
xor eax, eax
jmp 0x140163b24
mov rax, 0xffffffffffffffff
jmp 0x140163b24
lock add qword [rsi + 8], 1
mov rax, rsi
jle 0x14016369c
test rcx, rcx
je 0x140163b34
lock add qword [rcx], 1
jle 0x14016369c
lock add qword [r15], 1
jle 0x14016369c
mov qword [rsp + 0x1b0], 1
mov qword [rsp + 0x1b8], rdi
mov qword [rsp + 0x1c0], rax
mov rax, qword [rsp + 0x108]
mov qword [rsp + 0x1c8], rax
mov eax, dword [rsp + 0x94]
mov dword [rsp + 0x1d0], eax
mov qword [rsp + 0x1d8], rcx
mov qword [rsp + 0x1e0], r15
mov eax, dword [0x1402cf4c0]
mov rcx, qword gs:[0x58]
mov rax, qword [rcx + rax*8]
cmp dword [rax + 0x100], 1
jne 0x140163bae
lea rax, [rax + 0x108]
jmp 0x140163bbc
call fcn.14015fe30
test rax, rax
je 0x140164119
lea rcx, [rsp + 0x1d0]
movups xmm0, xmmword [rsp + 0x1b0]
movdqu xmm1, xmmword [rsp + 0x1c0]
mov rdx, qword [rcx + 0x10]
mov qword [rsp + 0x80], rdx
movups xmm2, xmmword [rcx]
movaps xmmword [rsp + 0x70], xmm2
cmp qword [rax], 0
jne 0x140164251
movdqu xmm6, xmmword [rax + 8]
movups xmm8, xmmword [rax + 0x18]
movups xmmword [rax + 8], xmm0
movdqu xmmword [rax + 0x18], xmm1
mov rcx, qword [rax + 0x38]
mov qword [rsp + 0x450], rcx
movups xmm0, xmmword [rax + 0x28]
movaps xmmword [rsp + 0x440], xmm0
movaps xmm0, xmmword [rsp + 0x70]
movups xmmword [rax + 0x28], xmm0
mov rcx, qword [rsp + 0x80]
mov qword [rax + 0x38], rcx
movdqa xmm0, xmmword [rsp + 0x440]
movdqa xmmword [rsp + 0x40], xmm0
mov rcx, qword [rsp + 0x450]
mov qword [rsp + 0x50], rcx
mov qword [rax], 0
movq rax, xmm6
cmp rax, 3
je 0x14016413f
mov qword [rsp + 0x68], rbp
mov rax, qword [rsp + 0x50]
mov qword [rsp + 0x80], rax
movaps xmm0, xmmword [rsp + 0x40]
movaps xmmword [rsp + 0x70], xmm0
test r13, r13
je 0x140163ee1
lea rbx, [rsp + 0x448]
lea r12, [rsp + 0x468]
mov rax, qword [rsp + 0x30]
lea rdi, [rax + 8]
lea rbp, [r13*8]
xorps xmm7, xmm7
jmp 0x140163cbe
add rdi, 8
add rbp, 0xfffffffffffffff8
je 0x140163f9a
mov rsi, qword [rdi - 8]
test rsi, rsi
je 0x140163ef7
lea rcx, [rsp + 0x1b0]
call fcn.1401667e0
cmp dword [rsp + 0x1b0], 2
je 0x14016419e
mov rax, qword [rsp + 0x1e0]
mov qword [rsp + 0x470], rax
movups xmm0, xmmword [rsp + 0x1b0]
movups xmm1, xmmword [rsp + 0x1c0]
movups xmm2, xmmword [rsp + 0x1d0]
movaps xmmword [rsp + 0x460], xmm2
movaps xmmword [rsp + 0x450], xmm1
movaps xmmword [rsp + 0x440], xmm0
call sub.KERNEL32.dll_GetProcessHeap
mov r8d, 0x78
mov rcx, rax
xor edx, edx
call sub.KERNEL32.dll_HeapAlloc
test rax, rax
je 0x1401641c9
mov r14, rax
mov qword [rax], 0x8c
movups xmmword [rax + 8], xmm7
movups xmmword [rax + 0x18], xmm7
lea rax, [0x140277380]
mov qword [r14 + 0x28], rax
mov qword [r14 + 0x30], 0
mov qword [r14 + 0x38], rsi
movups xmm0, xmmword [rsp + 0x1b0]
movdqu xmm1, xmmword [rsp + 0x1c0]
movups xmmword [r14 + 0x40], xmm0
movdqu xmmword [r14 + 0x50], xmm1
mov byte [r14 + 0x60], 0
mov eax, dword [rsp + 0xb0]
mov ecx, dword [rsp + 0xb3]
mov dword [r14 + 0x61], eax
mov dword [r14 + 0x64], ecx
mov qword [r14 + 0x70], 0
mov rcx, qword [rsp + 0x470]
mov rdx, r14
lea r8, [rsp + 0x440]
call fcn.140157580
mov rcx, qword [rsp + 0x440]
mov rdx, qword [rsp + 0x448]
mov rax, 0xffffffffffffffff
lock xadd qword [rdx], rax
test rcx, rcx
je 0x140163e00
cmp rax, 1
jne 0x140163e10
mov rcx, rbx
call fcn.14015d1a0
jmp 0x140163e10
cmp rax, 1
jne 0x140163e10
mov rcx, rbx
call fcn.1400a4f70
nop
mov rax, qword [rsp + 0x450]
lea rcx, [rax + 1]
cmp rcx, 2
jae 0x140163eb0
mov rax, qword [rsp + 0x468]
test rax, rax
je 0x140163e42
lock sub qword [rax], 1
jne 0x140163e42
mov rcx, r12
call fcn.140004c80
mov rax, qword [rsp + 0x470]
lock sub qword [rax], 1
je 0x140163e70
mov eax, 0x8c
mov ecx, 0x44
lock cmpxchg qword [r14], rcx
je 0x140163cb0
jmp 0x140163e92
lea rcx, [rsp + 0x470]
call fcn.140160090
mov eax, 0x8c
mov ecx, 0x44
lock cmpxchg qword [r14], rcx
je 0x140163cb0
mov rax, qword [r14 + 0x28]
mov rcx, r14
call qword [rax + 0x18]
jmp 0x140163cb0
lock sub qword [rax + 8], 1
jne 0x140163e26
mov rsi, r12
mov r12, qword [rsp + 0x450]
call sub.KERNEL32.dll_GetProcessHeap
mov rcx, rax
xor edx, edx
mov r8, r12
mov r12, rsi
call fcn.14021dfcd
jmp 0x140163e26
mov rax, qword [rsp + 0x30]
mov rdi, rax
lea rbp, [rax + r13*8]
cmp rdi, rbp
jne 0x140163f09
jmp 0x140163f9a
mov rax, qword [rsp + 0x30]
lea rbp, [rax + r13*8]
cmp rdi, rbp
je 0x140163f9a
lea r14, [rsp + 0x1b0]
jmp 0x140163f25
cmp rbp, rdi
je 0x140163f9a
mov rax, qword [rdi]
test rax, rax
je 0x140163f4a
add rdi, 8
mov qword [rsp + 0x1b0], rax
lock sub qword [rax], 1
jne 0x140163f20
mov rcx, r14
call fcn.14015cb10
jmp 0x140163f20
lea rax, [rbp - 8]
cmp rax, rdi
je 0x140163f9a
add rdi, 8
lea r14, [rsp + 0x1b0]
jmp 0x140163f75
cmp rbp, rdi
je 0x140163f9a
mov rax, qword [rdi]
test rax, rax
je 0x140163f9a
add rdi, 8
mov qword [rsp + 0x1b0], rax
lock sub qword [rax], 1
jne 0x140163f70
mov rcx, r14
call fcn.14015cb10
jmp 0x140163f70
mov rax, qword [rsp + 0x60]
shl rax, 3
test rax, rax
je 0x140163fbc
call sub.KERNEL32.dll_GetProcessHeap
mov rcx, rax
xor edx, edx
mov r8, qword [rsp + 0x30]
call fcn.14021dfcd
mov rax, qword [rsp + 0x180]
mov rcx, qword [rsp + 0x28]
mov qword [rax + 0x10], rcx
mov qword [rax + 0x2d0], 1
mov qword [rax + 0x2d8], rcx
mov rcx, qword [rsp + 0x110]
mov qword [rax + 0x2e0], rcx
mov rcx, qword [rsp + 0x108]
mov qword [rax + 0x2e8], rcx
mov ecx, dword [rsp + 0x94]
mov dword [rax + 0x2f0], ecx
mov ecx, dword [rsp + 0xfc]
mov dword [rax + 0x2f4], ecx
mov rcx, qword [rsp + 0x100]
mov qword [rax + 0x2f8], rcx
mov qword [rax + 0x300], r15
mov qword [rax + 0x308], r15
mov rcx, qword [rsp + 0x68]
mov qword [rax + 0x310], rcx
movdqa xmm0, xmmword [0x140220780]
movdqu xmmword [rax], xmm0
mov eax, dword [0x1402cf4c0]
mov rcx, qword gs:[0x58]
mov rax, qword [rcx + rax*8]
cmp dword [rax + 0x100], 1
jne 0x140164071
lea rsi, [rax + 0x108]
jmp 0x140164082
call fcn.14015fe30
mov rsi, rax
test rax, rax
je 0x14016413f
mov rax, qword [rsp + 0x80]
mov qword [rsp + 0x50], rax
movaps xmm0, xmmword [rsp + 0x70]
movaps xmmword [rsp + 0x40], xmm0
cmp qword [rsi], 0
jne 0x140164248
mov qword [rsi], 0xffffffffffffffff
cmp dword [rsi + 8], 2
jne 0x1401640b4
xor eax, eax
jmp 0x1401640c4
lea rcx, [rsi + 8]
call fcn.14015ff40
mov rax, qword [rsi]
add rax, 1
movdqu xmmword [rsi + 8], xmm6
movups xmmword [rsi + 0x18], xmm8
movaps xmm0, xmmword [rsp + 0x40]
movups xmmword [rsi + 0x28], xmm0
mov rcx, qword [rsp + 0x50]
mov qword [rsi + 0x38], rcx
mov qword [rsi], rax
movaps xmm6, xmmword [rsp + 0x840]
movaps xmm7, xmmword [rsp + 0x850]
movaps xmm8, xmmword [rsp + 0x860]
movaps xmm9, xmmword [rsp + 0x870]
add rsp, 0x888
pop rbx
pop rbp
pop rdi
pop rsi
pop r12
pop r13
pop r14
pop r15
ret
lea rcx, [rsp + 0x1b0]
call fcn.14015ff40
mov eax, 3
movq xmm6, rax
movq rax, xmm6
cmp rax, 3
jne 0x140163c65
lea rax, [0x140276d38]
mov qword [rsp + 0x20], rax
lea rcx, str.cannot_access_a_Thread_Local_Storage_value_during_or_after_destructionC:Usersdarkarp.rustup_toolchains_stable_x86_64_pc_windows_msvclib_rustlib_src_rustlibrary_std_src_threadlocal.rs
lea r9, [0x140276da8]
lea r8, [rsp + 0x440]
mov edx, 0x46
call fcn.140022590
ud2
mov ecx, 0x38
mov edx, 8
call fcn.1400182a0
ud2
test rdx, rdx
je 0x1401641df
call fcn.1400182a0
ud2
test rax, rax
je 0x1401641df
mov rcx, qword [rsp + 0x38]
mov rdx, rax
call fcn.1400182a0
ud2
lea rcx, str.there_is_no_reactor_running__must_be_called_from_the_context_of_a_Tokio_1.x_runtime
lea r8, str.C:Usersdarkarp.cargo_registry_srcgithub.com_1ecc6299db9ec823_tokio_1.4.0_src_runtime_blockingpool.rs
mov edx, 0x53
call fcn.140022520
ud2
mov ecx, 0x28
mov edx, 8
call fcn.1400182a0
ud2
mov ecx, 0x78
mov edx, 8
call fcn.1400182a0
ud2
test rbx, rbx
jne 0x1401641e6
call fcn.1400182c0
ud2
mov rdx, rbx
mov rcx, r12
call fcn.1400182a0
ud2
mov ecx, 0x400
mov edx, 8
call fcn.1400182a0
ud2
mov ecx, 0x18
mov edx, 8
call fcn.1400182a0
ud2
mov ecx, 0x58
mov edx, 8
call fcn.1400182a0
ud2
mov ecx, 0x270
mov edx, 8
call fcn.1400182a0
ud2
mov ecx, 0xb0
mov edx, 8
call fcn.1400182a0
ud2
lea rax, [0x140277c48]
jmp 0x140164258
lea rax, [0x1402777a8]
mov qword [rsp + 0x20], rax
lea rcx, [0x140278d74]
lea r9, [0x140276dc8]
lea r8, [rsp + 0x440]
mov edx, reloc.WS2_32.dll_recv
call fcn.140022590
ud2