Function at 0x41c460
Capabilities:
Resolve function by parsing pe exports

Disassembly:
push ebx
push esi
push ebp
sub esp, 0x70
mov eax, dword [esp + 0x8c]
mov dword [esp + 0x18], eax
mov edx, dword [esp + 0x88]
movzx eax, byte [0xa10afb]
mov ebp, dword [esp + 0x80]
mov dword [esp + 0x1c], edx
push eax
call fcn.004bc0a0
fld dword [eax]
fstp dword [esp + 0x14]
fld dword [eax + 4]
xor esi, esi
xor bl, bl
fstp dword [esp + 0x18]
pop ecx
jmp 0x41c532
lea eax, [esp + 0x68]
lea ecx, [esp + 0x54]
lea edx, [esp + 0x64]
push 0
push ecx
push eax
lea eax, [esp + 0x64]
push edx
mov ecx, 0x9b6e5c
push eax
push 1
push dword [0x687038]
push dword [0x68703c]
push dword [0x687040]
push dword [0x687040]
push dword [esp + 0x3c]
push dword [esp + 0x3c]
call fcn.004382b0
test al, al
je 0x41c531
mov ecx, dword [esp + 0x64]
lea ecx, [ecx + ecx*4]
mov al, byte [ecx*4 + 0x9b6e6d]
and al, 1
jne 0x41c531
lea eax, [esp + 0x6e]
push 0
push 0
push 1
push 1
push 0
push 0
push 2
push eax
lea eax, [esp + 0x78]
push 1
push dword [0x687044]
push eax
call fcn.004d6370
add esp, 0x2c
cmp word [esp + 0x6e], 0
jne 0x41c531
mov bl, 1
inc esi
test bl, bl
jne 0x41c540
cmp si, 5
jl 0x41c4a7
cmp si, 5
jge 0x41c8e8
push 0x5dc
call fcn.005bab20
mov ebx, eax
pop ecx
test ebx, ebx
je 0x41c567
mov ecx, ebx
push 1
push ebp
call fcn.0059e620
mov ebx, eax
fldz
fldz
fld dword [esp + 0x84]
fstp dword [ebx + 0x16c]
fld dword [esp + 0x1c]
fstp dword [ebx + 0x170]
fld dword [esp + 0x18]
fstp dword [ebx + 0x174]
fld dword [esp + 0x60]
fstp st(1)
fld dword [esp + 0x5c]
fstp st(2)
fld dword [esp + 0x58]
fstp dword [ebx + 0x34]
fld st(1)
fstp dword [ebx + 0x38]
fst dword [ebx + 0x3c]
fcompp
push 0
push dword [ebx + 0x174]
push dword [ebx + 0x170]
push dword [ebx + 0x16c]
push ebx
call fcn.0041ceb0
add esp, 0x14
test al, al
fldz
fldz
fldz
fldz
je 0x41c5e0
mov byte [ebx + 0x156], 9
jmp 0x41c5e7
mov byte [ebx + 0x156], 8
mov byte [ebx + 0x160], 0x19
movsx eax, byte [ebx + 0x160]
mov dword [esp + 0x20], eax
fild dword [esp + 0x20]
fstp dword [ebx + 0x15c]
mov byte [ebx + 0x157], 0
mov byte [ebx + 0x155], 2
fld dword [ebx + 0x170]
fsub dword [esp + 0x5c]
fstp st(3)
fld dword [ebx + 0x16c]
fsub dword [esp + 0x58]
fstp st(4)
fld st(3)
fstp st(2)
fld st(2)
fstp st(1)
fld st(2)
fmul st(0)
fld st(4)
fmul st(0)
faddp st(1)
fsqrt
fstp dword [esp + 0x20]
fld dword [esp + 0x20]
fstp st(4)
fld dword [0x687048]
fcomp st(4)
fnstsw ax
and ah, 0x44
cmp ah, 0x40
jne 0x41c663
fld dword [0x68704c]
fstp st(2)
jmp 0x41c669
fld st(3)
fdivp st(2)
fdiv st(3)
fld st(1)
mov eax, 4
fstp dword [ebx + 0x14]
fst dword [ebx + 0x18]
mov dword [ebx + 0x1c], 0
add eax, ebx
fst dword [ebx + 4]
fld st(1)
fchs
fstp dword [eax + 4]
mov dword [ebx + 0xc], 0
mov dword [ebx + 0x24], 0
mov dword [ebx + 0x28], 0
mov dword [ebx + 0x2c], 0x3f800000
mov esi, dword [esp + 0x68]
mov ecx, dword [esp + 0x64]
lea esi, [esi + esi*4]
lea edx, [esp + 0x28]
lea esi, [esi*4]
add esi, 0x9b6e5c
movsx eax, word [esi + 8]
push 0
push 0
mov dword [esp + 0x28], eax
lea ecx, [ecx + ecx*4]
fild dword [esp + 0x28]
lea ecx, [ecx*4]
add ecx, 0x9b6e5c
fmul dword [0x687050]
movsx eax, word [ecx + 8]
push 1
fstp st(3)
mov dword [esp + 0x2c], eax
lea eax, [esp + 0x38]
fild dword [esp + 0x2c]
push 0
push 0
fmul dword [0x687050]
push 0
push 1
fstp st(4)
fld dword [esp + 0x70]
fmul st(3)
fld dword [0x68704c]
fsub dword [esp + 0x70]
push edx
push eax
lea eax, [esp + 0x7c]
fmul st(5)
faddp st(1)
fstp dword [esp + 0x84]
fld dword [0x687054]
fstp dword [esp + 0x28]
fcompp
fcompp
push dword [0x687058]
push eax
call fcn.004d8b00
add esp, 0x2c
test al, al
je 0x41c755
mov eax, dword [esp + 0x34]
mov dword [esp + 4], eax
lea eax, [esp + 0x2c]
lea esi, [esp + 0x28]
push 0
push 0
push 1
push 0
push 0
push 0
push 1
push esi
push eax
lea eax, [esp + 0x7c]
push dword [0x68705c]
push eax
call fcn.004d8b00
add esp, 0x2c
test al, al
fldz
fldz
fldz
je 0x41c7ee
fld dword [esp + 0x34]
fstp st(1)
fld dword [esp + 0x60]
fstp st(2)
fld st(0)
fsub st(2)
fstp st(3)
fld st(2)
fcomp dword [0x687048]
fnstsw ax
and ah, 5
cmp ah, 1
jne 0x41c7b4
fld st(2)
fchs
jmp 0x41c7b6
fld st(2)
fstp st(3)
fld dword [esp + 4]
fsub st(2)
fstp st(2)
fld st(1)
fcomp dword [0x687048]
fnstsw ax
and ah, 5
cmp ah, 1
jne 0x41c7d8
fld st(1)
fchs
jmp 0x41c7da
fld st(1)
fstp st(2)
fld st(2)
fcomp st(2)
fnstsw ax
and ah, 5
cmp ah, 1
jne 0x41c7ee
fst dword [esp + 4]
fld dword [0x687054]
fcomp dword [esp + 4]
fnstsw ax
and ah, 0x44
cmp ah, 0x40
jne 0x41c820
test ebx, ebx
je 0x41c8f1
fcompp
mov ecx, ebx
mov ebp, dword [ecx]
push 1
fstp st(0)
call dword [ebp + 8]
xor al, al
add esp, 0x70
pop ebp
pop esi
pop ebx
ret
fcompp
mov ecx, ebx
fstp st(0)
call fcn.00487d10
fadd dword [esp + 4]
mov eax, dword [esp + 0x5c]
mov ecx, ebp
mov dword [esp + 8], eax
fstp dword [esp + 0x60]
fld dword [esp + 0x58]
mov edx, dword [esp + 0x60]
mov dword [esp + 0xc], edx
fstp dword [ebx + 0x34]
fld dword [esp + 8]
fstp dword [ebx + 0x38]
fld dword [esp + 0xc]
fstp dword [ebx + 0x3c]
mov dword [ebx + 0x70], 0
mov dword [ebx + 0x74], 0
mov dword [ebx + 0x78], 0
mov al, byte [ebx + 0x50]
and al, 7
or al, 0x18
mov byte [ebx + 0x50], al
lea eax, [ebp - 0x89]
cmp eax, 9
ja case.0x41c884.138
jmp dword [eax*4 + 0x687268]
mov al, byte [ebx + 0x1f9]
push ebx
and al, 0xfd
or al, 2
mov byte [ebx + 0x1f9], al
inc dword [0x974be4]
call fcn.00419b90
jmp 0x41c8c5
mov al, byte [ebx + 0x1f9]
push ebx
and al, 0xfb
or al, 4
mov byte [ebx + 0x1f9], al
inc dword [0xa0d240]
call fcn.00419b70
pop ecx
push ebx
mov byte [ebx + 0x245], 1
call fcn.004db3f0
pop ecx
push str.CREATED_EMERGENCY_VEHICLE_n
call fcn.00648ac0
pop ecx
mov al, 1
add esp, 0x70
pop ebp
pop esi
pop ebx
ret
xor al, al
add esp, 0x70
pop ebp
pop esi
pop ebx
ret
fcompp
fstp st(0)
jmp 0x41c817