Function at 0x47ecc5
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, 0x408
movaps xmmword [rsp + 0x3f0], xmm6
mov rsi, rdx
mov r14, rcx
cmp byte [rdx + 0xbc], 0
je 0x47ed04
cmp qword [rsi], 0
je 0x47ee14
mov rbp, qword [rsi + 8]
mov al, 1
jmp 0x47ef7c
movzx eax, word [rsi + 0xbd]
mov cl, byte [rsi + 0xbf]
mov r8, qword [rsi + 0x48]
lea rdx, [rsp + 0x28]
mov word [rdx + 8], ax
mov byte [rdx + 0xa], 1
mov byte [rdx + 0xb], cl
mov qword [rdx], r8
lea rdi, [rsp + 0x140]
mov rcx, rdi
call fcn.004803ed
mov r15, qword [rdi]
cmp r15, 2
je 0x47efbf
lea rdx, [rsp + 0x150]
mov rbp, qword [rdx - 8]
lea rdi, [rsp + 0x310]
mov r8d, 0xe0
mov rcx, rdi
call sub.ntdll.dll_memcpy
movups xmm0, xmmword [rdi]
movups xmm1, xmmword [rdi + 0x10]
movups xmm2, xmmword [rdi + 0x20]
movaps xmmword [rsp + 0xe0], xmm0
movaps xmmword [rsp + 0xf0], xmm1
movaps xmmword [rsp + 0x100], xmm2
lea rdx, [rsp + 0x340]
lea rcx, [rsp + 0x248]
mov r8d, 0xb0
call sub.ntdll.dll_memcpy
mov rdx, qword [rsi + 0x50]
mov rcx, rsi
call fcn.00480978
lock inc qword [rax]
jle 0x480106
mov rdi, rax
mov r12, rdx
lea rbx, [rsi + 0xa0]
mov rcx, rbx
call fcn.00477d5f
mov dword [rsp + 0x40], eax
mov dword [rsp + 0x48], edx
mov rcx, rbx
call fcn.00477d5f
mov r13, qword [rsi + 0x78]
test r13, r13
mov qword [rsp + 0xb8], r12
je 0x47f63b
lock inc qword [r13]
jle 0x480106
mov rcx, qword [rsi + 0x80]
mov qword [rsp + 0x128], rcx
jmp 0x47f63b
lea rdx, [0x00495e3b]
lea rdi, [rsp + 0x140]
mov r8d, 0x14
mov rcx, rdi
call fcn.00469250
mov al, byte [rdi + 0x18]
cmp al, 2
jne 0x47ee64
xorps xmm0, xmm0
lea rdi, [rsp + 0x140]
movaps xmmword [rdi + 0x20], xmm0
movaps xmmword [rdi + 0x10], xmm0
movaps xmmword [rdi], xmm0
mov rcx, rdi
call sub.KERNEL32.dll_GetSystemInfo
mov ebp, dword [rdi + 0x20]
cmp ebp, 1
adc ebp, 0
jmp 0x47ef76
mov rbx, qword [rsp + 0x140]
mov r15, qword [rsp + 0x148]
mov r8, qword [rsp + 0x150]
test al, al
jne 0x47ef14
test r8, r8
je 0x47ef14
lea rax, [rsp + 0x159]
lea rcx, [rbx + r8]
mov r9, rbx
lea rdx, [r9 + 1]
mov r10b, byte [r9]
test r10b, r10b
jns 0x47ef0c
cmp r10b, 0xe0
jae 0x47eebb
add r9, 2
cmp rdx, rcx
cmovne rdx, r9
jmp 0x47ef0c
cmp r10b, 0xed
jne 0x47eee3
cmp rdx, rcx
je 0x47ef14
lea rdx, [r9 + 2]
cmp rdx, rcx
je 0x47ef14
cmp byte [r9 + 1], 0x9f
ja 0x48034c
add r9, 3
mov rdx, r9
jmp 0x47ef0c
add r9, 2
cmp rdx, rcx
cmove r9, rdx
xor edx, edx
cmp r9, rcx
setne dl
add rdx, r9
cmp r10b, 0xf0
jb 0x47ef0c
xor r9d, r9d
cmp rdx, rcx
setne r9b
add rdx, r9
mov r9, rdx
cmp rdx, rcx
jne 0x47ee9c
mov r12, r14
mov qword [rsp + 0x248], rbx
mov qword [rsp + 0x250], r15
mov qword [rsp + 0x258], r8
lea r14, [rsp + 0xe0]
mov rcx, r14
mov rdx, rbx
call fcn.00430850
cmp byte [r14], 0
jne 0x48025c
mov rbp, qword [rsp + 0xe8]
test rbp, rbp
je 0x4802f5
test r15, r15
mov r14, r12
je 0x47ef76
mov rcx, qword [0x004a30e8]
xor edx, edx
mov r8, rbx
call sub.KERNEL32.dll_HeapFree
mov al, byte [rsi + 0xbc]
movzx ecx, word [rsi + 0xbd]
mov r8b, byte [rsi + 0xbf]
mov r9, qword [rsi + 0x48]
lea rdx, [rsp + 0x248]
mov word [rdx + 8], cx
xor al, 1
mov byte [rdx + 0xa], al
mov byte [rdx + 0xb], r8b
mov qword [rdx], r9
lea rdi, [rsp + 0x140]
mov rcx, rdi
call fcn.004803ed
mov r15, qword [rdi]
cmp r15, 2
jne 0x47efd7
mov rax, qword [rsp + 0x148]
mov qword [r14 + 8], rax
mov qword [r14], 2
jmp 0x4800ea
mov qword [rsp + 0xc0], r14
lea rdx, [rsp + 0x150]
mov r12, qword [rdx - 8]
lea rdi, [rsp + 0x310]
mov r8d, 0xe0
mov rcx, rdi
call sub.ntdll.dll_memcpy
movups xmm0, xmmword [rdi]
movups xmm1, xmmword [rdi + 0x10]
movups xmm2, xmmword [rdi + 0x20]
movaps xmmword [rsp + 0xe0], xmm0
movaps xmmword [rsp + 0xf0], xmm1
movaps xmmword [rsp + 0x100], xmm2
lea rdx, [rsp + 0x340]
lea rcx, [rsp + 0x140]
mov r8d, 0xb0
call sub.ntdll.dll_memcpy
mov rdx, qword [rsi + 0x50]
add rdx, rbp
mov rcx, rsi
call fcn.00480978
mov qword [rsp + 0xa0], rdx
mov qword [rsp + 0x80], rax
lock inc qword [rax]
jle 0x480106
lea r14, [rsi + 0xa0]
mov rcx, r14
call fcn.00477d5f
mov edi, eax
mov ebx, edx
mov rcx, r14
call fcn.00477d5f
mov r14d, eax
mov r13d, edx
mov rax, qword [rsi + 0x78]
test rax, rax
je 0x47f0a5
lock inc qword [rax]
jle 0x480106
mov rcx, qword [rsi + 0x80]
jmp 0x47f0a5
mov rdx, qword [rsi + 0x88]
test rdx, rdx
je 0x47f0c4
lock inc qword [rdx]
jle 0x480106
mov r8, qword [rsi + 0x90]
jmp 0x47f0c4
mov r9d, dword [rsi + 0xb8]
mov r10, qword [rsi + 0x20]
mov r11, qword [rsi + 0x98]
movzx esi, word [rsi + 0xc0]
mov qword [rsp + 0x248], r10
mov dword [rsp + 0x290], r9d
mov qword [rsp + 0x250], r11
mov qword [rsp + 0x258], rax
mov qword [rsp + 0x260], rcx
mov qword [rsp + 0x268], rdx
mov qword [rsp + 0x270], r8
mov word [rsp + 0x294], si
mov qword [rsp + 0x278], 0
mov byte [rsp + 0x280], 0
mov dword [rsp + 0x284], edi
mov dword [rsp + 0x288], ebx
mov al, byte [0x004a3150]
mov ecx, 0x58
mov edx, 8
call fcn.004279a0
test rax, rax
je 0x4801e8
mov rsi, rax
mov edi, 1
mov qword [rax], rdi
mov qword [rax + 8], rdi
mov qword [rax + 0x10], r15
mov qword [rax + 0x18], r12
movaps xmm0, xmmword [rsp + 0xe0]
movaps xmm1, xmmword [rsp + 0xf0]
movaps xmm2, xmmword [rsp + 0x100]
movups xmmword [rax + 0x20], xmm0
movups xmmword [rax + 0x30], xmm1
movups xmmword [rax + 0x40], xmm2
mov byte [rax + 0x50], 0
mov al, byte [0x004a3150]
mov ecx, 0x30
mov edx, 8
call fcn.004279a0
test rax, rax
je 0x480116
mov rbx, rax
mov qword [rax], rdi
mov qword [rax + 8], rdi
mov qword [rax + 0x10], rsi
xorps xmm0, xmm0
movups xmmword [rax + 0x18], xmm0
mov byte [rax + 0x28], 0
mov qword [rsp + 0x118], rax
test rbp, rbp
mov qword [rsp + 0x58], rbp
mov qword [rsp + 0xa8], rax
mov dword [rsp + 0xb8], r14d
mov dword [rsp + 0xb0], r13d
je 0x47f240
mov rax, rbp
shr rax, 0x3c
jne 0x4801e1
lea rcx, [rbp*8]
test rcx, rcx
mov qword [rsp + 0x50], rcx
je 0x47f282
mov al, byte [0x004a3150]
mov edx, 8
call fcn.004279a0
test rax, rax
jne 0x47f287
mov ecx, 8
mov rdx, qword [rsp + 0x50]
jmp 0x480144
mov r12d, 8
mov qword [rsp + 0x88], r12
movups xmmword [rsp + 0x90], xmm0
mov qword [rsp + 0xc8], r12
movups xmmword [rsp + 0xd0], xmm0
movaps xmmword [rsp + 0x60], xmm0
mov byte [rsp + 0x70], 0
xor edx, edx
xor edi, edi
xor r13d, r13d
mov r14d, 8
jmp 0x47f858
mov eax, 8
mov qword [rsp + 0x88], rax
mov qword [rsp + 0x90], rbp
mov qword [rsp + 0x98], 0
mov rax, rbp
shr rax, 0x3b
jne 0x4801e1
mov rsi, rbp
shl rsi, 4
mov al, byte [0x004a3150]
mov edx, 8
mov rcx, rsi
call fcn.004279a0
test rax, rax
je 0x47f9b3
lea rcx, [rsp + 0xc8]
mov qword [rcx], rax
mov qword [rcx + 8], rbp
mov qword [rcx + 0x10], 0
lea rdi, [rsp + 0x28]
mov r15d, 1
xorps xmm6, xmm6
xor ecx, ecx
mov qword [rsp + 0x20], rcx
mov al, byte [0x004a3150]
mov ecx, 0x800
mov edx, 8
call fcn.004279a0
test rax, rax
je 0x480122
mov qword [rsp + 0x28], rax
mov qword [rsp + 0x30], 0x100
mov qword [rsp + 0x38], 0
mov esi, 0x100
xor ebx, ebx
cmp rbx, qword [rsp + 0x30]
jne 0x47f352
mov rcx, rdi
mov rdx, rbx
call fcn.00434e84
mov rbx, qword [rsp + 0x38]
inc rbx
mov qword [rsp + 0x38], rbx
dec rsi
jne 0x47f33b
mov r14, qword [rsp + 0x28]
cmp qword [rsp + 0x30], rbx
jbe 0x47f39c
test rbx, rbx
je 0x4801a2
lea rsi, [rbx*8]
mov rcx, qword [0x004a30e8]
xor edx, edx
mov r8, r14
mov r9, rsi
call sub.KERNEL32.dll_HeapReAlloc
mov r14, rax
test rax, rax
je 0x47f9b3
mov qword [rsp + 0x60], rbx
cmp rbx, 0x100
jne 0x4801b8
mov al, byte [0x004a3150]
mov ecx, 0x28
mov edx, 8
call fcn.004279a0
test rax, rax
je 0x48010a
mov rbx, rax
mov qword [rax], r15
mov qword [rax + 8], r15
mov qword [rax + 0x10], r14
mov qword [rax + 0x18], 0
mov dword [rax + 0x20], 0
lock inc qword [rax]
jle 0x480106
mov rax, qword [rsp + 0x118]
mov rsi, qword [rax + 0x10]
lock inc qword [rsi]
jle 0x480106
mov al, byte [0x004a3150]
mov ecx, 0x30
mov edx, 8
call fcn.004279a0
test rax, rax
je 0x480116
mov r12, rax
mov qword [rax], r15
mov qword [rax + 8], r15
mov qword [rax + 0x10], rsi
movups xmmword [rax + 0x18], xmm6
mov byte [rax + 0x28], 0
lock inc qword [rax]
jle 0x480106
call fcn.0044cfb0
mov qword [rsp + 0x40], rax
mov dword [rsp + 0x48], edx
mov bpl, byte [rsp + 0x294]
mov r13d, dword [rsp + 0x248]
mov esi, dword [rsp + 0x24c]
lea rcx, [rsp + 0x278]
call fcn.00477d5f
mov r15d, eax
mov edi, edx
mov al, byte [0x004a3150]
mov ecx, 0x50
mov edx, 8
call fcn.004279a0
test rax, rax
je 0x48012e
mov r14, rax
xor bpl, 1
test r13d, r13d
mov eax, 0x3d
cmove esi, eax
mov eax, 0
mov qword [r14], rax
mov qword [r14 + 8], r12
mov dword [r14 + 0x10], r15d
mov dword [r14 + 0x14], edi
mov qword [r14 + 0x18], rbx
mov qword [r14 + 0x20], rax
movabs rax, 0x40a99d60864b8a7e
mov qword [r14 + 0x28], rax
mov rax, qword [rsp + 0x40]
mov qword [r14 + 0x30], rax
mov eax, dword [rsp + 0x48]
mov dword [r14 + 0x38], eax
mov dword [r14 + 0x40], 0
mov dword [r14 + 0x44], esi
mov byte [r14 + 0x48], bpl
mov word [r14 + 0x49], 0
mov byte [r14 + 0x4b], 0
mov rdx, qword [rsp + 0x98]
cmp rdx, qword [rsp + 0x90]
jne 0x47f52c
lea rcx, [rsp + 0x88]
call fcn.00434e84
mov rdx, qword [rsp + 0x98]
mov rbp, qword [rsp + 0x58]
lea rdi, [rsp + 0x28]
mov r15d, 1
mov rax, qword [rsp + 0x88]
mov qword [rax + rdx*8], r14
inc qword [rsp + 0x98]
mov r13, qword [rsp + 0xd8]
cmp r13, qword [rsp + 0xd0]
jne 0x47f57a
lea rcx, [rsp + 0xc8]
mov rdx, r13
call fcn.00478df8
mov r13, qword [rsp + 0xd8]
mov rcx, qword [rsp + 0x20]
inc rcx
mov r14, qword [rsp + 0xc8]
mov rax, r13
shl rax, 4
mov qword [r14 + rax], rbx
mov qword [r14 + rax + 8], r12
inc r13
mov qword [rsp + 0xd8], r13
cmp rcx, rbp
jne 0x47f2fa
mov rsi, qword [rsp + 0x50]
test rsi, rsi
je 0x47f5d8
mov al, byte [0x004a3150]
mov edx, 8
mov rcx, rsi
call fcn.004279a0
mov r12, rax
test rax, rax
jne 0x47f5de
jmp 0x47f9b3
mov r12d, 8
mov rdi, rbp
shl rdi, 0x10
mov rax, qword [rsp + 0xd0]
xorps xmm0, xmm0
movaps xmmword [rsp + 0x60], xmm0
mov byte [rsp + 0x70], 0
cmp rax, r13
jbe 0x47f855
test r13, r13
je 0x47f83e
mov rsi, r13
shl rsi, 4
mov rcx, qword [0x004a30e8]
xor edx, edx
mov r8, r14
mov r9, rsi
call sub.KERNEL32.dll_HeapReAlloc
mov r14, rax
mov rdx, rbp
test rax, rax
jne 0x47f858
jmp 0x47f9b3
mov r12, qword [rsi + 0x88]
test r12, r12
mov qword [rsp + 0x130], rbp
mov dword [rsp + 0x58], eax
mov dword [rsp + 0x80], edx
je 0x47f676
lock inc qword [r12]
jle 0x480106
mov rax, qword [rsi + 0x90]
mov qword [rsp + 0x120], rax
jmp 0x47f676
mov qword [rsp + 0xb0], rdi
mov qword [rsp + 0xc0], r14
mov eax, dword [rsi + 0x20]
mov dword [rsp + 0x20], eax
mov ebp, dword [rsi + 0x24]
mov eax, dword [rsi + 0xb8]
mov dword [rsp + 0xa8], eax
mov rax, qword [rsi + 0x98]
mov qword [rsp + 0x138], rax
mov al, byte [rsi + 0xc0]
mov byte [rsp + 0xa0], al
mov al, byte [rsi + 0xc1]
mov byte [rsp + 0x50], al
xorps xmm6, xmm6
movups xmmword [rsp + 0x147], xmm6
mov byte [rsp + 0x157], 0
movups xmm0, xmmword [rsp + 0x140]
movaps xmmword [rsp + 0x310], xmm0
mov rax, qword [rsp + 0x14f]
mov qword [rsp + 0x31f], rax
mov al, byte [rsp + 0x157]
mov byte [rsp + 0x327], al
mov eax, dword [rsp + 0x158]
mov dword [rsp + 0x328], eax
movzx eax, word [rsp + 0x15c]
mov word [rsp + 0x32c], ax
mov al, byte [rsp + 0x15e]
mov byte [rsp + 0x32e], al
mov al, byte [0x004a3150]
mov ecx, 0x60
mov edx, 8
call fcn.004279a0
test rax, rax
je 0x480220
lea rbx, [rsp + 0x140]
mov qword [rbx], rax
mov qword [rbx + 8], 4
mov qword [rbx + 0x10], 0
mov r14d, 4
lea rdi, [rsp + 0x2f]
xor esi, esi
movups xmmword [rdi], xmm6
mov rcx, qword [rsp + 0x37]
mov qword [rsp + 0x6f], rcx
movups xmm0, xmmword [rsp + 0x28]
movaps xmmword [rsp + 0x60], xmm0
cmp rsi, qword [rsp + 0x148]
jne 0x47f7b2
mov rcx, rbx
mov rdx, rsi
call fcn.00478518
mov rax, qword [rsp + 0x140]
mov rsi, qword [rsp + 0x150]
lea rcx, [rsi + rsi*2]
mov byte [rax + rcx*8], 0
movaps xmm0, xmmword [rsp + 0x60]
movups xmmword [rax + rcx*8 + 1], xmm0
mov rdx, qword [rsp + 0x6f]
mov qword [rax + rcx*8 + 0x10], rdx
mov rsi, qword [rsp + 0x150]
inc rsi
mov qword [rsp + 0x150], rsi
dec r14
jne 0x47f776
mov r14, qword [rsp + 0x140]
cmp qword [rsp + 0x148], rsi
jbe 0x47fe88
test rsi, rsi
je 0x47fe71
lea rax, [rsi*8]
lea rbx, [rax + rax*2]
mov rcx, qword [0x004a30e8]
xor edx, edx
mov r8, r14
mov r9, rbx
call sub.KERNEL32.dll_HeapReAlloc
mov r14, rax
test rax, rax
jne 0x47fe88
mov ecx, 8
mov rdx, rbx
jmp 0x480144
mov rcx, qword [0x004a30e8]
xor edx, edx
mov r8, r14
call sub.KERNEL32.dll_HeapFree
mov r14d, 8
mov rdx, rbp
lea rax, [rbp - 1]
bsr rcx, rax
not ecx
mov rax, 0xffffffffffffffff
shr rax, cl
lea rax, [rax*4 + 4]
mov ecx, 0x10000
cmp rax, rcx
cmovb rcx, rax
cmp rbp, 2
mov ebp, 4
cmovae rbp, rcx
lea eax, [rbp - 1]
test ebp, eax
sete al
test rbp, rbp
setne cl
test cl, al
je 0x4801f7
mov qword [rsp + 0x40], rdx
test rbp, rbp
mov qword [rsp + 0x20], rdi
mov qword [rsp + 0x48], rbp
je 0x47f9c0
lea rax, [rbp*8]
lea rsi, [rax + rax*2]
mov al, byte [0x004a3150]
mov edx, 8
mov rcx, rsi
call fcn.004279a0
test rax, rax
je 0x47f9b3
lea rsi, [rsp + 0x28]
mov qword [rsi], rax
mov qword [rsi + 8], rbp
mov qword [rsi + 0x10], 0
lea rdi, [rsp + 0x300]
xor ebx, ebx
xorps xmm6, xmm6
mov r15, rbp
movups xmmword [rdi], xmm6
mov rcx, qword [rsp + 0x308]
mov qword [rsp + 0x23f], rcx
movups xmm0, xmmword [rsp + 0x2f9]
movaps xmmword [rsp + 0x230], xmm0
cmp rbx, qword [rsp + 0x30]
jne 0x47f946
mov rcx, rsi
mov rdx, rbx
call fcn.00478518
mov rax, qword [rsp + 0x28]
mov rbx, qword [rsp + 0x38]
lea rcx, [rbx + rbx*2]
mov byte [rax + rcx*8], 0
movaps xmm0, xmmword [rsp + 0x230]
movups xmmword [rax + rcx*8 + 1], xmm0
mov rdx, qword [rsp + 0x23f]
mov qword [rax + rcx*8 + 0x10], rdx
mov rbx, qword [rsp + 0x38]
inc rbx
mov qword [rsp + 0x38], rbx
dec r15
jne 0x47f907
mov r15, qword [rsp + 0x28]
cmp qword [rsp + 0x30], rbx
jbe 0x47f9f2
test rbx, rbx
je 0x47f9db
lea rax, [rbx*8]
lea rsi, [rax + rax*2]
mov rcx, qword [0x004a30e8]
xor edx, edx
mov r8, r15
mov r9, rsi
call sub.KERNEL32.dll_HeapReAlloc
mov r15, rax
test rax, rax
jne 0x47f9f2
mov ecx, 8
mov rdx, rsi
jmp 0x480144
mov qword [rsp + 0x28], 8
xorps xmm0, xmm0
movups xmmword [rsp + 0x30], xmm0
mov r15d, 8
xor ebx, ebx
jmp 0x47f9f2
mov rcx, qword [0x004a30e8]
xor edx, edx
mov r8, r15
call sub.KERNEL32.dll_HeapFree
mov r15d, 8
mov ebp, 1
lock xadd qword [0x004847c0], rbp
test rbp, rbp
je 0x47f9f2
mov qword [rsp + 0x50], r12
lea rdi, [rsp + 0x310]
lea rsi, [rsp + 0x248]
mov ecx, 0xa
rep movsq qword [rdi], qword [rsi]
mov al, byte [0x004a3150]
mov ecx, 0x1f0
mov edx, 8
call fcn.004279a0
test rax, rax
je 0x480211
mov r12d, 1
mov qword [rax], r12
mov qword [rax + 8], r12
lea rdi, [rax + 0x10]
lea rsi, [rsp + 0x310]
mov ecx, 0xa
rep movsq qword [rdi], qword [rsi]
mov qword [rax + 0x60], r14
mov qword [rax + 0x68], r13
mov qword [rax + 0x70], r15
mov r15, qword [rsp + 0x48]
dec r15
mov qword [rax + 0x78], rbx
xor esi, esi
mov qword [rax + 0x80], rsi
mov qword [rax + 0x88], r15
mov qword [rax + 0x90], rbp
mov byte [rax + 0x98], sil
mov qword [rax + 0xa0], r12
mov rcx, qword [rsp + 0x58]
mov qword [rax + 0xa8], rcx
mov qword [rax + 0xb0], rsi
mov rdx, qword [rsp + 0x20]
mov qword [rax + 0xb8], rdx
mov qword [rax + 0xc0], rcx
mov byte [rax + 0xc8], sil
mov rcx, qword [rsp + 0x50]
mov qword [rax + 0xd0], rcx
mov rcx, qword [rsp + 0x40]
mov qword [rax + 0xd8], rcx
mov qword [rax + 0xe0], rsi
movaps xmm0, xmmword [rsp + 0x60]
movups xmmword [rax + 0xe8], xmm0
mov rcx, qword [rsp + 0x70]
mov qword [rax + 0xf8], rcx
mov byte [rax + 0x100], sil
mov edi, 8
mov qword [rax + 0x108], rdi
xorps xmm6, xmm6
movups xmmword [rax + 0x110], xmm6
mov rcx, rax
add rcx, 0x120
lea rdx, [rsp + 0x140]
mov qword [rsp + 0x20], rax
mov r8d, 0xb0
call sub.ntdll.dll_memcpy
mov rcx, qword [rsp + 0x20]
mov rax, qword [rsp + 0x80]
mov qword [rcx + 0x1d0], rax
mov qword [rcx + 0x1d8], rsi
mov byte [rcx + 0x1e0], sil
mov eax, dword [rsp + 0xb8]
mov dword [rcx + 0x1e4], eax
mov eax, dword [rsp + 0xb0]
mov dword [rcx + 0x1e8], eax
movups xmmword [rsp + 0x30], xmm6
mov qword [rsp + 0x28], rdi
lea rax, [rsp + 0x88]
mov r13, qword [rax]
mov rbp, qword [rax + 0x10]
mov qword [rax + 0x10], rsi
lea rdx, [r13 + rbp*8]
lea r8, [rsp + 0x310]
mov qword [r8 + 8], rdx
mov qword [r8 + 0x10], rax
mov qword [r8 + 0x18], rbp
movups xmmword [r8 + 0x20], xmm6
test rbp, rbp
mov ebx, 8
je 0x47fc80
mov qword [rsp + 0x40], rdx
shl rbp, 3
mov r14d, 8
xor esi, esi
xor edi, edi
mov r15, qword [r13 + rdi*8]
lock inc qword [rcx]
jle 0x480106
mov al, byte [0x004a3150]
mov ecx, 0x28
mov edx, 8
call fcn.004279a0
test rax, rax
je 0x48010a
mov rbx, rax
mov qword [rax], r12
mov qword [rax + 8], r12
mov rcx, qword [rsp + 0x20]
mov qword [rax + 0x10], rcx
mov qword [rax + 0x18], rdi
mov qword [rax + 0x20], r15
cmp rsi, qword [rsp + 0x30]
jne 0x47fc44
lea rcx, [rsp + 0x28]
mov rdx, rsi
call fcn.00434e84
mov rcx, qword [rsp + 0x20]
mov r14, qword [rsp + 0x28]
mov rsi, qword [rsp + 0x38]
mov qword [r14 + rsi*8], rbx
mov rsi, qword [rsp + 0x38]
inc rsi
mov qword [rsp + 0x38], rsi
inc rdi
add rbp, 0xfffffffffffffff8
jne 0x47fbd9
mov qword [rsp + 0x338], rdi
mov rbx, qword [rsp + 0x28]
mov rax, qword [rsp + 0x30]
mov qword [rsp + 0x48], rax
mov r13, qword [rsp + 0x40]
jmp 0x47fc87
xor eax, eax
mov qword [rsp + 0x48], rax
lea rcx, [rsp + 0x310]
mov qword [rcx], r13
call fcn.004758e7
lea rcx, [rsp + 0x88]
call fcn.00472ad7
mov rax, qword [rsp + 0xa8]
lock dec qword [rax]
jne 0x47fcbf
lea rcx, [rsp + 0x118]
call fcn.00473642
lea rcx, [rsp + 0x248]
mov edx, 1
mov r8, qword [rsp + 0x20]
call fcn.00474408
test rsi, rsi
je 0x47fde7
shl rsi, 3
xorps xmm6, xmm6
lea rbp, [rsp + 0x60]
xor edi, edi
mov qword [rsp + 0x40], rbx
mov rbx, qword [rbx + rdi]
lea rcx, str._cargo_registry_src_index.crates.io_6f17d22bba15001f_tokio_1.35.1_src_runtime_scheduler_multi_thread_worker.rs
call fcn.004796b3
mov r13, rax
mov r12, rdx
mov qword [rsp + 0x60], rax
mov qword [rsp + 0x68], rdx
mov r15d, 1
lock xadd qword [0x004847b8], r15
mov al, byte [0x004a3150]
mov ecx, pe_nt_image_headers64
mov edx, pe_nt_image_headers64
call fcn.004279a0
test rax, rax
je 0x48013a
mov r14, rax
lea rax, [r12 + 0x1d0]
add r12, 0x170
test r13, r13
mov qword [r14], 0xcc
mov ecx, 0
mov qword [r14 + 8], rcx
lea rdx, [0x00497da0]
mov qword [r14 + 0x10], rdx
mov qword [r14 + 0x18], rcx
mov qword [r14 + 0x20], r15
mov qword [r14 + 0x28], 2
mov qword [r14 + 0x30], rbx
movups xmmword [r14 + 0x48], xmm6
mov qword [r14 + 0x58], rcx
cmovne r12, rax
mov rcx, qword [r12]
mov rdx, r14
mov r8b, 1
mov r9, rbp
call fcn.00479744
test rax, rax
je 0x47fdb0
test rdx, rdx
jne 0x48014b
mov rcx, rbp
call fcn.00472917
mov eax, 0xcc
mov ecx, 0x84
lock cmpxchg qword [r14], rcx
mov rbx, qword [rsp + 0x40]
je 0x47fdd8
mov rax, qword [r14 + 0x10]
mov rcx, r14
call qword [rax + 0x20]
add rdi, 8
cmp rsi, rdi
jne 0x47fcf2
jmp 0x47fe11
lea rdi, [rbx + rsi*8]
sub rdi, rbx
je 0x47fe11
shr rdi, 3
mov rsi, rbx
mov rax, qword [rsi]
lock dec qword [rax]
jne 0x47fe08
mov rcx, rsi
call fcn.004751a4
add rsi, 8
dec rdi
jne 0x47fdf7
cmp qword [rsp + 0x48], 0
je 0x47fe2a
mov rcx, qword [0x004a30e8]
xor edx, edx
mov r8, rbx
call sub.KERNEL32.dll_HeapFree
mov eax, 1
mov rcx, qword [rsp + 0xc0]
mov qword [rcx], rax
mov qword [rcx + 0x30], rax
mov rax, qword [rsp + 0x20]
mov qword [rcx + 0x38], rax
mov rax, qword [rsp + 0x80]
mov qword [rcx + 0x40], rax
mov rax, qword [rsp + 0xa0]
mov qword [rcx + 0x48], rax
lea rcx, [rsp + 0x248]
call fcn.00407b7e
jmp 0x4800ea
mov rcx, qword [0x004a30e8]
xor edx, edx
mov r8, r14
call sub.KERNEL32.dll_HeapFree
mov r14d, 8
mov edi, 1
lock xadd qword [0x004847c0], rdi
test rdi, rdi
je 0x47fe88
movups xmm0, xmmword [rsp + 0x31f]
movups xmmword [rsp + 0x14f], xmm0
movaps xmm0, xmmword [rsp + 0x310]
movaps xmmword [rsp + 0x140], xmm0
mov al, byte [0x004a3150]
mov ecx, 0x190
mov edx, 8
call fcn.004279a0
test rax, rax
je 0x48022f
mov rbx, rax
mov eax, 1
mov qword [rbx], rax
mov qword [rbx + 8], rax
mov eax, dword [rsp + 0x20]
mov dword [rbx + 0x10], eax
mov dword [rbx + 0x14], ebp
mov rax, qword [rsp + 0x138]
mov qword [rbx + 0x18], rax
mov qword [rbx + 0x20], r13
mov rax, qword [rsp + 0x128]
mov qword [rbx + 0x28], rax
mov qword [rbx + 0x30], r12
mov rax, qword [rsp + 0x120]
mov qword [rbx + 0x38], rax
xor r12d, r12d
mov qword [rbx + 0x40], r12
mov byte [rbx + 0x48], r12b
mov eax, dword [rsp + 0x40]
mov dword [rbx + 0x4c], eax
mov eax, dword [rsp + 0x48]
mov dword [rbx + 0x50], eax
mov eax, dword [rsp + 0xa8]
mov dword [rbx + 0x58], eax
mov al, byte [rsp + 0xa0]
mov byte [rbx + 0x5c], al
mov al, byte [rsp + 0x50]
mov byte [rbx + 0x5d], al
mov qword [rbx + 0x60], r14
mov qword [rbx + 0x68], rsi
mov qword [rbx + 0x70], r12
mov qword [rbx + 0x78], 3
mov qword [rbx + 0x80], rdi
mov byte [rbx + 0x88], r12b
mov byte [rbx + 0x90], r12b
movups xmm0, xmmword [rsp + 0x14f]
movups xmmword [rbx + 0xa0], xmm0
movaps xmm0, xmmword [rsp + 0x140]
movups xmmword [rbx + 0x91], xmm0
mov qword [rbx + 0xb0], r12
mov byte [rbx + 0xb8], r12b
mov rcx, rbx
add rcx, 0xc0
lea rdx, [rsp + 0x248]
mov r8d, 0xb0
call sub.ntdll.dll_memcpy
mov rdi, qword [rsp + 0xb0]
mov qword [rbx + 0x170], rdi
mov qword [rbx + 0x178], r12
mov byte [rbx + 0x180], r12b
mov eax, dword [rsp + 0x58]
mov dword [rbx + 0x184], eax
mov eax, dword [rsp + 0x80]
mov dword [rbx + 0x188], eax
mov al, byte [0x004a3150]
mov ecx, 0x200
mov edx, 8
call fcn.004279a0
test rax, rax
je 0x48023e
mov rsi, rax
mov al, byte [0x004a3150]
mov ecx, 0x70
mov edx, 8
call fcn.004279a0
test rax, rax
mov r8, qword [rsp + 0xc0]
mov r9, qword [rsp + 0xb8]
je 0x48024d
cmp dword [rsp + 0x20], 0
mov ecx, 0x1f
cmove ebp, ecx
mov qword [rax], r15
mov rcx, qword [rsp + 0x130]
mov qword [rax + 8], rcx
movaps xmm0, xmmword [rsp + 0xe0]
movaps xmm1, xmmword [rsp + 0xf0]
movaps xmm2, xmmword [rsp + 0x100]
movups xmmword [rax + 0x10], xmm0
movups xmmword [rax + 0x20], xmm1
movups xmmword [rax + 0x30], xmm2
mov qword [rax + 0x40], rsi
mov qword [rax + 0x48], 0x40
xorps xmm0, xmm0
movups xmmword [rax + 0x50], xmm0
mov dword [rax + 0x60], 0
mov dword [rax + 0x64], ebp
xor ecx, ecx
mov byte [rax + 0x68], cl
movups xmmword [rsp + 0x147], xmm0
mov rdx, qword [rsp + 0x14f]
mov qword [r8 + 0x20], rdx
movups xmm1, xmmword [rsp + 0x140]
movups xmmword [r8 + 0x11], xmm1
mov byte [r8 + 0x10], cl
movups xmmword [r8], xmm0
mov qword [r8 + 0x28], rax
mov qword [r8 + 0x30], 0
mov qword [r8 + 0x38], rbx
mov qword [r8 + 0x40], rdi
mov qword [r8 + 0x48], r9
movaps xmm6, xmmword [rsp + 0x3f0]
add rsp, 0x408
pop rbx
pop rbp
pop rdi
pop rsi
pop r12
pop r13
pop r14
pop r15
ret
ud2
mov ecx, 8
mov edx, 0x28
jmp 0x480144
mov ecx, 8
mov edx, 0x30
jmp 0x480144
mov ecx, 8
mov edx, 0x800
jmp 0x480144
mov ecx, 8
mov edx, 0x50
jmp 0x480144
mov ecx, pe_nt_image_headers64
mov edx, pe_nt_image_headers64
call fcn.00429330
ud2
lea rax, [rsp + 0xc8]
mov qword [rax], rdx
lea rdx, [rsp + 0x28]
mov qword [rdx], rax
lea rax, [0x00469d20]
mov qword [rdx + 8], rax
lea rax, str.OS_cant_spawn_worker_thread:
lea rcx, [rsp + 0x310]
mov qword [rcx], rax
mov eax, 1
mov qword [rcx + 8], rax
mov qword [rcx + 0x20], 0
mov qword [rcx + 0x10], rdx
mov qword [rcx + 0x18], rax
lea rdx, str._cargo_registry_src_index.crates.io_6f17d22bba15001f_tokio_1.35.1_src_runtime_scheduler_multi_thread_worker.rs
call fcn.0042b5e0
ud2
mov rcx, qword [0x004a30e8]
xor edx, edx
mov r8, r14
call sub.KERNEL32.dll_HeapFree
mov qword [rsp + 0x60], rbx
lea r8, [rsp + 0x310]
mov qword [r8], 0
lea rdx, [0x00496f48]
lea r9, str._cargo_registry_src_index.crates.io_6f17d22bba15001f_tokio_1.35.1_src_runtime_scheduler_multi_thread_queue.rs
lea rcx, [rsp + 0x60]
call fcn.004750a9
ud2
call fcn.004292f0
ud2
mov ecx, 8
mov edx, 0x58
jmp 0x480144
lea rcx, str.assertion_failed:_sharded_size.is_power_of_two___cargo_registry_src_index.crates.io_6f17d22bba15001f_tokio_1.35.1_src_util_sharded_list.rs
lea r8, [0x00498d10]
mov edx, 0x30
call fcn.0042c320
ud2
mov ecx, 8
mov edx, 0x1f0
jmp 0x480144
mov ecx, 8
mov edx, 0x60
jmp 0x480144
mov ecx, 8
mov edx, 0x190
jmp 0x480144
mov ecx, 8
mov edx, 0x200
jmp 0x480144
mov ecx, 8
mov edx, 0x70
jmp 0x480144
mov al, byte [rsp + 0xe1]
lea rcx, [rsp + 0x28]
mov byte [rcx], al
lea rax, [0x00495ee0]
mov qword [rsp + 0x140], rax
lea rax, [0x00474c66]
mov qword [rsp + 0x148], rax
mov qword [rsp + 0x150], rcx
lea rax, [0x0042c790]
mov qword [rsp + 0x158], rax
lea rax, [rsp + 0x248]
mov qword [rsp + 0x160], rax
lea rax, [0x00480c0c]
mov qword [rsp + 0x168], rax
lea rax, [0x00495f88]
lea rcx, [rsp + 0x310]
mov qword [rcx], rax
mov eax, 3
mov qword [rcx + 8], rax
mov qword [rcx + 0x20], 0
mov qword [rcx + 0x10], rdi
mov qword [rcx + 0x18], rax
lea rdx, [0x00495fb8]
jmp 0x48019b
lea rax, [0x00495ee0]
lea rdx, [rsp + 0x310]
mov qword [rdx], rax
lea rax, [0x00474c66]
mov qword [rdx + 8], rax
lea rax, [0x00495ec0]
lea rcx, [rsp + 0x140]
mov qword [rcx], rax
mov qword [rcx + 8], 2
mov qword [rcx + 0x20], 0
mov qword [rcx + 0x10], rdx
mov qword [rcx + 0x18], 1
lea rdx, [0x00495ef0]
jmp 0x48019b
mov ecx, dword [rax]
mov eax, dword [rax + 3]
mov dword [rsp + 0xe3], eax
mov dword [rsp + 0xe0], ecx
lea rax, [rsp + 0x248]
mov qword [rax], rbx
mov qword [rax + 8], r15
mov qword [rax + 0x10], r8
mov byte [rax + 0x18], 0
mov ecx, dword [rsp + 0xe0]
mov edx, dword [rsp + 0xe3]
mov dword [rax + 0x19], ecx
mov dword [rax + 0x1c], edx
lea rcx, [0x00495ee0]
lea rdx, [rsp + 0x310]
mov qword [rdx], rcx
lea rcx, [0x00474c66]
mov qword [rdx + 8], rcx
mov qword [rdx + 0x10], rax
lea rax, [0x0046a1b0]
mov qword [rdx + 0x18], rax
lea rax, [0x00495f28]
lea rcx, [rsp + 0x140]
mov qword [rcx], rax
mov eax, 2
mov qword [rcx + 8], rax
mov qword [rcx + 0x20], 0
mov qword [rcx + 0x10], rdx
mov qword [rcx + 0x18], rax
lea rdx, [0x00495f48]
jmp 0x48019b