Function at 0x140103a60
Capabilities:
Get system information on windows
Resolve function by parsing pe exports

Disassembly:
push r15
push r14
push r13
push r12
push rsi
push rdi
push rbp
push rbx
sub rsp, 0x3d8
movaps xmmword [rsp + 0x3c0], xmm6
mov r12, rdx
mov rsi, rcx
cmp byte [rdx + 0xb0], 0
je 0x140103a9b
cmp qword [r12], 0
je 0x140103b10
mov r13, qword [r12 + 8]
jmp 0x140104243
movzx eax, word [r12 + 0xb1]
movzx ecx, byte [r12 + 0xb3]
mov rdx, qword [r12 + 0x48]
mov word [rsp + 0x1a8], ax
mov byte [rsp + 0x1aa], 1
mov byte [rsp + 0x1ab], cl
mov qword [rsp + 0x1a0], rdx
lea rcx, [rsp + 0x2a0]
lea rdx, [rsp + 0x1a0]
call fcn.140107be0
mov r13, qword [rsp + 0x2a0]
mov rbx, qword [rsp + 0x2a8]
cmp r13, 2
jne 0x140103b85
mov qword [rsi + 8], rbx
mov qword [rsi], 2
jmp 0x140105028
lea rdx, str.TOKIO_WORKER_THREADS
lea rdi, [rsp + 0x2a0]
mov r8d, 0x14
mov rcx, rdi
call fcn.1400ebe70
mov rcx, qword [rsp + 0x2a0]
movabs rax, 0x8000000000000000
cmp rcx, rax
jne 0x140103c5c
xorps xmm0, xmm0
movaps xmmword [rsp + 0x2c0], xmm0
movaps xmmword [rsp + 0x2b0], xmm0
movaps xmmword [rsp + 0x2a0], xmm0
lea rcx, [rsp + 0x2a0]
call sub.kernel32.dll_GetSystemInfo
mov r13d, dword [rsp + 0x2c0]
cmp r13d, 1
adc r13d, 0
jmp 0x140104243
mov qword [rsp + 0xa8], rsi
lea rdx, [rsp + 0x2b0]
lea rcx, [rsp + 0xb0]
mov r8d, 0xe0
call fcn.14011a210
movups xmm0, xmmword [rsp + 0xb0]
movups xmm1, xmmword [rsp + 0xc0]
movups xmm2, xmmword [rsp + 0xd0]
movaps xmmword [rsp + 0x390], xmm0
movaps xmmword [rsp + 0x3a0], xmm1
movaps xmmword [rsp + 0x3b0], xmm2
lea rdx, [rsp + 0xe0]
lea rcx, [rsp + 0x1d0]
mov r8d, 0xb0
call fcn.14011a210
mov rdx, qword [r12 + 0x50]
mov rcx, r12
call fcn.1400feda0
lock inc qword [rax]
jle 0x14010439f
mov rdi, rax
mov rbp, rdx
lea rsi, [r12 + 0xa4]
mov rcx, rsi
call fcn.1400ff030
mov r15d, eax
mov r14d, edx
mov rcx, rsi
call fcn.1400ff030
mov rsi, qword [r12 + 0x78]
test rsi, rsi
mov dword [rsp + 0x68], r14d
je 0x140103ccc
mov rcx, qword [r12 + 0x80]
mov qword [rsp + 0x290], rcx
lock inc qword [rsi]
jg 0x140103ccc
jmp 0x14010439f
mov r14, rsi
mov r8, qword [rsp + 0x2a8]
mov r9, qword [rsp + 0x2b0]
cmp byte [rsp + 0x2b8], 0
je 0x1401040d1
mov qword [rsp + 0x1d0], rcx
mov qword [rsp + 0x1d8], r8
mov qword [rsp + 0x1e0], r9
cmp r9, 1
je 0x1401040ab
test r9, r9
je 0x1401053d0
cmp byte [r8], 0x2b
jne 0x140104195
lea r10, [r8 + 1]
lea rax, [r9 - 1]
cmp r9, 0x12
mov r9, rax
jb 0x14010419e
jmp 0x1401041dc
mov r14, qword [r12 + 0x88]
test r14, r14
mov dword [rsp + 0x3c], eax
mov dword [rsp + 0x60], edx
mov dword [rsp + 0x78], r15d
je 0x140103d01
mov rax, qword [r12 + 0x90]
mov qword [rsp + 0x288], rax
lock inc qword [r14]
jg 0x140103d01
jmp 0x14010439f
mov eax, dword [r12 + 0x20]
mov dword [rsp + 0x28], eax
mov r15d, dword [r12 + 0x24]
mov eax, dword [r12 + 0xa0]
mov dword [rsp + 0xa0], eax
mov rax, qword [r12 + 0x98]
mov qword [rsp + 0x58], rax
movzx eax, byte [r12 + 0xb4]
mov byte [rsp + 0x38], al
movzx eax, byte [r12 + 0xb5]
mov byte [rsp + 0x34], al
movzx eax, byte [0x140197310]
mov edx, 0x60
xor ecx, ecx
call fcn.1400f22a0
test rax, rax
je 0x1401052fd
mov r12, rax
mov qword [rsp + 0x2a0], 4
mov qword [rsp + 0x2a8], rax
mov qword [rsp + 0x2b0], 0
xorps xmm6, xmm6
movups xmmword [rax], xmm6
mov qword [rax + 0x10], 0
mov qword [rsp + 0x2b0], 1
mov rax, qword [rsp + 0x2a0]
cmp rax, 1
jne 0x140103dc9
lea rcx, [rsp + 0x2a0]
call fcn.1400b9bd0
mov rax, qword [rsp + 0x2a0]
mov r12, qword [rsp + 0x2a8]
movups xmmword [r12 + 0x18], xmm6
mov qword [r12 + 0x28], 0
mov qword [rsp + 0x2b0], 2
cmp rax, 2
jne 0x140103dff
lea rcx, [rsp + 0x2a0]
call fcn.1400b9bd0
mov r12, qword [rsp + 0x2a8]
xorps xmm6, xmm6
movups xmmword [r12 + 0x30], xmm6
mov qword [r12 + 0x40], 0
mov qword [rsp + 0x2b0], 3
mov rax, qword [rsp + 0x2a0]
cmp rax, 3
jne 0x140103e48
lea rcx, [rsp + 0x2a0]
call fcn.1400b9bd0
mov rax, qword [rsp + 0x2a0]
mov r12, qword [rsp + 0x2a8]
movups xmmword [r12 + 0x48], xmm6
mov qword [r12 + 0x58], 0
mov qword [rsp + 0x2b0], 4
cmp rax, 4
mov qword [rsp + 0x98], r13
mov qword [rsp + 0x298], rbp
jbe 0x140103e9d
mov rcx, qword [0x140197260]
mov r9d, 0x60
xor edx, edx
mov r8, r12
call qword [sym.imp.kernel32.dll_HeapReAlloc]
mov r12, rax
test rax, rax
je 0x1401052fd
mov rbp, rbx
mov r13d, 1
lock xadd qword [0x140197050], r13
test r13, r13
je 0x140103ea0
movzx eax, byte [0x140197310]
mov edx, 0x180
xor ecx, ecx
call fcn.1400f22a0
test rax, rax
je 0x140105316
mov rbx, rax
mov qword [rax], 1
mov qword [rax + 8], 1
mov eax, dword [rsp + 0x28]
mov dword [rbx + 0x10], eax
mov dword [rbx + 0x14], r15d
mov rax, qword [rsp + 0x58]
mov qword [rbx + 0x18], rax
mov qword [rbx + 0x20], rsi
mov rax, qword [rsp + 0x290]
mov qword [rbx + 0x28], rax
mov qword [rbx + 0x30], r14
mov rax, qword [rsp + 0x288]
mov qword [rbx + 0x38], rax
mov eax, dword [rsp + 0xa0]
mov dword [rbx + 0x40], eax
mov dword [rbx + 0x44], 0
mov eax, dword [rsp + 0x78]
mov dword [rbx + 0x48], eax
mov eax, dword [rsp + 0x68]
mov dword [rbx + 0x4c], eax
movzx eax, byte [rsp + 0x38]
mov byte [rbx + 0x50], al
movzx eax, byte [rsp + 0x34]
mov byte [rbx + 0x51], al
mov qword [rbx + 0x58], r12
mov qword [rbx + 0x60], 4
mov qword [rbx + 0x68], 0
mov qword [rbx + 0x70], 3
mov qword [rbx + 0x78], r13
mov byte [rbx + 0x80], 0
xorps xmm0, xmm0
movups xmmword [rbx + 0x91], xmm0
movups xmmword [rbx + 0x88], xmm0
mov qword [rbx + 0xa8], 0
mov byte [rbx + 0xb0], 0
mov rcx, rbx
add rcx, 0xb8
lea rdx, [rsp + 0x1d0]
mov r8d, 0xb0
call fcn.14011a210
mov qword [rbx + 0x168], rdi
mov dword [rbx + 0x170], 0
mov eax, dword [rsp + 0x3c]
mov dword [rbx + 0x174], eax
mov eax, dword [rsp + 0x60]
mov dword [rbx + 0x178], eax
movzx eax, byte [0x140197310]
mov edx, 0x200
xor ecx, ecx
call fcn.1400f22a0
test rax, rax
je 0x140105325
mov rsi, rax
movzx eax, byte [0x140197310]
mov edx, 0x70
xor ecx, ecx
call fcn.1400f22a0
test rax, rax
je 0x140105334
cmp dword [rsp + 0x28], 0
mov ecx, 0x1f
cmove r15d, ecx
mov rcx, qword [rsp + 0x98]
mov qword [rax], rcx
mov qword [rax + 8], rbp
movaps xmm0, xmmword [rsp + 0x390]
movaps xmm1, xmmword [rsp + 0x3a0]
movaps xmm2, xmmword [rsp + 0x3b0]
movups xmmword [rax + 0x10], xmm0
movups xmmword [rax + 0x20], xmm1
movups xmmword [rax + 0x30], xmm2
mov qword [rax + 0x40], 0x40
mov qword [rax + 0x48], rsi
xorps xmm0, xmm0
movups xmmword [rax + 0x50], xmm0
mov dword [rax + 0x60], 0
mov dword [rax + 0x64], r15d
mov byte [rax + 0x68], 0
mov rcx, qword [rsp + 0xa8]
movups xmmword [rcx + 0x18], xmm0
movups xmmword [rcx + 8], xmm0
mov qword [rcx + 0x28], rax
mov qword [rcx], 0
mov qword [rcx + 0x30], 0
mov qword [rcx + 0x38], rbx
mov qword [rcx + 0x40], rdi
mov rax, qword [rsp + 0x298]
mov qword [rcx + 0x48], rax
jmp 0x140105028
movzx edx, byte [r8]
mov al, 1
cmp edx, 0x2b
je 0x1401051fa
mov r9d, 1
mov r10, r8
cmp edx, 0x2d
jne 0x14010419e
jmp 0x1401051fa
test r9, r9
je 0x1401053b8
movzx edx, byte [rsp + 0x2bf]
shl edx, 0x10
movzx r10d, word [rsp + 0x2bd]
or r10d, edx
shl r10, 0x20
mov edx, dword [rsp + 0x2b9]
or rdx, r10
lea r10, [r8 + r9]
mov rsi, r8
jmp 0x14010412c
add rsi, 2
cmp r11, r10
cmovne r11, rsi
nop word cs:[rax + rax]
mov rsi, r11
cmp r11, r10
je 0x140103c7d
lea r11, [rsi + 1]
movzx ebx, byte [rsi]
test bl, bl
jns 0x140104120
cmp bl, 0xe0
jb 0x140104108
cmp bl, 0xed
jne 0x14010416a
cmp r11, r10
je 0x140103c7d
lea r11, [rsi + 2]
cmp r11, r10
je 0x140103c7d
cmp byte [rsi + 1], 0x9f
ja 0x140105071
add rsi, 3
mov r11, rsi
jmp 0x140104120
add rsi, 2
cmp r11, r10
cmove rsi, r11
xor r11d, r11d
cmp rsi, r10
setne r11b
add r11, rsi
cmp bl, 0xf0
jb 0x140104120
xor esi, esi
cmp r11, r10
setne sil
add r11, rsi
jmp 0x140104120
mov r10, r8
cmp r9, 0x11
jae 0x1401041dc
xor eax, eax
xor r13d, r13d
nop word cs:[rax + rax]
movzx edx, byte [r10 + rax]
add edx, 0xffffffd0
cmp edx, 9
ja 0x1401051f8
lea r11, [r13*4]
add r11, r13
mov edx, edx
lea r13, [rdx + r11*2]
inc rax
cmp r9, rax
jne 0x1401041b0
jmp 0x140104223
xor r11d, r11d
mov esi, 0xa
xor r13d, r13d
nop word [rax + rax]
movzx ebx, byte [r10 + r11]
add ebx, 0xffffffd0
mov rax, r13
mul rsi
jo 0x1401052ac
cmp ebx, 0xa
jae 0x1401051f8
mov r13, rax
mov eax, ebx
add r13, rax
jb 0x1401052b8
inc r11
cmp r9, r11
jne 0x1401041f0
test r13, r13
je 0x140105343
test rcx, rcx
mov rsi, r14
je 0x140104243
mov rcx, qword [0x140197260]
xor edx, edx
call qword [sym.imp.kernel32.dll_HeapFree]
movzx eax, word [r12 + 0xb1]
movzx ecx, byte [r12 + 0xb3]
mov rdx, qword [r12 + 0x48]
mov word [rsp + 0x1d8], ax
mov byte [rsp + 0x1da], 0
mov byte [rsp + 0x1db], cl
mov qword [rsp + 0x1d0], rdx
lea rcx, [rsp + 0x2a0]
lea rdx, [rsp + 0x1d0]
call fcn.140107be0
mov r15, qword [rsp + 0x2a0]
mov r14, qword [rsp + 0x2a8]
cmp r15, 2
jne 0x1401042b4
mov qword [rsi + 8], r14
mov qword [rsi], 2
jmp 0x140105028
mov qword [rsp + 0xa8], rsi
lea rdx, [rsp + 0x2b0]
lea rcx, [rsp + 0xb0]
mov r8d, 0xe0
call fcn.14011a210
movups xmm0, xmmword [rsp + 0xb0]
movups xmm1, xmmword [rsp + 0xc0]
adc byte [rsp + 0xc0], cl
cmp rcx, rax
mov rsi, r14
je 0x140103b48
shl rdx, 8
mov qword [rsp + 0x1d0], rcx
mov qword [rsp + 0x1d8], r8
mov qword [rsp + 0x1e0], r9
mov qword [rsp + 0x1e8], rdx
lea rax, str.TOKIO_WORKER_THREADS
mov qword [rsp + 0xb0], rax
lea rax, [0x1400e5560]
mov qword [rsp + 0xb8], rax
lea rax, [rsp + 0x1d0]
mov qword [rsp + 0xc0], rax
lea rax, [0x1400ece60]
mov qword [rsp + 0xc8], rax
lea rax, str.___cannot_be_set_to_0
mov qword [rsp + 0x2a0], rax
mov qword [rsp + 0x2a8], 2
mov qword [rsp + 0x2c0], 0
lea rax, [rsp + 0xb0]
mov qword [rsp + 0x2b0], rax
mov qword [rsp + 0x2b8], 2
lea rdx, str.C:UsersDONY.cargo_registry_srcindex.crates.io_6f17d22bba15001f_tokio_1.36.0_srcloom_stdmod.rs
lea rcx, [rsp + 0x2a0]
call fcn.14011c2b0
mov al, 2
jmp 0x1401051fa