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

Disassembly:
mov eax, 0x2468
call fcn.005182b0
mov eax, dword [0x1300018]
push ebx
push ebp
xor ebp, ebp
push esi
cmp eax, ebp
mov eax, dword [0x12ff7a0]
push edi
mov dword [0x7d1e00], ebp
je 0x4a8732
mov ecx, dword [eax + 0x404]
xor edi, edi
cmp ecx, ebp
jle 0x4a8732
mov eax, dword [eax + 0x408]
xor ecx, ecx
mov cl, byte [eax + edi*4]
lea esi, [eax + edi*4]
mov dword [esp + 0x14], ecx
fild dword [esp + 0x14]
fmul dword [0x130001c]
call fcn.00516e2c
xor edx, edx
mov dword [esp + 0x10], eax
mov dl, byte [esi + 1]
mov dword [esp + 0x14], edx
fild dword [esp + 0x14]
fmul dword [0x130001c]
call fcn.00516e2c
mov ebx, eax
xor eax, eax
mov al, byte [esi + 2]
mov dword [esp + 0x20], ebx
mov dword [esp + 0x14], eax
fild dword [esp + 0x14]
fmul dword [0x130001c]
call fcn.00516e2c
mov edx, dword [esp + 0x10]
mov ecx, eax
or ecx, ebx
mov dword [esp + 0x24], eax
or ecx, edx
test ecx, 0xffffff00
je 0x4a86fe
sub edx, ebx
mov ecx, edx
sar ecx, 0x1f
not ecx
and ecx, edx
sub ecx, eax
add ecx, ebx
mov edx, ecx
sar edx, 0x1f
not edx
and edx, ecx
add edx, eax
mov dword [esp + 0x14], edx
fild dword [esp + 0x14]
fdivr dword [0x531c1c]
fild dword [esp + 0x10]
fmul st(1)
call fcn.00516e2c
fild dword [esp + 0x20]
mov dword [esp + 0x10], eax
fmul st(1)
call fcn.00516e2c
fild dword [esp + 0x24]
mov ebx, eax
fmul st(1)
call fcn.00516e2c
mov edx, dword [esp + 0x10]
fstp st(0)
mov byte [esi], dl
mov ecx, dword [0x12ff7a0]
inc edi
mov edx, dword [ecx + 0x408]
mov byte [edx + edi*4 - 3], bl
mov ecx, dword [0x12ff7a0]
mov edx, dword [ecx + 0x408]
mov byte [edx + edi*4 - 2], al
mov eax, dword [0x12ff7a0]
cmp edi, dword [eax + 0x404]
jl 0x4a8638
mov edx, dword [eax + 0x40c]
mov ecx, dword [eax + 0x410]
cmp edx, ebp
mov dword [esp + 0x14], ebp
jle 0x4a8c2a
lea ebp, [esp + 0x78]
lea ebx, [ecx + 0xbc]
sub ebp, ecx
mov dword [esp + 0x2c], ebx
sub ebp, 0xc
mov dword [esp + 0x34], ebp
jmp 0x4a8767
mov ebp, dword [esp + 0x34]
lea eax, [ebx - 0xc]
push ebx
lea ecx, [ebx - 0x18]
push eax
lea edx, [ebx - 0x24]
push ecx
push edx
mov dword [ebx - 0xb4], 0
call fcn.00458be0
mov edi, str.models
or ecx, 0xffffffff
xor eax, eax
lea esi, [ebx - 0xb0]
repne scasb al, byte es:[edi]
not ecx
dec ecx
push ecx
push str.models
push esi
call fcn.00529a30
add esp, 0x1c
test eax, eax
je 0x4a87c0
push esi
lea eax, [esp + 0x7c]
push str.models__s
push eax
call fcn.00516c8e
add esp, 0xc
jmp 0x4a87cc
mov eax, esi
mov cl, byte [eax]
mov byte [eax + ebp], cl
inc eax
test cl, cl
jne 0x4a87c2
lea ecx, [esp + 0x78]
push ecx
call fcn.004524f0
lea edx, [esp + 0x7c]
push edx
call fcn.0050d3f0
test eax, eax
lea eax, [esp + 0x80]
push eax
setne byte [esp + 0x2b]
call fcn.0050dc60
mov ebp, eax
xor edi, edi
add esp, 0xc
cmp ebp, edi
mov dword [esp + 0x20], ebp
mov dword [ebx + 0x1c], ebp
jne 0x4a8820
lea ecx, [esp + 0x78]
push ecx
push str.:_Warning:_Cannot_Load_Static_Model__s_n
push 3
call dword [0x12ff6a0]
add esp, 0xc
jmp 0x4a8bf6
push ebp
call fcn.0050fc00
fstp dword [ebx + 0x224]
mov eax, dword [ebp + 0xc]
add esp, 4
cmp eax, edi
mov dword [esp + 0x10], edi
jle 0x4a88dd
mov dword [esp + 0x18], edi
mov esi, dword [ebp + 0x10]
mov ecx, dword [esp + 0x18]
add esi, ecx
xor ebx, ebx
cmp dword [esi + 0x150], edi
jle 0x4a88b7
lea ebp, [esi + 0x140]
lea edi, [esi + 0x40]
cmp byte [edi], 0
jne 0x4a886c
mov dword [ebp], 0
jmp 0x4a88a0
mov ecx, dword [esi + 0x154]
mov edx, 1
test dl, ch
je 0x4a887d
xor edx, edx
test ch, 2
mov eax, 1
je 0x4a8889
xor eax, eax
push 1
push 1
push eax
push edx
push 0xffffffffffffffff
push edi
call fcn.0049d500
mov edx, dword [eax + 0x44]
add esp, 0x18
mov dword [ebp], edx
mov eax, dword [esi + 0x150]
inc ebx
add edi, 0x40
add ebp, 4
cmp ebx, eax
jl 0x4a885e
mov ebp, dword [esp + 0x20]
xor edi, edi
mov eax, dword [esp + 0x10]
mov edx, dword [esp + 0x18]
mov ecx, dword [ebp + 0xc]
inc eax
add edx, 0x15c
cmp eax, ecx
mov dword [esp + 0x10], eax
mov dword [esp + 0x18], edx
jl 0x4a8842
mov ebx, dword [esp + 0x2c]
lea eax, [esp + 0x60]
lea ecx, [esp + 0x6c]
push eax
lea edx, [esp + 0x3c]
push ecx
mov ecx, dword [ebx + 0x1c]
lea eax, [esp + 0x480]
push edx
push eax
push ecx
call fcn.00505a90
fld dword [ebx + 0xc]
fmul dword [ebp + 0x14]
mov al, byte [esp + 0x33]
add esp, 0x14
test al, al
fmul dword [esp + 0x38]
fstp dword [ebx + 0x228]
jne 0x4a8bf6
mov eax, dword [ebp + 0x1d4]
mov dword [esp + 0x18], edi
cmp eax, edi
jle 0x4a8bf6
lea edx, [ebp + 0x1d8]
mov dword [esp + 0x30], edx
mov eax, dword [esp + 0x30]
movsx ecx, word [eax]
push ecx
call fcn.00512800
mov ebx, eax
add esp, 4
cmp ebx, edi
mov dword [esp + 0x28], ebx
jne 0x4a896c
lea edx, [esp + 0x78]
push edx
push str.:_Warning:_Missing_mesh_in_Static_Model__s_n
push 3
call dword [0x12ff6a0]
add esp, 0xc
jmp 0x4a8bd0
mov eax, dword [ebx + 0x44]
mov esi, dword [ebx + 0x50]
cmp eax, edi
mov dword [esp + 0x20], edi
jle 0x4a8bd0
cmp dword [esi + 0x4c], edi
jne 0x4a8bbc
mov eax, dword [esi + 0x48]
lea eax, [eax + eax*2]
shl eax, 4
push eax
call dword [0x12ff764]
mov edx, dword [esi + 0x48]
mov dword [esi + 0x4c], eax
mov ecx, edx
add esp, 4
shl ecx, 4
add eax, ecx
mov dword [esp + 0x10], edi
add ecx, eax
mov dword [esi + 0x50], eax
mov eax, dword [esi + 0x5c]
cmp edx, edi
mov dword [esi + 0x54], ecx
jle 0x4a8bb9
mov ecx, dword [esp + 0x18]
mov edx, dword [eax + 0x1c]
test ecx, ecx
jle 0x4a8a0b
mov ebx, dword [ebx + 0x4c]
lea ecx, [edx*8]
sub ecx, edx
movsx ecx, word [ebx + ecx*8]
mov dword [esp + 0x24], ecx
mov ecx, dword [ebp + 0x40]
test ecx, ecx
je 0x4a89ff
movsx ebx, word [ebp + 0x3e]
cmp dword [esp + 0x24], ebx
jge 0x4a89ff
mov ebx, dword [esp + 0x24]
mov cx, word [ecx + ebx*2]
mov ebx, dword [esp + 0x28]
movsx ecx, cx
jmp 0x4a8a0d
mov ebx, dword [esp + 0x28]
or ecx, 0xffffffff
movsx ecx, cx
jmp 0x4a8a0d
mov ecx, edx
shl ecx, 6
fld dword [esp + ecx + 0x4a8]
fmul dword [eax + 0x2c]
fld dword [esp + ecx + 0x498]
lea ecx, [esp + ecx + 0x478]
fmul dword [eax + 0x28]
faddp st(1)
fld dword [ecx + 0x10]
fmul dword [eax + 0x24]
faddp st(1)
fld dword [ecx + 0x34]
fmul dword [eax + 0x2c]
fld dword [ecx + 0x24]
fmul dword [eax + 0x28]
faddp st(1)
fld dword [ecx + 0x14]
fmul dword [eax + 0x24]
faddp st(1)
fstp dword [esp + 0x40]
fld dword [ecx + 0x38]
fmul dword [eax + 0x2c]
fld dword [ecx + 0x28]
fmul dword [eax + 0x28]
faddp st(1)
fld dword [ecx + 0x18]
fmul dword [eax + 0x24]
faddp st(1)
fstp dword [esp + 0x44]
fadd dword [ecx]
fmul dword [eax + 0x20]
fld dword [esp + 0x40]
fadd dword [ecx + 4]
fmul dword [eax + 0x20]
fstp dword [esp + 0x4c]
fld dword [esp + 0x44]
fadd dword [ecx + 8]
mov ecx, dword [esp + 0x18]
test ecx, ecx
fmul dword [eax + 0x20]
fstp dword [esp + 0x50]
jle 0x4a8ae7
lea ecx, [edx*8]
sub ecx, edx
mov edx, dword [ebx + 0x4c]
movsx edx, word [edx + ecx*8]
mov ecx, dword [ebp + 0x40]
test ecx, ecx
je 0x4a8abb
movsx ebx, word [ebp + 0x3e]
cmp edx, ebx
mov ebx, dword [esp + 0x28]
jge 0x4a8abb
mov cx, word [ecx + edx*2]
jmp 0x4a8abe
or ecx, 0xffffffff
movsx ecx, cx
shl ecx, 6
fld dword [esp + ecx + 0x4a8]
fmul dword [eax + 8]
fld dword [esp + ecx + 0x498]
lea ecx, [esp + ecx + 0x488]
fmul dword [eax + 4]
faddp st(1)
fld dword [eax]
fmul dword [ecx]
jmp 0x4a8b0b
shl edx, 6
fld dword [esp + edx + 0x4a8]
fmul dword [eax + 8]
fld dword [esp + edx + 0x498]
lea ecx, [esp + edx + 0x488]
fmul dword [eax + 4]
faddp st(1)
fld dword [ecx]
fmul dword [eax]
faddp st(1)
fld dword [ecx + 0x24]
fmul dword [eax + 8]
fld dword [ecx + 0x14]
fmul dword [eax + 4]
mov edx, dword [esi + 0x4c]
add eax, 0x30
add edi, 0x10
faddp st(1)
fld dword [ecx + 4]
fmul dword [eax - 0x30]
faddp st(1)
fld dword [ecx + 0x28]
fmul dword [eax - 0x28]
fld dword [ecx + 0x18]
fmul dword [eax - 0x2c]
faddp st(1)
fld dword [ecx + 8]
fmul dword [eax - 0x30]
faddp st(1)
fstp dword [esp + 0x5c]
fxch st(2)
fstp dword [edi + edx - 0x10]
mov ecx, dword [esi + 0x4c]
fld dword [esp + 0x4c]
fstp dword [edi + ecx - 0xc]
mov edx, dword [esi + 0x4c]
fld dword [esp + 0x50]
fstp dword [edi + edx - 8]
mov ecx, dword [esi + 0x50]
fstp dword [edi + ecx - 0x10]
mov edx, dword [esi + 0x50]
fstp dword [edx + edi - 0xc]
mov ecx, dword [esi + 0x50]
fld dword [esp + 0x5c]
fstp dword [ecx + edi - 8]
mov edx, dword [esi + 0x54]
mov ecx, dword [eax - 0x24]
mov dword [edi + edx - 0x10], ecx
mov edx, dword [esi + 0x54]
mov ecx, dword [eax - 0x20]
mov dword [edx + edi - 0xc], ecx
mov edx, dword [esi + 0x54]
mov ecx, dword [eax - 0x24]
mov dword [edx + edi - 8], ecx
mov edx, dword [esi + 0x54]
mov ecx, dword [eax - 0x20]
mov dword [edx + edi - 4], ecx
mov ecx, dword [esp + 0x10]
mov edx, dword [esi + 0x48]
inc ecx
cmp ecx, edx
mov dword [esp + 0x10], ecx
jl 0x4a89be
xor edi, edi
mov esi, dword [esi + 0x64]
mov eax, dword [esp + 0x20]
mov ecx, dword [ebx + 0x44]
inc eax
cmp eax, ecx
mov dword [esp + 0x20], eax
jl 0x4a897e
mov eax, dword [esp + 0x18]
mov edx, dword [esp + 0x30]
mov ecx, dword [ebp + 0x1d4]
inc eax
add edx, 2
cmp eax, ecx
mov dword [esp + 0x18], eax
mov dword [esp + 0x30], edx
jl 0x4a8938
mov ebx, dword [esp + 0x2c]
mov eax, dword [0x12ff7a0]
mov ecx, dword [esp + 0x14]
mov edi, dword [esp + 0x34]
inc ecx
mov edx, dword [eax + 0x40c]
sub edi, 0x2f4
add ebx, 0x2f4
cmp ecx, edx
mov dword [esp + 0x14], ecx
mov dword [esp + 0x34], edi
mov dword [esp + 0x2c], ebx
jl 0x4a8763
mov edx, dword [eax + 0x40c]
pop edi
mov dword [0x1300208], edx
mov ecx, dword [eax + 0x410]
mov dword [0x130020c], ecx
mov edx, dword [eax + 0x404]
mov dword [0x1300210], edx
mov eax, dword [eax + 0x408]
pop esi
pop ebp
mov dword [0x1300214], eax
pop ebx
add esp, 0x2468
ret