Function at 0x48bfb0
Capabilities:
Create thread
Resolve function by parsing pe exports

Disassembly:
push ebp
mov ebp, esp
push ebx
push edi
push esi
sub esp, 0x80
lea eax, [ebp - 0x18]
mov ebx, ecx
lea edi, [edx + 0x28]
mov esi, edx
mov dword [eax - 4], esp
or dword [eax + 8], 0xffffffff
mov dword [eax + 4], 0x495aa0
mov ecx, dword fs:[0]
mov dword [eax], ecx
mov ecx, edi
mov dword fs:[0], eax
call fcn.00487813
cmp byte [esi + 0x78], 0
je 0x48c000
mov ecx, dword [ebp + 8]
call fcn.004884bf
mov byte [ebx], 4
jmp 0x48c080
mov ecx, dword [esi + 0x34]
mov eax, dword [esi + 0x3c]
mov dword [ebp - 0x38], edi
cmp eax, ecx
jne 0x48c01b
lea ecx, [esi + 0x30]
call fcn.0048b70f
mov ecx, dword [esi + 0x34]
mov eax, dword [esi + 0x3c]
mov edx, dword [esi + 0x38]
mov dword [ebp - 0x34], esi
xor edi, edi
add edx, eax
cmp edx, ecx
cmovae edi, ecx
mov ecx, dword [ebp - 0x34]
inc eax
sub edx, edi
mov edi, dword [ebp + 8]
mov esi, dword [ecx + 0x30]
mov dword [esi + edx*8], edi
mov byte [esi + edx*8 + 4], 1
mov dword [ecx + 0x3c], eax
lock inc dword [ecx + 0xa0]
mov eax, dword [ecx + 0x9c]
test eax, eax
je 0x48c06c
lock dec dword [ecx + 0x9c]
inc dword [ecx + 0x60]
add ecx, 0x90
call fcn.004884d3
mov edi, dword [ebp - 0x38]
jmp 0x48c07d
mov eax, dword [ecx + 0x98]
mov edi, dword [ebp - 0x38]
cmp eax, dword [ecx + 0x94]
jne 0x48c09b
mov byte [ebx], 5
mov ecx, edi
call fcn.0044710c
mov eax, dword [ebp - 0x18]
mov dword fs:[0], eax
add esp, 0x80
pop esi
pop edi
pop ebx
pop ebp
ret
mov eax, dword [ecx + 0x64]
test eax, eax
je 0x48c5b5
mov dword [ebp - 0x74], eax
lock inc dword [eax]
jle 0x48c5b1
mov edi, ecx
mov eax, dword [ecx + 0x20]
mov ecx, dword [ecx + 0x24]
mov edx, dword [ecx + 8]
dec edx
and edx, 0xfffffff8
lea eax, [edx + eax + 8]
mov edx, dword [edi + 0x74]
mov dword [ebp - 0x2c], edx
lea edx, [ebp - 0x58]
push eax
push edx
call dword [ecx + 0x14]
add esp, 8
mov esi, dword [edi + 8]
mov dword [ebp - 0x40], ebx
test esi, esi
je 0x48c0e5
mov edi, dword [edi + 0xc]
jmp 0x48c0e5
mov eax, dword [ebp - 0x54]
mov ebx, dword [ebp - 0x58]
mov dword [ebp - 0x8c], eax
mov eax, dword [ebp - 0x50]
mov dword [ebp - 0x3c], eax
mov eax, dword [ebp + 0xc]
mov ecx, dword [eax]
mov edx, dword [eax + 4]
call fcn.00488b89
test esi, esi
mov ecx, edi
mov dword [ebp - 0x24], eax
mov dword [ebp - 0x28], edx
jne 0x48c1ff
mov ecx, dword [0x5069fc]
test ecx, ecx
je 0x48c124
dec ecx
jmp 0x48c1ff
lea esi, [ebp - 0x58]
mov edx, str.RUST_MIN_STACKfatal_runtime_error:_assertion_failed:_thread_info.stack_guard.get__.is_none____thread_info.thread.get__.is_none___n
mov ecx, esi
push 0xe
call fcn.00480740
pop eax
mov al, byte [esi + 0xc]
cmp al, 2
je 0x48c1f2
mov ecx, dword [ebp - 0x54]
mov edx, dword [ebp - 0x50]
mov edi, dword [ebp - 0x58]
test al, al
mov dword [ebp - 0x30], ecx
mov dword [ebp - 0x20], edx
jne 0x48c1bb
mov eax, dword [ebp - 0x20]
test eax, eax
je 0x48c1bf
lea ecx, [edi + eax]
mov esi, edi
mov al, byte [esi]
lea edx, [esi + 1]
test al, al
jns 0x48c1b5
cmp al, 0xe0
jae 0x48c177
add esi, 2
cmp edx, ecx
cmovne edx, esi
jmp 0x48c1b5
cmp al, 0xed
jne 0x48c197
cmp edx, ecx
je 0x48c1bb
lea eax, [esi + 2]
cmp eax, ecx
je 0x48c1bb
cmp byte [esi + 1], 0x9f
ja 0x48c598
add esi, 3
mov edx, esi
jmp 0x48c1b5
add esi, 2
cmp edx, ecx
cmove esi, edx
xor edx, edx
cmp esi, ecx
setne dl
add edx, esi
cmp al, 0xf0
jb 0x48c1b5
xor eax, eax
cmp edx, ecx
setne al
add edx, eax
cmp edx, ecx
mov esi, edx
jne 0x48c160
test edi, edi
je 0x48c1f2
lea esi, [ebp - 0x58]
mov edx, edi
mov ecx, esi
push dword [ebp - 0x20]
call fcn.00418da0
pop eax
mov al, byte [esi]
mov ecx, dword [esi + 4]
cmp dword [ebp - 0x30], 0
je 0x48c1ee
xor edx, edx
mov esi, ecx
mov ecx, edi
mov byte [ebp - 0x20], al
inc edx
call fcn.0040edd0
mov al, byte [ebp - 0x20]
mov ecx, esi
test al, al
je 0x48c1f7
mov ecx, 0x200000
lea eax, [ecx + 1]
mov dword [0x5069fc], eax
test ebx, ebx
mov dword [ebp - 0x20], ecx
je 0x48c222
mov esi, dword [ebp - 0x3c]
cmp esi, 7
ja 0x48c226
xor eax, eax
xor ecx, ecx
xor edx, edx
inc ecx
cmp esi, edx
je 0x48c233
cmp byte [ebx + edx], 0
je 0x48c237
inc edx
jmp 0x48c215
xor ecx, ecx
jmp 0x48c259
mov edx, ebx
xor ecx, ecx
push esi
call fcn.004176d0
pop ecx
jmp 0x48c239
mov edx, esi
jmp 0x48c239
mov eax, ecx
test eax, eax
jne 0x48c5de
mov eax, dword [ebp - 0x8c]
lea ecx, [ebp - 0x58]
mov dword [ecx], ebx
mov dword [ecx + 4], eax
mov dword [ecx + 8], esi
call fcn.00410520
mov ecx, eax
call fcn.00479d40
mov dword [ebp - 0x78], eax
lock inc dword [eax]
jle 0x48c5b1
mov ebx, eax
push 0x18
pop ecx
push 4
pop edx
call fcn.00488916
mov esi, eax
xor eax, eax
inc eax
mov dword [esi], eax
mov dword [esi + 4], eax
and dword [esi + 8], 0
and dword [esi + 0xc], 0
mov dword [ebp - 0x7c], esi
lock inc dword [esi]
jle 0x48c5b1
xor ecx, ecx
call fcn.00482950
mov edi, eax
test eax, eax
je 0x48c2af
lock inc dword [edi]
jle 0x48c5b1
mov ecx, edi
jmp 0x48c2b1
xor ecx, ecx
call fcn.00482950
lea ecx, [ebp - 0x58]
mov dword [ecx], eax
call fcn.0048b35c
mov ecx, dword [esi + 8]
test ecx, ecx
je 0x48c2d1
lock inc dword [ecx + 0xc]
jle 0x48c610
push 0x1c
pop ecx
push 4
pop edx
call fcn.00488916
mov dword [eax], ebx
mov dword [eax + 4], esi
mov dword [eax + 8], edi
mov edi, eax
mov eax, dword [ebp - 0x24]
mov dword [ebp - 0x8c], ebx
mov dword [edi + 0xc], eax
mov eax, dword [ebp - 0x28]
mov dword [edi + 0x10], eax
mov eax, dword [ebp - 0x74]
mov dword [edi + 0x14], eax
mov eax, dword [ebp - 0x2c]
mov dword [edi + 0x18], eax
mov al, byte [0x506aa0]
push 8
pop ecx
push 4
pop edx
call fcn.0040ed70
test eax, eax
je 0x48c5ca
mov dword [eax], edi
mov dword [eax + 4], 0x4d3654
push 0
push 0x10000
push eax
push 0x484080
push dword [ebp - 0x20]
push 0
mov ebx, eax
call dword [sym.imp.kernel32.dll_CreateThread]
test eax, eax
je 0x48c34d
mov edi, eax
mov eax, dword [ebp - 0x8c]
jmp 0x48c3a2
mov eax, dword [ebx]
mov ecx, dword [ebx + 4]
mov dword [ebp - 0x24], ebx
mov dword [ebp - 0x10], 1
mov dword [ebp - 0x28], eax
push eax
mov dword [ebp - 0x74], ecx
call dword [ecx]
add esp, 4
mov eax, dword [ebp - 0x74]
cmp dword [eax + 4], 0
je 0x48c37c
mov edx, dword [eax + 8]
mov ecx, dword [ebp - 0x28]
call fcn.0040edd0
push 4
pop edx
mov ecx, dword [ebp - 0x24]
call fcn.0040edd0
call sub.kernel32.dll_GetLastError
lea ecx, [ebp - 0x7c]
mov edi, eax
call fcn.0048742b
lea ecx, [ebp - 0x78]
call fcn.0048741e
xor esi, esi
xor eax, eax
test eax, eax
mov dword [ebp - 0x60], esi
mov dword [ebp - 0x5c], edi
mov dword [ebp - 0x64], eax
je 0x48c4ec
mov esi, dword [ebp - 0x34]
lock inc dword [esi + 0x98]
inc dword [esi + 0x74]
mov ecx, dword [esi + 0x50]
mov edx, dword [esi + 0x54]
push dword [ebp - 0x2c]
push dword [esi + 0x5c]
push dword [esi + 0x58]
call fcn.00488937
add esp, 0xc
cmp dword [esi + 0x48], 0
mov ebx, eax
je 0x48c527
mov edi, dword [esi + 0x44]
mov eax, dword [esi + 0x40]
mov dword [ebp - 0x20], 0
mov dword [ebp - 0x28], 0
mov esi, edi
mov dword [ebp - 0x24], eax
and esi, ebx
shr ebx, 0x19
movd xmm0, ebx
mov dword [ebp - 0x3c], ebx
lea ebx, [eax - 0x10]
punpcklbw xmm0, xmm0
pshuflw xmm0, xmm0, 0
pshufd xmm0, xmm0, 0
movdqu xmmword [ebp - 0x8c], xmm0
movdqu xmm1, xmmword [eax + esi]
pcmpeqb xmm0, xmm1
movdqu xmmword [ebp - 0x74], xmm1
pmovmskb eax, xmm0
mov word [ebp - 0x58], ax
lea ecx, [ebp - 0x58]
call fcn.0041bfb6
test eax, eax
je 0x48c459
add edx, esi
mov ecx, ebx
and edx, edi
mov eax, edx
shl eax, 4
sub ecx, eax
mov eax, dword [ebp - 0x2c]
cmp dword [ecx], eax
jne 0x48c437
jmp 0x48c4b0
cmp dword [ebp - 0x28], 1
mov eax, 1
je 0x48c475
movdqu xmm0, xmmword [ebp - 0x74]
mov ecx, edi
mov edx, esi
call fcn.0041bfd1
mov dword [ebp - 0x30], edx
movdqu xmm1, xmmword [ebp - 0x74]
pcmpeqd xmm0, xmm0
pcmpeqb xmm1, xmm0
pmovmskb ecx, xmm1
test ecx, ecx
jne 0x48c537
mov dword [ebp - 0x28], eax
mov eax, dword [ebp - 0x20]
movdqu xmm0, xmmword [ebp - 0x8c]
lea esi, [eax + esi + 0x10]
add eax, 0x10
mov dword [ebp - 0x20], eax
mov eax, dword [ebp - 0x24]
and esi, edi
jmp 0x48c421
mov ecx, dword [ebp - 0x24]
neg edx
movq xmm1, qword [ebp - 0x64]
shl edx, 4
mov eax, dword [ecx + edx - 4]
mov dword [ebp - 0x50], eax
movsd xmm0, qword [ecx + edx - 0xc]
movsd qword [ebp - 0x58], xmm0
movq qword [ecx + edx - 0xc], xmm1
mov eax, dword [ebp - 0x5c]
mov dword [ecx + edx - 4], eax
mov ebx, dword [ebp - 0x40]
lea ecx, [ebp - 0x58]
call fcn.00487333
jmp 0x48c067
lea esi, [ebp - 0x60]
mov ecx, esi
call fcn.00487cf4
mov ebx, dword [ebp - 0x40]
mov edi, dword [ebp - 0x38]
cmp al, 0xd
jne 0x48c519
mov eax, dword [ebp - 0x34]
mov eax, dword [eax + 0x98]
test eax, eax
je 0x48c519
push esi
call fcn.00487cb8
pop eax
jmp 0x48c07d
movq xmm0, qword [ebp - 0x60]
movq qword [ebx], xmm0
jmp 0x48c080
lea ecx, [esi + 0x40]
lea edx, [esi + 0x50]
call fcn.004a7e44
jmp 0x48c3e3
mov edx, dword [ebp - 0x24]
mov esi, dword [ebp - 0x30]
mov al, byte [edx + esi]
test al, al
js 0x48c552
movdqa xmm0, xmmword [edx]
pmovmskb eax, xmm0
bsf esi, eax
mov al, byte [edx + esi]
mov ecx, dword [ebp - 0x34]
and al, 1
mov ebx, dword [ebp - 0x3c]
movzx eax, al
sub dword [ecx + 0x48], eax
lea eax, [esi - 0x10]
mov byte [edx + esi], bl
shl esi, 4
and eax, edi
mov byte [eax + edx + 0x10], bl
inc dword [ecx + 0x4c]
mov ecx, dword [ebp - 0x2c]
mov eax, edx
sub eax, esi
neg esi
mov dword [eax - 0x10], ecx
movsd xmm0, qword [ebp - 0x64]
movsd qword [edx + esi - 0xc], xmm0
mov ecx, dword [ebp - 0x5c]
mov dword [eax - 4], ecx
and dword [ebp - 0x58], 0
jmp 0x48c4dc
cmp dword [ebp - 0x30], 0
je 0x48c1f2
xor edx, edx
mov ecx, edi
inc edx
call fcn.0040edd0
jmp 0x48c1f2
ud2
push 0x2e
pop edx
mov ecx, str.assertion_failed:_shared.shutdown_tx.is_some__C:Usersuser.cargo_registry_srcindex.crates.io_6f17d22bba15001f_tokio_1.36.0_src_runtime_blockingpool.rs
push 0x4d5af8
call fcn.004a5340
pop eax
ud2
and dword [ebp - 0x10], 0
mov dword [ebp - 0x2c], edi
push 4
pop ecx
push 8
pop edx
call fcn.004a4fb0
ud2
mov eax, dword [ebp - 0x8c]
mov dword [ebp - 0x58], ebx
mov dword [ebp - 0x54], eax
mov dword [ebp - 0x50], esi
mov dword [ebp - 0x4c], edx
push 0x2f
pop edx
mov ecx, str.thread_name_may_not_contain_interior_null_bytes
push 0x4d3644
push 0x4d3938
lea eax, [ebp - 0x58]
push eax
call fcn.004a55f0
add esp, 0xc
ud2
add ecx, 8
xor edx, edx
call fcn.0047c8d0
lea ecx, [ebp - 0x58]
mov edx, 0x4d134c
mov dword [ecx], str.too_many_running_threads_in_thread_scope
mov dword [ecx + 4], 1
and dword [ecx + 0x10], 0
mov dword [ecx + 8], 0x4fa19c
and dword [ecx + 0xc], 0
call fcn.004a51c0
ud2