Function at 0x415ae0
Capabilities:
Check for software breakpoints
Inspect section memory permissions

Disassembly:
push ebp
mov ebp, esp
and esp, 0xfffffff0
sub esp, 0x124
movss xmm0, dword [0x68b4fc]
movss dword [esp + 0x64], xmm0
movss xmm0, dword [0x68b4fc]
push ebx
push esi
movss dword [esp + 0x70], xmm0
movss xmm0, dword [0x68b4fc]
push edi
mov edi, dword [ebp + 8]
mov al, byte [edi + 0xc0]
test al, al
movss dword [esp + 0x78], xmm0
movss xmm0, dword [0x68b500]
movss dword [esp + 0x7c], xmm0
movaps xmm0, xmmword [esp + 0x70]
mov esi, ecx
movaps xmmword [esp + 0x80], xmm0
movaps xmmword [esp + 0x90], xmm0
movaps xmmword [esp + 0x70], xmm0
je 0x415b58
mov ebx, dword [edi + 0xac]
jmp 0x415b5e
mov ebx, dword [edi + 0xb0]
mov ecx, esi
mov dword [esp + 0x1c], ebx
mov dword [esp + 0x6c], 0
call fcn.005ef730
cmp byte [eax + 8], 2
jne 0x415b8b
cmp byte [ebx + 8], 8
je 0x415b8b
mov eax, 2
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret 4
mov al, byte [edi + 0xc0]
test al, al
je 0x415b9e
mov ax, word [edi + 0xc2]
jmp 0x415ba5
mov ax, word [edi + 0xc4]
test al, 0x40
je 0x415bc0
push ebx
lea ecx, [esi + 0x230]
call fcn.00550330
xor eax, eax
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret 4
test dword [esi + 4], 0x40000000
jne 0x4168a2
mov ax, word [esi + 0x80]
cmp ax, 0xb5
je 0x4168a2
cmp ax, 0xb6
je 0x4168a2
cmp ax, 0xb7
je 0x4168a2
cmp ax, 0xb8
je 0x4168a2
cmp ax, 0xb9
je 0x4168a2
mov bl, byte [esi + 9]
cmp bl, 0x1d
je 0x4168a2
mov ecx, esi
call fcn.00402af0
test al, al
jne 0x4168a2
mov ecx, dword [esp + 0x1c]
mov al, byte [ecx + 8]
test al, al
je 0x415c38
cmp al, 9
je 0x415c38
cmp al, 5
jne 0x4162af
cmp bl, 0x2a
je 0x4162af
mov ecx, edi
call fcn.005ecd20
test al, al
je 0x4168a2
lea eax, [esp + 0x20]
push eax
mov ecx, edi
call fcn.00401df0
movaps xmm0, xmmword [eax]
movaps xmm1, xmm0
shufps xmm1, xmm0, 0x55
movaps xmmword [esp + 0x30], xmm1
fld dword [esp + 0x30]
fcomp dword [0x68b6c8]
fnstsw ax
test ah, 5
jp 0x415e2e
mov ecx, edi
call fcn.00401e40
cmp byte [eax + 8], 9
je 0x415e2e
push 0xbf
lea ecx, [esp + 0x24]
push ecx
lea edx, [esp + 0x58]
push edx
mov ecx, esi
call fcn.005efd30
push eax
mov eax, dword [esi + 0x9a0]
push eax
lea ecx, [esp + 0xb0]
push ecx
mov ecx, edi
call fcn.00401e60
mov ecx, eax
call fcn.005efd90
push eax
mov ecx, edi
call fcn.00401e60
mov ecx, eax
call fcn.00401dd0
push eax
call fcn.005ee1b0
fstp dword [esp + 0x64]
mov edx, dword [esi + 0x9c0]
lea ecx, [esi + 0x9c0]
add esp, 0x18
test edx, edx
je 0x415d7c
fld dword [esp + 0x4c]
fcomp dword [esi + 0x9c4]
fnstsw ax
test ah, 5
jp 0x4168a2
test edx, edx
je 0x415d7c
movaps xmm0, xmmword [esi + 0x9d0]
movaps xmm1, xmm0
shufps xmm1, xmm0, 0x55
movaps xmmword [esp + 0x30], xmm1
fld dword [esp + 0x30]
fabs
fcomp dword [str.33s_]
fnstsw ax
test ah, 5
jp 0x415d7c
mov edx, dword [esi + 0x9c8]
mov dword [esp + 0x18], edx
lea eax, [esp + 0x18]
movss xmm0, dword [eax]
movaps xmm1, xmm0
shufps xmm1, xmm0, 0
movaps xmm0, xmmword [esi + 0x9d0]
xorps xmm2, xmm2
subps xmm2, xmm0
movaps xmm0, xmm2
mulps xmm0, xmm1
lea edx, [esp + 0x18]
mov dword [esp + 0x18], 0
movss xmm1, dword [edx]
unpcklps xmm1, xmm0
shufps xmm1, xmm0, 0xe1
movaps xmmword [esp + 0x70], xmm1
mov eax, dword [esp + 0x1c]
push eax
call fcn.00401a50
mov ecx, dword [esp + 0x4c]
mov dword [esi + 0x9c4], ecx
mov edx, dword [edi + 0xa0]
lea eax, [esp + 0x50]
push eax
mov ecx, edi
mov dword [esi + 0x9c8], edx
call fcn.00401df0
mov ecx, eax
movaps xmm1, xmmword [ecx]
movaps xmm0, xmm1
mulps xmm0, xmm1
movaps xmm3, xmm0
movaps xmm2, xmm0
shufps xmm3, xmm0, 0x55
movaps xmm4, xmm0
shufps xmm2, xmm0, 0xaa
addss xmm4, xmm3
addss xmm4, xmm2
movaps xmmword [esp + 0x30], xmm4
fld dword [esp + 0x30]
fcomp dword [0x68b4fc]
fnstsw ax
test ah, 0x41
jne 0x415e1f
movaps xmm2, xmm0
shufps xmm2, xmm0, 0xaa
movaps xmm3, xmm0
shufps xmm3, xmm0, 0x55
addss xmm0, xmm3
addss xmm0, xmm2
movaps xmmword [esp + 0x30], xmm0
rsqrtss xmm0, xmm0
movss dword [esp + 0x30], xmm0
movaps xmm0, xmmword [esp + 0x30]
movaps xmm2, xmm0
shufps xmm2, xmm0, 0
mulps xmm1, xmm2
movaps xmmword [esp + 0x30], xmm1
lea ecx, [esp + 0x30]
movaps xmm0, xmmword [ecx]
movaps xmmword [esi + 0x9d0], xmm0
jmp 0x4168a2
lea ecx, [esp + 0x20]
push ecx
mov ecx, edi
call fcn.00401df0
movaps xmm0, xmmword [eax]
movaps xmm1, xmm0
shufps xmm1, xmm0, 0x55
movaps xmmword [esp + 0x30], xmm1
fld dword [esp + 0x30]
fabs
fcomp dword [str.33s_]
fnstsw ax
test ah, 5
jp 0x4168a2
mov ecx, esi
call fcn.00402dc0
test al, al
je 0x415f97
lea edx, [esp + 0x20]
push edx
mov ecx, edi
call fcn.00401df0
movaps xmm0, xmmword [eax]
movaps xmm1, xmm0
shufps xmm1, xmm0, 0x55
movaps xmmword [esp + 0x30], xmm1
fld dword [esp + 0x30]
fabs
fcomp dword [str.33s_]
fnstsw ax
test ah, 5
jp 0x415f97
mov eax, dword [esi + 0x1f0]
test eax, eax
jne 0x415f97
mov ebx, dword [esi + 0x20c]
test ebx, ebx
je 0x415f97
cmp byte [ebx + 8], 1
jne 0x415f97
mov eax, dword [esp + 0x1c]
cmp byte [eax + 8], 9
jne 0x415f3a
lea ecx, [esp + 0x20]
push ecx
mov ecx, edi
call fcn.00401df0
mov edx, dword [edi + 0xa0]
mov dword [esp + 0x18], edx
lea ecx, [esp + 0x18]
movss xmm0, dword [ecx]
movaps xmm1, xmm0
shufps xmm1, xmm0, 0
movaps xmm0, xmmword [eax]
mov eax, dword [esp + 0x1c]
mulps xmm0, xmm1
lea edx, [esp + 0x18]
mov dword [esp + 0x18], 0
movss xmm1, dword [edx]
unpcklps xmm1, xmm0
shufps xmm1, xmm0, 0xe1
push eax
lea ecx, [esp + 0x84]
xorps xmm0, xmm0
push ecx
subps xmm0, xmm1
mov ecx, ebx
movaps xmmword [esp + 0x88], xmm0
call fcn.004c78b0
jmp 0x415fe7
lea edx, [esp + 0x20]
push edx
mov ecx, edi
call fcn.00401df0
mov ecx, dword [edi + 0xa0]
mov dword [esp + 0x18], ecx
lea edx, [esp + 0x18]
movss xmm0, dword [edx]
movaps xmm1, xmm0
shufps xmm1, xmm0, 0
movaps xmm0, xmmword [eax]
mulps xmm0, xmm1
lea eax, [esp + 0x18]
mov dword [esp + 0x18], 0
movss xmm1, dword [eax]
unpcklps xmm1, xmm0
shufps xmm1, xmm0, 0xe1
push 1
lea ecx, [esp + 0x74]
xorps xmm0, xmm0
push ecx
subps xmm0, xmm1
mov ecx, ebx
movaps xmmword [esp + 0x78], xmm0
call fcn.004c6f50
jmp 0x415fe7
lea edx, [esp + 0x20]
push edx
mov ecx, edi
call fcn.00401df0
mov ecx, dword [edi + 0xa0]
mov dword [esp + 0x18], ecx
lea edx, [esp + 0x18]
movss xmm0, dword [edx]
movaps xmm1, xmm0
shufps xmm1, xmm0, 0
movaps xmm0, xmmword [eax]
xorps xmm2, xmm2
subps xmm2, xmm0
movaps xmm0, xmm2
mulps xmm0, xmm1
lea eax, [esp + 0x18]
mov dword [esp + 0x18], 0
movss xmm1, dword [eax]
unpcklps xmm1, xmm0
shufps xmm1, xmm0, 0xe1
movaps xmmword [esp + 0x70], xmm1
mov al, byte [esi + 9]
cmp al, 0x20
je 0x415ff6
cmp al, 0x22
jne 0x416140
mov ecx, dword [esi + 0x8b0]
movzx edx, word [esi + 0x80]
neg ecx
sbb ecx, ecx
and ecx, 0xc
add ecx, 0xcc
cmp edx, ecx
jne 0x416140
lea eax, [esp + 0xe0]
push eax
mov ecx, edi
call fcn.00401df0
movaps xmm1, xmmword [esi + 0x30]
movaps xmm0, xmmword [eax]
mulps xmm0, xmm1
movaps xmmword [esp + 0x30], xmm1
movaps xmm1, xmm0
movaps xmm2, xmm0
shufps xmm1, xmm0, 0xaa
shufps xmm2, xmm0, 0x55
lea ecx, [esp + 0xa0]
addss xmm0, xmm2
push ecx
addss xmm0, xmm1
mov ecx, edi
movaps xmmword [esp + 0x54], xmm0
call fcn.00401df0
movaps xmm0, xmmword [esp + 0x50]
movaps xmm1, xmm0
shufps xmm1, xmm0, 0
movaps xmm0, xmmword [eax]
mulps xmm0, xmm1
movaps xmm1, xmmword [esp + 0x30]
subps xmm1, xmm0
movaps xmm0, xmm1
mulps xmm0, xmm1
movaps xmm3, xmm0
movaps xmm2, xmm0
shufps xmm3, xmm0, 0x55
movaps xmm4, xmm0
shufps xmm2, xmm0, 0xaa
addss xmm4, xmm3
addss xmm4, xmm2
movaps xmmword [esp + 0x50], xmm4
fld dword [esp + 0x50]
fcomp dword [0x68b4fc]
movaps xmmword [esp + 0x20], xmm1
fnstsw ax
test ah, 0x41
jne 0x4160f3
movaps xmm2, xmm0
shufps xmm2, xmm0, 0xaa
movaps xmm3, xmm0
shufps xmm3, xmm0, 0x55
addss xmm0, xmm3
addss xmm0, xmm2
movaps xmmword [esp + 0x30], xmm0
rsqrtss xmm0, xmm0
movss dword [esp + 0x30], xmm0
movaps xmm0, xmmword [esp + 0x30]
movaps xmm2, xmm0
shufps xmm2, xmm0, 0
mulps xmm1, xmm2
movaps xmmword [esp + 0x50], xmm1
lea eax, [esp + 0x50]
jmp 0x4160f7
lea eax, [esp + 0x20]
movaps xmm0, xmmword [eax]
push 4
movaps xmmword [esp + 0x24], xmm0
call fcn.00401930
add esp, 4
test eax, eax
je 0x41611d
movaps xmm0, xmmword [esi + 0x40]
movaps xmmword [esi + 0xa70], xmm0
jmp 0x4168a2
fld dword [0x725b3c]
push ecx
fmul dword [0x6b356c]
lea edx, [esp + 0x24]
mov ecx, esi
fadd st(0), st(0)
fstp dword [esp]
push edx
call fcn.005f0540
jmp 0x4168a2
mov eax, dword [esi + 0xf08]
cmp eax, 4
je 0x416159
cmp eax, 7
je 0x416159
cmp eax, 9
jne 0x4168a2
fld dword [esi + 0xacc]
fcomp dword [0x68b70c]
fnstsw ax
test ah, 0x41
jne 0x4168a2
movaps xmm0, xmmword [esi + 0x30]
lea eax, [esp + 0xa0]
push eax
mov ecx, edi
movaps xmmword [esp + 0x24], xmm0
call fcn.00401df0
movaps xmm1, xmmword [esp + 0x20]
movaps xmm2, xmmword [eax]
movaps xmm0, xmm1
shufps xmm0, xmm1, 0xc9
mulps xmm0, xmm2
shufps xmm2, xmm2, 0xc9
mulps xmm1, xmm2
subps xmm1, xmm0
movaps xmm0, xmm1
shufps xmm0, xmm1, 0xc9
movaps xmm1, xmm0
shufps xmm1, xmm0, 0x55
movaps xmmword [esp + 0x20], xmm1
fld dword [esp + 0x20]
fcomp dword [0x68b4fc]
lea edi, [esi + 0x10]
fnstsw ax
test ah, 0x41
jne 0x4161eb
lea ecx, [esp + 0xa0]
push 0x3e32b8c3
push ecx
call fcn.00603c20
add esp, 8
push eax
lea edx, [esp + 0xf4]
push edx
jmp 0x416209
lea eax, [esp + 0xf0]
push 0xbe32b8c3
push eax
call fcn.00603c20
add esp, 8
push eax
lea ecx, [esp + 0xa4]
push ecx
mov ecx, edi
call fcn.006020a0
movaps xmm0, xmmword [eax]
movaps xmmword [edi], xmm0
movaps xmm0, xmmword [eax + 0x10]
movaps xmmword [edi + 0x10], xmm0
movaps xmm0, xmmword [eax + 0x20]
movaps xmmword [edi + 0x20], xmm0
movaps xmm0, xmmword [esi + 0x40]
lea edx, [esp + 0x20]
push edx
mov ecx, esi
mov dword [esi + 0xf08], 9
movaps xmmword [esp + 0x24], xmm0
call fcn.004087a0
fstp dword [esi + 0x5d0]
mov ax, word [esi + 0x80]
cmp ax, 0xcd
jne 0x41628b
push 1
push 0xffffffffffffffff
push 0xffffffffffffffff
push 0xa
push 0xce
mov ecx, esi
call fcn.0041d590
mov al, byte [esi + 0xad5]
test al, al
sete al
mov byte [esi + 0xad5], al
mov word [esi + 0xa1e], 1
jmp 0x4168a2
cmp ax, 0xaf
je 0x416297
cmp ax, 0xac
jne 0x4162a1
mov dword [esi + 0xf08], 4
mov word [esi + 0xa1e], 1
jmp 0x4168a2
cmp al, 2
jne 0x41642b
push edi
lea ecx, [esp + 0xa4]
push ecx
mov ecx, esi
call fcn.00432e10
movaps xmm0, xmmword [eax]
mov al, byte [esi + 9]
cmp al, 0x20
movaps xmmword [esp + 0x80], xmm0
je 0x4162e1
cmp al, 0x22
jne 0x4168a2
mov edx, dword [esi + 0x8b0]
movzx eax, word [esi + 0x80]
neg edx
sbb edx, edx
and edx, 0xc
add edx, 0xcc
cmp eax, edx
jne 0x4168a2
lea ecx, [esp + 0xa0]
push ecx
mov ecx, edi
call fcn.00401df0
movaps xmm1, xmmword [esi + 0x30]
movaps xmm0, xmmword [eax]
mulps xmm0, xmm1
movaps xmmword [esp + 0x30], xmm1
movaps xmm1, xmm0
movaps xmm2, xmm0
shufps xmm1, xmm0, 0xaa
shufps xmm2, xmm0, 0x55
lea edx, [esp + 0xe0]
addss xmm0, xmm2
addss xmm0, xmm1
push edx
mov ecx, edi
movaps xmmword [esp + 0x24], xmm0
call fcn.00401df0
movaps xmm0, xmmword [esp + 0x20]
movaps xmm1, xmm0
shufps xmm1, xmm0, 0
movaps xmm0, xmmword [eax]
mulps xmm0, xmm1
movaps xmm1, xmmword [esp + 0x30]
subps xmm1, xmm0
movaps xmm0, xmm1
mulps xmm0, xmm1
movaps xmm3, xmm0
movaps xmm2, xmm0
shufps xmm3, xmm0, 0x55
movaps xmm4, xmm0
shufps xmm2, xmm0, 0xaa
addss xmm4, xmm3
addss xmm4, xmm2
movaps xmmword [esp + 0x20], xmm4
fld dword [esp + 0x20]
fcomp dword [0x68b4fc]
movaps xmmword [esp + 0x50], xmm1
fnstsw ax
test ah, 0x41
jne 0x4163de
movaps xmm2, xmm0
shufps xmm2, xmm0, 0xaa
movaps xmm3, xmm0
shufps xmm3, xmm0, 0x55
addss xmm0, xmm3
addss xmm0, xmm2
movaps xmmword [esp + 0x30], xmm0
rsqrtss xmm0, xmm0
movss dword [esp + 0x30], xmm0
movaps xmm0, xmmword [esp + 0x30]
movaps xmm2, xmm0
shufps xmm2, xmm0, 0
mulps xmm1, xmm2
movaps xmmword [esp + 0x20], xmm1
lea eax, [esp + 0x20]
jmp 0x4163e2
lea eax, [esp + 0x50]
movaps xmm0, xmmword [eax]
push 4
movaps xmmword [esp + 0x54], xmm0
call fcn.00401930
add esp, 4
test eax, eax
je 0x416408
movaps xmm0, xmmword [esi + 0x40]
movaps xmmword [esi + 0xa70], xmm0
jmp 0x4168a2
fld dword [0x725b3c]
push ecx
fmul dword [0x6b356c]
lea eax, [esp + 0x54]
mov ecx, esi
fadd st(0), st(0)
fstp dword [esp]
push eax
call fcn.005f0540
jmp 0x4168a2
test dword [esi + 4], 0x20000000
jne 0x416771
cmp al, 1
jne 0x416771
cmp ecx, dword [esi + 0x8b0]
je 0x416771
mov ecx, esi
call fcn.00402dc0
test al, al
jne 0x4168a2
mov ecx, esi
call fcn.00402aa0
test al, al
je 0x4165a9
mov ebx, dword [esp + 0x1c]
cmp word [ebx + 0xc], 0xffff
jne 0x4165a9
mov ecx, edi
call fcn.00401e60
mov ecx, dword [eax + 4]
test ch, 0x10
jne 0x4165a9
test dword [esi + 4], 0x10000000
jne 0x4165a9
mov ecx, esi
call fcn.00402e20
test al, al
jne 0x4164b7
mov ax, word [ebx + 0x80]
cmp ax, 0x109
je 0x4164b7
cmp ax, 0x108
jne 0x416512
xor edi, edi
mov eax, 0x6b3488
xor ebx, ebx
test edi, edi
jne 0x4164f3
mov ecx, dword [esp + 0x1c]
mov dx, word [ecx + 0x80]
cmp dx, word [eax]
jne 0x4164da
test eax, eax
mov edi, eax
jne 0x4164f3
cmp dx, word [eax + 0x10]
lea ecx, [eax + 0x10]
jne 0x4164e5
mov edi, ecx
add ebx, 0x20
add eax, 0x20
cmp ebx, 0xe0
jb 0x4164c0
mov edx, dword [esp + 0x1c]
mov ax, word [edx + 0x80]
cmp ax, 0x109
je 0x41651e
cmp ax, 0x108
je 0x41651e
test edi, edi
jne 0x4168a2
mov ecx, esi
call fcn.004085b0
jmp 0x4168a2
movaps xmm0, xmmword [esi + 0x40]
lea eax, [esp + 0x20]
push eax
push 0x34
mov ecx, esi
movaps xmmword [esp + 0x28], xmm0
call fcn.00401950
movzx ecx, byte [esi + 0xa08]
push esi
push ecx
mov ecx, dword [0x6f2234]
push 2
push 0xa
call sym.TrueCrimeMB.exe_public:_void___thiscall_GameController::AwardPoints_int__int__int__class_Object__
mov edi, dword [esi + 0xf08]
xor edx, edx
cmp edi, 0xa
setne dl
push 1
push 0xffffffffffffffff
push 0xffffffffffffffff
push 3
mov ecx, esi
mov dword [esi + 0x1e0], 0
dec edx
and edx, 5
add edx, 0xfa
push edx
call fcn.0041d590
mov eax, dword [esi + 0x1314]
test eax, eax
je 0x41659d
cmp byte [esi + 0x12c3], 3
jne 0x41659d
push 1
push eax
call fcn.0047fb10
add esp, 8
or dword [esi + 4], 0x10000000
jmp 0x4168a2
mov ecx, edi
call fcn.00401e60
mov ecx, dword [eax + 4]
test ch, 0x10
je 0x4168a2
mov ecx, edi
call fcn.005ecd20
test al, al
je 0x4168a2
mov ecx, edi
call fcn.00401e40
push eax
push ecx
mov eax, esp
mov dword [eax], 0
push ecx
mov eax, esp
mov dword [eax], 0
push ecx
mov eax, esp
push ecx
mov dword [eax], 0
mov eax, esp
push ecx
mov dword [eax], 0
mov eax, esp
push ecx
mov dword [eax], 0
mov eax, esp
push 0
push 0x714d
lea ecx, [esp + 0xc4]
mov dword [eax], 0
call fcn.00401d20
mov ecx, eax
call fcn.00401d60
test eax, eax
je 0x4168a2
mov bx, word [esi + 0x80]
cmp bx, 0xbd
je 0x4168a2
mov ecx, esi
call fcn.00402c00
test al, al
je 0x416660
cmp bx, 0xaf
jne 0x4168a2
call fcn.005f2010
test al, 3
jne 0x4168a2
mov ax, word [esi + 0x80]
cmp ax, 0xc0
je 0x4168a2
cmp ax, 0xbb
je 0x4168a2
mov ecx, esi
call fcn.00402dc0
test al, al
jne 0x4168a2
push edi
mov ecx, esi
call fcn.00415330
push 0x3fa00000
push 0x3f800000
mov dword [esp + 0x74], eax
lea eax, [esp + 0x28]
push eax
lea ecx, [esp + 0x5c]
push ecx
mov ecx, dword [esp + 0x2c]
push 0x14
call fcn.005ef7a0
mov edx, dword [esi + 0xa00]
push eax
push edx
call fcn.004c86d0
add esp, 0x18
test al, al
je 0x4166e8
movaps xmm0, xmmword [esp + 0x20]
movaps xmmword [esp + 0x90], xmm0
movaps xmm0, xmmword [esp + 0x50]
movaps xmmword [esp + 0x80], xmm0
jmp 0x4168a2
lea eax, [esp + 0xa0]
push eax
mov ecx, edi
call fcn.00401df0
movaps xmm0, xmmword [eax]
movaps xmm1, xmm0
shufps xmm1, xmm0, 0x55
movaps xmmword [esp + 0x30], xmm1
fld dword [esp + 0x30]
fabs
fcomp dword [str.33s_]
fnstsw ax
test ah, 5
jp 0x4168a2
lea ecx, [esp + 0xa0]
push ecx
mov ecx, edi
call fcn.00401df0
fld dword [edi + 0xa0]
fchs
lea edx, [esp + 0x18]
fstp dword [esp + 0x18]
movss xmm0, dword [edx]
movaps xmm1, xmm0
shufps xmm1, xmm0, 0
movaps xmm0, xmmword [eax]
mulps xmm0, xmm1
lea eax, [esp + 0x18]
mov dword [esp + 0x18], 0
movss xmm1, dword [eax]
unpcklps xmm1, xmm0
shufps xmm1, xmm0, 0xe1
movaps xmmword [esp + 0x80], xmm1
jmp 0x4168a2
cmp bl, 0x2a
jne 0x41678d
mov ax, word [esi + 0x80]
cmp ax, 0xfb
je 0x41678d
cmp ax, 0xfa
jne 0x4168a2
mov ecx, esi
call fcn.00402dc0
test al, al
jne 0x4168a2
mov ecx, dword [esp + 0x1c]
cmp ecx, dword [esi + 0x8b0]
je 0x4168a2
mov ecx, edi
call fcn.005ecd20
test al, al
je 0x4168a2
mov ax, word [esi + 0x80]
cmp ax, 0xfb
je 0x416817
cmp ax, 0xfa
je 0x416817
lea edx, [esp + 0xa0]
push edx
mov ecx, edi
call fcn.00401df0
movaps xmm1, xmmword [eax]
movaps xmm0, xmmword [esi + 0x30]
mulps xmm0, xmm1
movaps xmm1, xmm0
movaps xmm2, xmm0
shufps xmm1, xmm0, 0xaa
shufps xmm2, xmm0, 0x55
addss xmm0, xmm2
addss xmm0, xmm1
movaps xmmword [esp + 0x20], xmm0
fld dword [esp + 0x20]
fcomp dword [0x68b4fc]
fnstsw ax
test ah, 5
jp 0x4168a2
lea eax, [esp + 0xa0]
push eax
mov ecx, edi
call fcn.00401df0
movaps xmm0, xmmword [eax]
movaps xmm1, xmm0
shufps xmm1, xmm0, 0x55
movaps xmmword [esp + 0x20], xmm1
fld dword [esp + 0x20]
fabs
fcomp dword [str.33s_]
fnstsw ax
test ah, 5
jp 0x4168a2
mov ecx, dword [edi + 0xa0]
lea edx, [esp + 0xa0]
mov dword [esp + 0x4c], ecx
push edx
mov ecx, edi
call fcn.00401df0
fld dword [esp + 0x4c]
movaps xmm1, xmmword [eax]
fchs
mov dword [esp + 0x18], 0
lea ecx, [esp + 0x18]
movss xmm0, dword [ecx]
fstp dword [esp + 0x18]
unpcklps xmm0, xmm1
shufps xmm0, xmm1, 0xe1
lea edx, [esp + 0x18]
movss xmm1, dword [edx]
movaps xmm2, xmm1
movaps xmmword [eax], xmm0
shufps xmm2, xmm1, 0
mulps xmm0, xmm2
movaps xmmword [esp + 0x90], xmm0
movaps xmm0, xmmword [esi + 0x600]
movaps xmm2, xmmword [esp + 0x90]
mulps xmm0, xmm0
movaps xmm3, xmm0
shufps xmm3, xmm0, 0xaa
movaps xmm4, xmm0
shufps xmm4, xmm0, 0x55
addss xmm0, xmm4
addss xmm0, xmm3
movaps xmm1, xmm2
mulps xmm1, xmm2
movaps xmm3, xmm1
movaps xmm4, xmm1
shufps xmm3, xmm1, 0xaa
shufps xmm4, xmm1, 0x55
addss xmm1, xmm4
addss xmm1, xmm3
comiss xmm1, xmm0
jbe 0x4168f2
movaps xmmword [esi + 0x600], xmm2
push 1
lea eax, [esp + 0x74]
push eax
mov ecx, esi
call fcn.004c6f50
mov ecx, dword [esp + 0x1c]
push ecx
lea edx, [esp + 0x84]
push edx
mov ecx, esi
call fcn.004c78b0
mov eax, dword [esp + 0x6c]
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret 4