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

Disassembly:
push ebp
mov ebp, esp
and esp, 0xfffffff0
sub esp, 0xa8
push esi
push edi
mov edi, ecx
cmp dword [edi + 0xe20], 0
jne 0x480fe5
mov eax, dword [edi + 0x2e0]
sub esp, 8
mov esi, dword [ebp + 8]
mov edx, esp
push esi
mov dword [edx], eax
mov eax, dword [edi + 0x2e4]
mov dword [edx + 4], eax
mov edx, dword [edi]
call dword [edx + 0x1b0]
mov eax, esi
pop edi
pop esi
mov esp, ebp
pop ebp
ret 4
mov eax, dword [edi]
mov eax, dword [eax + 0x1e0]
call eax
mov eax, dword [edi]
fstp dword [esp + 0x4c]
mov eax, dword [eax + 0x1d8]
cmp eax, method.ui::Box.virtual_472
jne 0x481614
mov eax, dword [edi + 0x188]
movss xmm1, dword [edi + 0xe28]
movss xmm4, dword [edi + 0xe2c]
movss xmm2, dword [edi + 0xe30]
mov eax, dword [eax + 0x728]
movss xmm3, dword [edi + 0xe34]
movss dword [esp + 0x38], xmm2
subss xmm2, xmm1
movss dword [esp + 0x3c], xmm3
subss xmm3, xmm4
movss dword [esp + 0x34], xmm4
movss dword [esp + 0x30], xmm1
movaps xmm0, xmmword [esp + 0x30]
movaps xmmword [esp + 0x60], xmm0
movss xmm0, dword [eax + 4]
mulss xmm3, xmm0
mulss xmm2, xmm0
mulss xmm0, xmm1
movss dword [esp + 0x60], xmm0
addss xmm0, xmm2
mulss xmm4, dword [eax + 4]
movss dword [esp + 0x64], xmm4
addss xmm4, xmm3
movss dword [esp + 0x68], xmm0
movss dword [esp + 0x6c], xmm4
xor eax, eax
xor edx, edx
xor ecx, ecx
mov dword [esp + 0x1c], edx
xor esi, esi
mov dword [esp + 0x14], ecx
mov dword [esp + 0x18], eax
mov dword [esp + 0x2c], esi
cmp dword [edi + 0xe20], eax
jle 0x48157d
nop word [eax + eax]
mov eax, dword [edi + 0xe1c]
mov esi, dword [eax + esi*4]
mov eax, dword [esi]
mov eax, dword [eax + 0x104]
cmp eax, method.ui::Control.virtual_260
jne 0x481622
cmp byte [esi + 0x2fd], 0
je 0x481560
cmp byte [esi + 0x2fe], 0
jne 0x4810f7
jmp 0x481560
mov eax, dword [esi]
mov eax, dword [eax + 0x160]
cmp eax, method.ui::Control.virtual_352
jne 0x481633
mov al, byte [esi + 0x302]
test al, al
jne 0x48155c
mov eax, dword [edi + 0x2e0]
sub esp, 8
mov ecx, esp
mov dword [ecx], eax
mov eax, dword [edi + 0x2e4]
mov dword [ecx + 4], eax
lea ecx, [esp + 0x2c]
mov eax, dword [esi]
push ecx
mov ecx, esi
call dword [eax + 0x1b0]
movss xmm1, dword [esp + 0x24]
xorps xmm0, xmm0
comiss xmm1, xmm0
jbe 0x481265
mov eax, dword [esi]
mov eax, dword [eax + 0x84]
cmp eax, method.ui::Control.virtual_132
jne 0x48163c
mov eax, dword [esi + 0x188]
movd xmm0, dword [esi + 0x2e8]
cvtdq2ps xmm0, xmm0
mov eax, dword [eax + 0x728]
mulss xmm0, dword [eax + 4]
cvttss2si eax, xmm0
movd xmm0, eax
cvtdq2ps xmm0, xmm0
comiss xmm0, xmm1
jbe 0x4811ce
mov eax, dword [esi]
mov eax, dword [eax + 0x84]
cmp eax, method.ui::Control.virtual_132
jne 0x48164b
mov eax, dword [esi + 0x188]
movd xmm0, dword [esi + 0x2e8]
cvtdq2ps xmm0, xmm0
mov eax, dword [eax + 0x728]
mulss xmm0, dword [eax + 4]
cvttss2si eax, xmm0
movd xmm1, eax
cvtdq2ps xmm1, xmm1
movss dword [esp + 0x24], xmm1
mov eax, dword [esi]
mov eax, dword [eax + 0x8c]
cmp eax, method.ui::Control.virtual_140
jne 0x481654
mov eax, dword [esi + 0x188]
movd xmm0, dword [esi + 0x2f0]
cvtdq2ps xmm0, xmm0
mov eax, dword [eax + 0x728]
mulss xmm0, dword [eax + 4]
cvttss2si eax, xmm0
movd xmm0, eax
cvtdq2ps xmm0, xmm0
comiss xmm1, xmm0
jbe 0x48124d
mov eax, dword [esi]
mov eax, dword [eax + 0x8c]
cmp eax, method.ui::Control.virtual_140
jne 0x481663
mov eax, dword [esi + 0x188]
movd xmm0, dword [esi + 0x2f0]
cvtdq2ps xmm0, xmm0
mov eax, dword [eax + 0x728]
mulss xmm0, dword [eax + 4]
cvttss2si eax, xmm0
movd xmm1, eax
cvtdq2ps xmm1, xmm1
movss dword [esp + 0x24], xmm1
movd xmm0, dword [esp + 0x1c]
cvtdq2ps xmm0, xmm0
addss xmm0, xmm1
cvttss2si eax, xmm0
xorps xmm0, xmm0
mov dword [esp + 0x1c], eax
movss xmm1, dword [esp + 0x28]
comiss xmm1, xmm0
jbe 0x481387
mov eax, dword [esi]
mov eax, dword [eax + 0x94]
cmp eax, method.ui::Control.virtual_148
jne 0x48166c
mov eax, dword [esi + 0x188]
movd xmm0, dword [esi + 0x2ec]
cvtdq2ps xmm0, xmm0
mov eax, dword [eax + 0x728]
mulss xmm0, dword [eax + 4]
cvttss2si eax, xmm0
movd xmm0, eax
cvtdq2ps xmm0, xmm0
comiss xmm0, xmm1
jbe 0x4812f3
mov eax, dword [esi]
mov eax, dword [eax + 0x94]
cmp eax, method.ui::Control.virtual_148
jne 0x48167b
mov eax, dword [esi + 0x188]
movd xmm0, dword [esi + 0x2ec]
cvtdq2ps xmm0, xmm0
mov eax, dword [eax + 0x728]
mulss xmm0, dword [eax + 4]
cvttss2si eax, xmm0
movd xmm1, eax
cvtdq2ps xmm1, xmm1
movss dword [esp + 0x28], xmm1
mov eax, dword [esi]
mov eax, dword [eax + 0x9c]
cmp eax, method.ui::Control.virtual_156
jne 0x481684
mov eax, dword [esi + 0x188]
movd xmm0, dword [esi + 0x2f4]
cvtdq2ps xmm0, xmm0
mov eax, dword [eax + 0x728]
mulss xmm0, dword [eax + 4]
cvttss2si eax, xmm0
movd xmm0, eax
cvtdq2ps xmm0, xmm0
comiss xmm1, xmm0
jbe 0x481372
mov eax, dword [esi]
mov eax, dword [eax + 0x9c]
cmp eax, method.ui::Control.virtual_156
jne 0x481693
mov eax, dword [esi + 0x188]
movd xmm0, dword [esi + 0x2f4]
cvtdq2ps xmm0, xmm0
mov eax, dword [eax + 0x728]
mulss xmm0, dword [eax + 4]
cvttss2si eax, xmm0
movd xmm1, eax
cvtdq2ps xmm1, xmm1
movss dword [esp + 0x28], xmm1
movd xmm0, dword [esp + 0x14]
cvtdq2ps xmm0, xmm0
addss xmm0, xmm1
cvttss2si eax, xmm0
mov dword [esp + 0x14], eax
mov eax, dword [esi]
mov eax, dword [eax + 0x64]
cmp eax, method.ui::Control.virtual_100
jne 0x48169c
mov eax, dword [esi + 0x188]
movss xmm4, dword [esi + 0x2b8]
movss xmm1, dword [esi + 0x2bc]
movss xmm2, dword [esi + 0x2c0]
mov eax, dword [eax + 0x728]
movss xmm3, dword [esi + 0x2c4]
movss dword [esp + 0x70], xmm4
movss dword [esp + 0x78], xmm2
subss xmm2, xmm4
movss dword [esp + 0x7c], xmm3
subss xmm3, xmm1
movss dword [esp + 0x74], xmm1
movaps xmm0, xmmword [esp + 0x70]
movaps xmmword [esp + 0x50], xmm0
movss xmm0, dword [eax + 4]
mulss xmm4, xmm0
mulss xmm2, xmm0
mulss xmm3, xmm0
movss dword [esp + 0x50], xmm4
addss xmm4, xmm2
movss xmm0, dword [eax + 4]
lea eax, [esp + 0x50]
mulss xmm0, xmm1
movss dword [esp + 0x58], xmm4
movss dword [esp + 0x54], xmm0
addss xmm0, xmm3
movss dword [esp + 0x5c], xmm0
mov edx, dword [esi]
mov ecx, esi
mov dword [esp + 0x20], eax
lea eax, [esp + 0x90]
push eax
mov edx, dword [edx + 0x64]
call edx
movss xmm0, dword [eax + 8]
mov eax, dword [esp + 0x20]
movss xmm1, dword [eax]
addss xmm1, xmm0
movd xmm0, dword [esp + 0x1c]
cvtdq2ps xmm0, xmm0
addss xmm1, xmm0
cvttss2si eax, xmm1
mov dword [esp + 0x1c], eax
mov eax, dword [esi]
mov eax, dword [eax + 0x64]
cmp eax, method.ui::Control.virtual_100
jne 0x4816aa
mov eax, dword [esi + 0x188]
movss xmm3, dword [esi + 0x2b8]
movss xmm4, dword [esi + 0x2bc]
movss xmm1, dword [esi + 0x2c0]
mov eax, dword [eax + 0x728]
movss xmm2, dword [esi + 0x2c4]
movss dword [esp + 0x80], xmm3
movss dword [esp + 0x84], xmm4
movss dword [esp + 0x88], xmm1
subss xmm1, xmm3
movss dword [esp + 0x8c], xmm2
subss xmm2, xmm4
movaps xmm0, xmmword [esp + 0x80]
movaps xmmword [esp + 0x30], xmm0
movss xmm0, dword [eax + 4]
mulss xmm3, xmm0
mulss xmm1, xmm0
movss dword [esp + 0x30], xmm3
mulss xmm4, dword [eax + 4]
lea eax, [esp + 0x30]
mulss xmm2, xmm0
addss xmm3, xmm1
movss dword [esp + 0x34], xmm4
addss xmm4, xmm2
movss dword [esp + 0x38], xmm3
movss dword [esp + 0x3c], xmm4
mov edx, dword [esi]
mov ecx, esi
mov dword [esp + 0x20], eax
lea eax, [esp + 0xa0]
push eax
mov edx, dword [edx + 0x64]
call edx
movss xmm0, dword [eax + 0xc]
mov eax, dword [esp + 0x20]
movss xmm1, dword [eax + 4]
mov eax, dword [esp + 0x18]
addss xmm1, xmm0
movd xmm0, dword [esp + 0x14]
inc eax
cvtdq2ps xmm0, xmm0
mov dword [esp + 0x18], eax
addss xmm1, xmm0
cvttss2si ecx, xmm1
mov dword [esp + 0x14], ecx
jmp 0x481564
mov ecx, dword [esp + 0x14]
mov eax, dword [esp + 0x18]
mov esi, dword [esp + 0x2c]
inc esi
mov dword [esp + 0x2c], esi
cmp esi, dword [edi + 0xe20]
jl 0x4810c0
mov edx, dword [esp + 0x1c]
dec eax
movd xmm0, edx
cvtdq2ps xmm0, xmm0
movd xmm1, eax
mov eax, dword [edi + 0x188]
cvtdq2ps xmm1, xmm1
mov eax, dword [eax + 0x728]
movss xmm3, dword [edi + 0x2e0]
mulss xmm1, dword [esp + 0x4c]
movss xmm2, dword [edi + 0x2e4]
addss xmm0, xmm1
cvttss2si edx, xmm0
movd xmm0, ecx
cvtdq2ps xmm0, xmm0
addss xmm0, xmm1
cvttss2si ecx, xmm0
movss xmm0, dword [eax + 4]
mulss xmm3, xmm0
mulss xmm2, xmm0
test edx, edx
jle 0x4815ea
movss xmm0, dword [edi + 0x2e0]
movd xmm1, edx
cvtdq2ps xmm1, xmm1
comiss xmm0, xmm1
jbe 0x4815ed
movaps xmm1, xmm3
test ecx, ecx
jle 0x4815fd
movd xmm0, ecx
cvtdq2ps xmm0, xmm0
comiss xmm2, xmm0
jbe 0x481600
movaps xmm0, xmm2
mov eax, dword [ebp + 8]
pop edi
pop esi
movss dword [eax], xmm1
movss dword [eax + 4], xmm0
mov esp, ebp
pop ebp
ret 4
lea ecx, [esp + 0x60]
push ecx
mov ecx, edi
call eax
jmp 0x481092
mov ecx, esi
call eax
test al, al
je 0x48155c
jmp 0x4810f7
mov ecx, esi
call eax
jmp 0x481110
mov ecx, esi
call eax
movss xmm1, dword [esp + 0x24]
jmp 0x481182
mov ecx, esi
call eax
jmp 0x4811c1
mov ecx, esi
call eax
movss xmm1, dword [esp + 0x24]
jmp 0x481201
mov ecx, esi
call eax
jmp 0x481240
mov ecx, esi
call eax
movss xmm1, dword [esp + 0x28]
jmp 0x4812a7
mov ecx, esi
call eax
jmp 0x4812e6
mov ecx, esi
call eax
movss xmm1, dword [esp + 0x28]
jmp 0x481326
mov ecx, esi
call eax
jmp 0x481365
lea ecx, [esp + 0x50]
push ecx
mov ecx, esi
call eax
jmp 0x48142b
lea ecx, [esp + 0x30]
push ecx
mov ecx, esi
call eax
jmp 0x481515