Function at 0x41b700
Capabilities:
Link many functions at runtime

Disassembly:
push ebp
mov ebp, esp
and esp, 0xfffffff8
sub esp, 0x78
push ebx
push ebp
push esi
mov edx, ecx
mov ecx, dword [0x24b1808]
push edi
call fcn.0041adf0
cmp dword [0x4b0ee8], 0
mov ebx, eax
mov esi, dword [0x4b0dc8]
mov dword [esp + 0x10], esi
je 0x41b73a
test esi, esi
jne 0x41b73a
xor ecx, ecx
call fcn.0041c7b0
test ebx, ebx
je 0x41b9e4
mov ebp, dword [sym.imp.KERNEL32.dll_GetProcAddress]
push 0x4a0a20
push ebx
call ebp
lea ecx, [esp + 0x18]
mov dword [0x4af150], eax
push ecx
call eax
movzx eax, word [esp + 0x1e]
add esp, 4
dec eax
cmp eax, 3
ja case.default.0x41b76e
jmp dword [eax*4 + 0x41ba0c]
cmp dword [0x4b0ee8], 0
jne 0x41b7e3
push 0x4a0a2c
push ebx
call ebp
movups xmm0, xmmword [0x24b1900]
sub esp, 0x3c
mov edx, eax
mov eax, dword [0x24b1938]
mov ecx, esp
mov dword [0x4ab9fc], edx
movups xmmword [ecx], xmm0
movups xmm0, xmmword [0x24b1910]
movups xmmword [ecx + 0x10], xmm0
movups xmm0, xmmword [0x24b1920]
movups xmmword [ecx + 0x20], xmm0
movq xmm0, qword [0x24b1930]
movq qword [ecx + 0x30], xmm0
mov dword [ecx + 0x38], eax
call edx
add esp, 0x3c
test eax, eax
jne 0x41b7e3
push eax
push str.Info
push str.Failed_to_initialize_audio_plugin.
push eax
call dword [sym.imp.USER32.dll_MessageBoxA]
push 0x4a0a60
push ebx
call ebp
mov dword [0x4af154], eax
test eax, eax
je 0x41b7ff
push dword [0x4b0ee4]
call eax
add esp, 4
cmp dword [0x4b0ee8], 0
jne 0x41b9ed
push 0x4a0a6c
push ebx
call ebp
mov dword [fcn.0040c6a0], eax
test eax, eax
je 0x41b9e4
call eax
jmp 0x41b9e4
cmp dword [0x4b0ee8], 0
jne 0x41b86e
push 0x4a0a78
push ebx
call ebp
sub esp, 0x7c
mov dword [0x4aba2c], eax
mov ecx, 0x1f
mov esi, 0x24b1a18
mov edi, esp
rep movsd dword es:[edi], dword [esi]
call eax
add esp, 0x7c
test eax, eax
jne 0x41b86a
push eax
push str.Info
push str.Failed_to_initiate_gfx_plugin.
push eax
call dword [sym.imp.USER32.dll_MessageBoxA]
mov esi, dword [esp + 0x10]
push 0x4a0aa4
push ebx
call ebp
mov dword [0x4af154], eax
test eax, eax
je 0x41b88a
push dword [0x4b0ee4]
call eax
add esp, 4
cmp dword [0x4b0ee8], 0
jne 0x41b9ed
push 0x4a0ab0
push ebx
call ebp
mov dword [fcn.0040c6a0], eax
test eax, eax
je 0x41b9e4
call eax
jmp 0x41b9e4
cmp dword [0x4b0ee8], 0
jne 0x41b911
mov eax, 0x101
cmp word [esp + 0x18], ax
jne 0x41b8f4
push 0x4a0abc
push ebx
call ebp
movups xmm0, xmmword [0x24b17ac]
mov ecx, dword [0x24b17bc]
sub esp, 0x14
mov edx, esp
mov dword [fcn.0040c6a0], eax
movups xmmword [edx], xmm0
mov dword [edx + 0x10], ecx
call eax
add esp, 0x14
jmp 0x41b911
push 0x4a0ad0
push ebx
call ebp
push 0x4af120
push dword [0x4b09c4]
mov dword [0x4b1548], eax
call eax
add esp, 8
push 0x4a0ae4
push ebx
call ebp
mov dword [0x4af154], eax
test eax, eax
je 0x41b92d
push dword [0x4b0ee4]
call eax
add esp, 4
cmp dword [0x4b0ee8], 0
jne 0x41b9ed
push 0x4a0af0
push ebx
call ebp
mov dword [fcn.0040c6a0], eax
test eax, eax
je 0x41b9e4
call eax
jmp 0x41b9e4
cmp dword [0x4b0ee8], 0
jne 0x41b98e
push 0x4a0afc
push ebx
call ebp
lea ecx, [esp + 0x14]
mov dword [fcn.0040c6a0], eax
push ecx
sub esp, 0x70
mov ecx, 0x1c
mov esi, 0x24b1818
mov edi, esp
rep movsd dword es:[edi], dword [esi]
call eax
mov esi, dword [esp + 0x84]
add esp, 0x74
push 0x4a0b08
push ebx
call ebp
mov dword [0x4af154], eax
test eax, eax
je 0x41b9aa
push dword [0x4b0ee4]
call eax
add esp, 4
cmp dword [0x4b0ee8], 0
jne 0x41b9ed
push 0x4a0b14
push ebx
call ebp
mov dword [fcn.0040c6a0], eax
test eax, eax
je 0x41b9e4
call eax
jmp 0x41b9e4
push 0x4a0b20
push ebx
call ebp
mov dword [0x4af154], eax
test eax, eax
je 0x41b9e4
push dword [0x4b0ee4]
call eax
add esp, 4
cmp dword [0x4b0ee8], 0
je 0x41ba01
cmp dword [0x4b0dc8], 0
je 0x41ba01
test esi, esi
jne 0x41ba01
xor ecx, ecx
call fcn.0041c6f0
pop edi
pop esi
pop ebp
pop ebx
mov esp, ebp
pop ebp
ret