Function at 0x402890
Capabilities:
Access peb ldr_data
Get ntdll base address
Resolve function by parsing pe exports

Disassembly:
push ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x412fd2
mov eax, dword fs:[0]
push eax
sub esp, 0x16c
push esi
push edi
mov eax, dword [0x41a634]
xor eax, ebp
push eax
lea eax, [ebp - 0xc]
mov dword fs:[0], eax
mov esi, ecx
mov dword [ebp - 0x10], esi
call sub.MSVCP140.dll__Thrd_hardware_concurrency
mov edx, 4
mov dword [esi + 4], 1
cmp eax, edx
mov dword [esi + 8], 0
push 0
cmovl edx, eax
mov dword [esi + 0xc], 0
lea eax, [ebp - 0x178]
mov dword [esi], edx
push eax
mov dword [esi + 0x10], 0
mov dword [esi + 0x14], 5
mov dword [esi + 0x18], 0xffffffff
mov dword [esi + 0x1c], 0
call dword [sym.imp.whisper.dll_whisper_full_default_params]
mov esi, eax
lea edi, [ebp - 0xc4]
mov ecx, 0x2d
rep movsd dword es:[edi], dword [esi]
mov ecx, dword [ebp - 0x10]
mov eax, dword [ebp - 0x54]
push 1
mov dword [ecx + 0x20], eax
lea eax, [ebp - 0x178]
push eax
call dword [sym.imp.whisper.dll_whisper_full_default_params]
vmovss xmm0, dword [0x415da4]
mov esi, eax
lea edi, [ebp - 0xc4]
mov ecx, 0x2d
add esp, 0x10
rep movsd dword es:[edi], dword [esi]
mov edi, dword [ebp - 0x10]
mov eax, dword [ebp - 0x50]
vmovss dword [edi + 0x28], xmm0
vmovss xmm0, dword [0x415db8]
vmovss dword [edi + 0x2c], xmm0
vmovss xmm0, dword [0x415dcc]
vmovss dword [edi + 0x30], xmm0
mov dword [edi + 0x24], eax
mov eax, 0x6e65
mov dword [edi + 0x34], 0
mov dword [edi + 0x38], 0
mov dword [edi + 0x3c], 0
mov dword [edi + 0x40], 0
mov dword [edi + 0x44], 0
mov word [edi + 0x48], 0x100
vpxor xmm0, xmm0, xmm0
vmovdqu xmmword [edi + 0x4c], xmm0
mov dword [edi + 0x5c], 2
mov dword [edi + 0x60], 0xf
mov word [edi + 0x4c], ax
mov byte [edi + 0x4e], 0
vmovdqu xmmword [edi + 0x64], xmm0
mov dword [edi + 0x74], 0
mov dword [edi + 0x78], 0xf
mov dword [ebp - 4], 0
mov byte [edi + 0x64], 0
vmovdqu xmmword [edi + 0x7c], xmm0
push 0x40
lea ecx, [edi + 0x7c]
mov byte [ebp - 4], 1
mov dword [edi + 0x8c], 0
mov dword [edi + 0x90], 0xf
call fcn.00403b50
mov edx, eax
mov dword [edi + 0x8c], 0x37
mov dword [edi + 0x7c], edx
mov dword [edi + 0x90], 0x3f
vmovdqu ymm0, ymmword [str._System_Library_Fonts_Supplemental_Courier_New_Bold.ttf]
vmovdqu ymmword [edx], ymm0
vmovdqu xmm0, xmmword [0x415d38]
vmovdqu xmmword [edx + 0x20], xmm0
mov ecx, dword [0x415d48]
mov dword [edx + 0x30], ecx
movzx eax, word [0x415d4c]
mov word [edx + 0x34], ax
movzx eax, byte [0x415d4e]
mov byte [edx + 0x36], al
mov byte [edx + 0x37], 0
lea esi, [edi + 0x94]
mov byte [ebp - 4], 2
vpxor xmm0, xmm0, xmm0
vmovdqu xmmword [esi], xmm0
mov dword [esi + 0x10], 0
mov ecx, esi
mov dword [esi + 0x14], 0xf
push 0x20
vzeroupper
call fcn.00403b50
mov edx, eax
mov dword [esi + 0x10], 0x17
mov dword [esi], edx
mov dword [esi + 0x14], 0x1f
vmovdqu xmm0, xmmword [str.models_ggml_base.en.bin]
vmovdqu xmmword [edx], xmm0
mov ecx, dword [0x415d60]
mov dword [edx + 0x10], ecx
mov cx, word [0x415d64]
mov word [edx + 0x14], cx
movzx eax, byte [0x415d66]
mov byte [edx + 0x16], al
mov byte [edx + 0x17], 0
vpxor xmm0, xmm0, xmm0
vmovdqu xmmword [edi + 0xac], xmm0
mov dword [edi + 0xbc], 0xf
mov dword [edi + 0xc0], 0xf
vmovq xmm0, qword [str.__SPEAKER_TURN_]
vmovq qword [edi + 0xac], xmm0
mov eax, dword [0x415d70]
mov dword [edi + 0xb4], eax
movzx eax, word [0x415d74]
mov word [edi + 0xb8], ax
movzx eax, byte [0x415d76]
mov byte [edi + 0xba], al
mov byte [edi + 0xbb], 0
vpxor xmm0, xmm0, xmm0
vmovdqu xmmword [edi + 0xc4], xmm0
mov dword [edi + 0xd4], 3
mov dword [edi + 0xd8], 0xf
movzx eax, word [0x415d78]
mov word [edi + 0xc4], ax
movzx eax, byte [0x415d7a]
mov byte [edi + 0xc6], al
mov eax, edi
mov byte [edi + 0xc7], 0
mov dword [edi + 0xdc], 0
mov dword [edi + 0xe0], 0
mov dword [edi + 0xe4], 0
mov dword [edi + 0xe8], 0
mov dword [edi + 0xec], 0
mov dword [edi + 0xf0], 0
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
mov esp, ebp
pop ebp
ret