Function at 0x47d3e2
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 0x47d421
cmp qword [rsi], 0
je 0x47d531
mov rbp, qword [rsi + 8]
mov al, 1
jmp 0x47d699
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.0047eb0a
mov r15, qword [rdi]
cmp r15, 2
je 0x47d6dc
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.0047f095
lock inc qword [rax]
jle 0x47e823
mov rdi, rax
mov r12, rdx
lea rbx, [rsi + 0xa0]
mov rcx, rbx
call fcn.00476adb
mov dword [rsp + 0x40], eax
mov dword [rsp + 0x48], edx
mov rcx, rbx
call fcn.00476adb
mov r13, qword [rsi + 0x78]
test r13, r13
mov qword [rsp + 0xb8], r12
je 0x47dd58
lock inc qword [r13]
jle 0x47e823
mov rcx, qword [rsi + 0x80]
mov qword [rsp + 0x128], rcx
jmp 0x47dd58
lea rdx, [0x0049208b]
lea rdi, [rsp + 0x140]
mov r8d, 0x14
mov rcx, rdi
call fcn.004685f0
mov al, byte [rdi + 0x18]
cmp al, 2
jne 0x47d581
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 0x47d693
mov rbx, qword [rsp + 0x140]
mov r15, qword [rsp + 0x148]
mov r8, qword [rsp + 0x150]
test al, al
jne 0x47d631
test r8, r8
je 0x47d631
lea rax, [rsp + 0x159]
lea rcx, [rbx + r8]
mov r9, rbx
lea rdx, [r9 + 1]
mov r10b, byte [r9]
test r10b, r10b
jns 0x47d629
cmp r10b, 0xe0
jae 0x47d5d8
add r9, 2
cmp rdx, rcx
cmovne rdx, r9
jmp 0x47d629
cmp r10b, 0xed
jne 0x47d600
cmp rdx, rcx
je 0x47d631
lea rdx, [r9 + 2]
cmp rdx, rcx
je 0x47d631
cmp byte [r9 + 1], 0x9f
ja 0x47ea69
add r9, 3
mov rdx, r9
jmp 0x47d629
add r9, 2
cmp rdx, rcx
cmove r9, rdx
xor edx, edx
cmp r9, rcx
setne dl
add rdx, r9
cmp r10b, 0xf0
jb 0x47d629
xor r9d, r9d
cmp rdx, rcx
setne r9b
add rdx, r9
mov r9, rdx
cmp rdx, rcx
jne 0x47d5b9
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.0042b3b0
cmp byte [r14], 0
jne 0x47e979
mov rbp, qword [rsp + 0xe8]
test rbp, rbp
je 0x47ea12
test r15, r15
mov r14, r12
je 0x47d693
mov rcx, qword [0x0049f0e8]
xor edx, edx
mov r8, rbx
call fcn.00480424
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.0047eb0a
mov r15, qword [rdi]
cmp r15, 2
jne 0x47d6f4
mov rax, qword [rsp + 0x148]
mov qword [r14 + 8], rax
mov qword [r14], 2
jmp 0x47e807
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.0047f095
mov qword [rsp + 0xa0], rdx
mov qword [rsp + 0x80], rax
lock inc qword [rax]
jle 0x47e823
lea r14, [rsi + 0xa0]
mov rcx, r14
call fcn.00476adb
mov edi, eax
mov ebx, edx
mov rcx, r14
call fcn.00476adb
mov r14d, eax
mov r13d, edx
mov rax, qword [rsi + 0x78]
test rax, rax
je 0x47d7c2
lock inc qword [rax]
jle 0x47e823
mov rcx, qword [rsi + 0x80]
jmp 0x47d7c2
mov rdx, qword [rsi + 0x88]
test rdx, rdx
je 0x47d7e1
lock inc qword [rdx]
jle 0x47e823
mov r8, qword [rsi + 0x90]
jmp 0x47d7e1
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 [0x0049f150]
mov ecx, 0x58
mov edx, 8
call fcn.00420e50
test rax, rax
je 0x47e905
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 [0x0049f150]
mov ecx, 0x30
mov edx, 8
call fcn.00420e50
test rax, rax
je 0x47e833
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 0x47d95d
mov rax, rbp
shr rax, 0x3c
jne 0x47e8fe
lea rcx, [rbp*8]
test rcx, rcx
mov qword [rsp + 0x50], rcx
je 0x47d99f
mov al, byte [0x0049f150]
mov edx, 8
call fcn.00420e50
test rax, rax
jne 0x47d9a4
mov ecx, 8
mov rdx, qword [rsp + 0x50]
jmp 0x47e861
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 0x47df75
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 0x47e8fe
mov rsi, rbp
shl rsi, 4
mov al, byte [0x0049f150]
mov edx, 8
mov rcx, rsi
call fcn.00420e50
test rax, rax
je 0x47e0d0
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 [0x0049f150]
mov ecx, 0x800
mov edx, 8
call fcn.00420e50
test rax, rax
je 0x47e83f
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 0x47da6f
mov rcx, rdi
mov rdx, rbx
call fcn.0042f898
mov rbx, qword [rsp + 0x38]
inc rbx
mov qword [rsp + 0x38], rbx
dec rsi
jne 0x47da58
mov r14, qword [rsp + 0x28]
cmp qword [rsp + 0x30], rbx
jbe 0x47dab9
test rbx, rbx
je 0x47e8bf
lea rsi, [rbx*8]
mov rcx, qword [0x0049f0e8]
xor edx, edx
mov r8, r14
mov r9, rsi
call sub.KERNEL32.dll_HeapReAlloc
mov r14, rax
test rax, rax
je 0x47e0d0
mov qword [rsp + 0x60], rbx
cmp rbx, 0x100
jne 0x47e8d5
mov al, byte [0x0049f150]
mov ecx, 0x28
mov edx, 8
call fcn.00420e50
test rax, rax
je 0x47e827
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 0x47e823
mov rax, qword [rsp + 0x118]
mov rsi, qword [rax + 0x10]
lock inc qword [rsi]
jle 0x47e823
mov al, byte [0x0049f150]
mov ecx, 0x30
mov edx, 8
call fcn.00420e50
test rax, rax
je 0x47e833
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 0x47e823
call fcn.0044c350
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.00476adb
mov r15d, eax
mov edi, edx
mov al, byte [0x0049f150]
mov ecx, 0x50
mov edx, 8
call fcn.00420e50
test rax, rax
je 0x47e84b
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 0x47dc49
lea rcx, [rsp + 0x88]
call fcn.0042f898
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 0x47dc97
lea rcx, [rsp + 0xc8]
mov rdx, r13
call fcn.00477b74
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 0x47da17
mov rsi, qword [rsp + 0x50]
test rsi, rsi
je 0x47dcf5
mov al, byte [0x0049f150]
mov edx, 8
mov rcx, rsi
call fcn.00420e50
mov r12, rax
test rax, rax
jne 0x47dcfb
jmp 0x47e0d0
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 0x47df72
test r13, r13
je 0x47df5b
mov rsi, r13
shl rsi, 4
mov rcx, qword [0x0049f0e8]
xor edx, edx
mov r8, r14
mov r9, rsi
call sub.KERNEL32.dll_HeapReAlloc
mov r14, rax
mov rdx, rbp
test rax, rax
jne 0x47df75
jmp 0x47e0d0
mov r12, qword [rsi + 0x88]
test r12, r12
mov qword [rsp + 0x130], rbp
mov dword [rsp + 0x58], eax
mov dword [rsp + 0x80], edx
je 0x47dd93
lock inc qword [r12]
jle 0x47e823
mov rax, qword [rsi + 0x90]
mov qword [rsp + 0x120], rax
jmp 0x47dd93
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 [0x0049f150]
mov ecx, 0x60
mov edx, 8
call fcn.00420e50
test rax, rax
je 0x47e93d
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 0x47decf
mov rcx, rbx
mov rdx, rsi
call fcn.00477294
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 0x47de93
mov r14, qword [rsp + 0x140]
cmp qword [rsp + 0x148], rsi
jbe 0x47e5a5
test rsi, rsi
je 0x47e58e
lea rax, [rsi*8]
lea rbx, [rax + rax*2]
mov rcx, qword [0x0049f0e8]
xor edx, edx
mov r8, r14
mov r9, rbx
call sub.KERNEL32.dll_HeapReAlloc
mov r14, rax
test rax, rax
jne 0x47e5a5
mov ecx, 8
mov rdx, rbx
jmp 0x47e861
mov rcx, qword [0x0049f0e8]
xor edx, edx
mov r8, r14
call fcn.00480424
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 0x47e914
mov qword [rsp + 0x40], rdx
test rbp, rbp
mov qword [rsp + 0x20], rdi
mov qword [rsp + 0x48], rbp
je 0x47e0dd
lea rax, [rbp*8]
lea rsi, [rax + rax*2]
mov al, byte [0x0049f150]
mov edx, 8
mov rcx, rsi
call fcn.00420e50
test rax, rax
je 0x47e0d0
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 0x47e063
mov rcx, rsi
mov rdx, rbx
call fcn.00477294
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 0x47e024
mov r15, qword [rsp + 0x28]
cmp qword [rsp + 0x30], rbx
jbe 0x47e10f
test rbx, rbx
je 0x47e0f8
lea rax, [rbx*8]
lea rsi, [rax + rax*2]
mov rcx, qword [0x0049f0e8]
xor edx, edx
mov r8, r15
mov r9, rsi
call sub.KERNEL32.dll_HeapReAlloc
mov r15, rax
test rax, rax
jne 0x47e10f
mov ecx, 8
mov rdx, rsi
jmp 0x47e861
mov qword [rsp + 0x28], 8
xorps xmm0, xmm0
movups xmmword [rsp + 0x30], xmm0
mov r15d, 8
xor ebx, ebx
jmp 0x47e10f
mov rcx, qword [0x0049f0e8]
xor edx, edx
mov r8, r15
call fcn.00480424
mov r15d, 8
mov ebp, 1
lock xadd qword [0x00483458], rbp
test rbp, rbp
je 0x47e10f
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 [0x0049f150]
mov ecx, 0x1f0
mov edx, 8
call fcn.00420e50
test rax, rax
je 0x47e92e
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 0x47e39d
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 0x47e823
mov al, byte [0x0049f150]
mov ecx, 0x28
mov edx, 8
call fcn.00420e50
test rax, rax
je 0x47e827
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 0x47e361
lea rcx, [rsp + 0x28]
mov rdx, rsi
call fcn.0042f898
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 0x47e2f6
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 0x47e3a4
xor eax, eax
mov qword [rsp + 0x48], rax
lea rcx, [rsp + 0x310]
mov qword [rcx], r13
call fcn.00474663
lea rcx, [rsp + 0x88]
call fcn.00471892
mov rax, qword [rsp + 0xa8]
lock dec qword [rax]
jne 0x47e3dc
lea rcx, [rsp + 0x118]
call fcn.004723be
lea rcx, [rsp + 0x248]
mov edx, 1
mov r8, qword [rsp + 0x20]
call fcn.00473184
test rsi, rsi
je 0x47e504
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.00478343
mov r13, rax
mov r12, rdx
mov qword [rsp + 0x60], rax
mov qword [rsp + 0x68], rdx
mov r15d, 1
lock xadd qword [0x00483450], r15
mov al, byte [0x0049f150]
mov ecx, pe_nt_image_headers64
mov edx, pe_nt_image_headers64
call fcn.00420e50
test rax, rax
je 0x47e857
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, [0x00494008]
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.004783d4
test rax, rax
je 0x47e4cd
test rdx, rdx
jne 0x47e868
mov rcx, rbp
call fcn.004716d2
mov eax, 0xcc
mov ecx, 0x84
lock cmpxchg qword [r14], rcx
mov rbx, qword [rsp + 0x40]
je 0x47e4f5
mov rax, qword [r14 + 0x10]
mov rcx, r14
call qword [rax + 0x20]
add rdi, 8
cmp rsi, rdi
jne 0x47e40f
jmp 0x47e52e
lea rdi, [rbx + rsi*8]
sub rdi, rbx
je 0x47e52e
shr rdi, 3
mov rsi, rbx
mov rax, qword [rsi]
lock dec qword [rax]
jne 0x47e525
mov rcx, rsi
call fcn.00473f20
add rsi, 8
dec rdi
jne 0x47e514
cmp qword [rsp + 0x48], 0
je 0x47e547
mov rcx, qword [0x0049f0e8]
xor edx, edx
mov r8, rbx
call fcn.00480424
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.0040742e
jmp 0x47e807
mov rcx, qword [0x0049f0e8]
xor edx, edx
mov r8, r14
call fcn.00480424
mov r14d, 8
mov edi, 1
lock xadd qword [0x00483458], rdi
test rdi, rdi
je 0x47e5a5
movups xmm0, xmmword [rsp + 0x31f]
movups xmmword [rsp + 0x14f], xmm0
movaps xmm0, xmmword [rsp + 0x310]
movaps xmmword [rsp + 0x140], xmm0
mov al, byte [0x0049f150]
mov ecx, 0x190
mov edx, 8
call fcn.00420e50
test rax, rax
je 0x47e94c
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 [0x0049f150]
mov ecx, 0x200
mov edx, 8
call fcn.00420e50
test rax, rax
je 0x47e95b
mov rsi, rax
mov al, byte [0x0049f150]
mov ecx, 0x70
mov edx, 8
call fcn.00420e50
test rax, rax
mov r8, qword [rsp + 0xc0]
mov r9, qword [rsp + 0xb8]
je 0x47e96a
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 0x47e861
mov ecx, 8
mov edx, 0x30
jmp 0x47e861
mov ecx, 8
mov edx, 0x800
jmp 0x47e861
mov ecx, 8
mov edx, 0x50
jmp 0x47e861
mov ecx, pe_nt_image_headers64
mov edx, pe_nt_image_headers64
call fcn.004227e0
ud2
lea rax, [rsp + 0xc8]
mov qword [rax], rdx
lea rdx, [rsp + 0x28]
mov qword [rdx], rax
lea rax, [0x004690c0]
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.00426140
ud2
mov rcx, qword [0x0049f0e8]
xor edx, edx
mov r8, r14
call fcn.00480424
mov qword [rsp + 0x60], rbx
lea r8, [rsp + 0x310]
mov qword [r8], 0
lea rdx, [0x004931b0]
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.00473e25
ud2
call fcn.004227a0
ud2
mov ecx, 8
mov edx, 0x58
jmp 0x47e861
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, [0x00494f78]
mov edx, 0x30
call fcn.00426e80
ud2
mov ecx, 8
mov edx, 0x1f0
jmp 0x47e861
mov ecx, 8
mov edx, 0x60
jmp 0x47e861
mov ecx, 8
mov edx, 0x190
jmp 0x47e861
mov ecx, 8
mov edx, 0x200
jmp 0x47e861
mov ecx, 8
mov edx, 0x70
jmp 0x47e861
mov al, byte [rsp + 0xe1]
lea rcx, [rsp + 0x28]
mov byte [rcx], al
lea rax, [0x00492130]
mov qword [rsp + 0x140], rax
lea rax, [0x004739e2]
mov qword [rsp + 0x148], rax
mov qword [rsp + 0x150], rcx
lea rax, [0x004272f0]
mov qword [rsp + 0x158], rax
lea rax, [rsp + 0x248]
mov qword [rsp + 0x160], rax
lea rax, [0x0047f329]
mov qword [rsp + 0x168], rax
lea rax, [0x004921d8]
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, [0x00492208]
jmp 0x47e8b8
lea rax, [0x00492130]
lea rdx, [rsp + 0x310]
mov qword [rdx], rax
lea rax, [0x004739e2]
mov qword [rdx + 8], rax
lea rax, [0x00492110]
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, [0x00492140]
jmp 0x47e8b8
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, [0x00492130]
lea rdx, [rsp + 0x310]
mov qword [rdx], rcx
lea rcx, [0x004739e2]
mov qword [rdx + 8], rcx
mov qword [rdx + 0x10], rax
lea rax, [0x00469550]
mov qword [rdx + 0x18], rax
lea rax, [0x00492178]
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, [0x00492198]
jmp 0x47e8b8