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

Disassembly:
push ebp
mov ebp, esp
and esp, 0xfffffff8
sub esp, 0x54
push ebx
push esi
push edi
call fcn.10050453
and dword [esp + 0x3c], 0
lea ecx, [esp + 0x50]
push dword [esp + 0x3c]
and dword [esp + 0x3c], 0
mov edi, eax
push dword [esp + 0x3c]
and dword [esp + 0x48], 0
and dword [esp + 0x4c], 0
mov dword [esp + 0x3c], 0x41c80000
push dword [esp + 0x3c]
mov dword [esp + 0x3c], 0x437a0000
push dword [esp + 0x3c]
call fcn.1004623e
mov esi, dword [0x1027c41c]
and dword [esp + 0x40], 0
mov dword [esp + 0x44], 0x41c80000
mov ecx, dword [esi + 0x1b48]
mov edx, dword [ecx + 0xc]
mov ecx, dword [ecx + 0x10]
mov dword [esp + 0x48], edx
movss xmm0, dword [esp + 0x48]
addss xmm0, dword [eax]
and dword [esp + 0x48], 0
mov dword [esp + 0x4c], ecx
lea ecx, [esp + 0x20]
movss dword [esp + 0x30], xmm0
movss xmm0, dword [esp + 0x4c]
and dword [esp + 0x4c], 0
push dword [esp + 0x4c]
addss xmm0, dword [eax + 4]
push dword [esp + 0x4c]
push dword [esp + 0x4c]
push dword [esp + 0x4c]
movss dword [esp + 0x44], xmm0
call fcn.1004623e
mov ecx, dword [esi + 0x1b48]
add esp, 0x20
mov edx, dword [ecx + 0xc]
mov ecx, dword [ecx + 0x10]
mov dword [esp + 0x38], edx
movss xmm0, dword [esp + 0x38]
addss xmm0, dword [eax]
push 3
push ecx
mov dword [esp], 0x40400000
mov dword [esp + 0x44], ecx
movss dword [esp + 0x38], xmm0
movss xmm0, dword [esp + 0x44]
addss xmm0, dword [eax + 4]
push 0
lea eax, [esp + 0x4c]
push eax
push ecx
mov dword [esp], 0x41c80000
lea eax, [esp + 0x34]
push 0x64000000
push eax
lea eax, [esp + 0x4c]
movss dword [esp + 0x50], xmm0
push eax
mov ecx, edi
call fcn.1005f4d6
call fcn.10050453
movss xmm1, dword [0x10273ea0]
mov ebx, eax
push 3
pop ecx
call fcn.100483d1
and dword [esp + 0x38], 0
mov edi, eax
and dword [esp + 0x3c], 0
push dword [esp + 0x3c]
mov dword [esp + 0x38], 0x41c80000
push dword [esp + 0x3c]
mov dword [esp + 0x38], 0x437a0000
push dword [esp + 0x3c]
push dword [esp + 0x3c]
lea ecx, [esp + 0x60]
call fcn.1004623e
mov esi, dword [0x1027c41c]
and dword [esp + 0x44], 0
and dword [esp + 0x40], 0
mov ecx, dword [esi + 0x1b48]
mov edx, dword [ecx + 0xc]
mov ecx, dword [ecx + 0x10]
mov dword [esp + 0x48], edx
movss xmm0, dword [esp + 0x48]
addss xmm0, dword [eax]
and dword [esp + 0x48], 0
mov dword [esp + 0x4c], ecx
lea ecx, [esp + 0x30]
movss dword [esp + 0x50], xmm0
movss xmm0, dword [esp + 0x4c]
and dword [esp + 0x4c], 0
push dword [esp + 0x4c]
addss xmm0, dword [eax + 4]
push dword [esp + 0x4c]
push dword [esp + 0x4c]
push dword [esp + 0x4c]
movss dword [esp + 0x64], xmm0
call fcn.1004623e
mov ecx, dword [esi + 0x1b48]
add esp, 0x20
mov edx, dword [ecx + 0xc]
mov ecx, dword [ecx + 0x10]
mov dword [esp + 0x38], edx
movss xmm0, dword [esp + 0x38]
addss xmm0, dword [eax]
push 3
push ecx
mov dword [esp + 0x44], ecx
mov ecx, ebx
mov dword [esp], 0x40400000
movss dword [esp + 0x38], xmm0
movss xmm0, dword [esp + 0x44]
addss xmm0, dword [eax + 4]
push edi
lea eax, [esp + 0x4c]
push eax
lea eax, [esp + 0x40]
push eax
movss dword [esp + 0x48], xmm0
call fcn.1005e0cd
and dword [esp + 0x44], 0
lea ecx, [esp + 0x40]
mov dword [esp + 0x40], 0x41700000
call fcn.10050a1e
xor ebx, ebx
mov dword [esp + 0x40], 0x429c0000
push ebx
mov esi, 0x1027d094
mov dword [esp + 0x48], 0x41c80000
push esi
lea edx, [esp + 0x48]
mov ecx, str.Weapon
call fcn.10039f3b
and dword [esp + 0x44], ebx
lea ecx, [esp + 0x58]
push dword [esp + 0x44]
and dword [esp + 0x44], ebx
push dword [esp + 0x44]
and dword [esp + 0x44], ebx
push dword [esp + 0x44]
mov dword [esp + 0x44], 0x42ba0000
push dword [esp + 0x44]
call fcn.1004623e
mov ecx, eax
call fcn.10050a1e
push 1
push esi
lea edx, [esp + 0x60]
mov dword [esp + 0x60], 0x429a0000
mov ecx, str.Grenade
mov dword [esp + 0x64], 0x41c80000
call fcn.10039f3b
and dword [esp + 0x58], ebx
and dword [esp + 0x5c], ebx
mov dword [esp + 0x50], 0x432a0000
push dword [esp + 0x5c]
and dword [esp + 0x58], ebx
lea ecx, [esp + 0x74]
push dword [esp + 0x5c]
push dword [esp + 0x5c]
push dword [esp + 0x5c]
call fcn.1004623e
mov ecx, eax
call fcn.10050a1e
push 2
push esi
lea edx, [esp + 0x78]
mov dword [esp + 0x78], 0x42820000
mov ecx, str.Bomb
mov dword [esp + 0x7c], 0x41c80000
call fcn.10039f3b
mov eax, dword [0x1027d094]
add esp, 0x38
sub eax, ebx
je 0x10044acb
sub eax, 1
je 0x1004433b
sub eax, 1
je 0x10043dc4
mov dword [0x1027d094], ebx
jmp 0x10045408
and dword [esp + 0x3c], ebx
lea ecx, [esp + 0x50]
push dword [esp + 0x3c]
and dword [esp + 0x3c], ebx
push dword [esp + 0x3c]
mov dword [esp + 0x3c], 0x42340000
push dword [esp + 0x3c]
mov dword [esp + 0x3c], 0x41b80000
push dword [esp + 0x3c]
call fcn.1004623e
add esp, 0x10
mov ecx, eax
call fcn.10050a1e
mov edx, dword [0x1027c41c]
push ebx
push str.previewnade.yaw
mov eax, dword [edx + 0x1b48]
mov ecx, dword [eax + 0xd0]
mov eax, dword [eax + 0xd4]
mov dword [esp + 0x44], eax
mov eax, dword [edx + 0x1b48]
mov dword [esp + 0x40], ecx
mov byte [eax + 0x84], 1
mov ecx, dword [edx + 0x1b48]
call fcn.100493dd
movss xmm2, dword [esp + 0x38]
lea ecx, [esp + 0x50]
movss xmm1, dword [esp + 0x3c]
movaps xmm0, xmm2
addss xmm0, dword [0x102740f8]
and dword [esp + 0x34], ebx
mov esi, eax
push dword [esp + 0x34]
and dword [esp + 0x34], ebx
push dword [esp + 0x34]
movss dword [esp + 0x28], xmm0
movaps xmm0, xmm1
addss xmm0, dword [0x102740a0]
movss dword [esp + 0x2c], xmm0
push dword [esp + 0x2c]
push dword [esp + 0x2c]
call fcn.1004623e
push ebx
movss dword [esp + 0x54], xmm2
movss dword [esp + 0x58], xmm1
mov ecx, dword [eax]
mov eax, dword [eax + 4]
push ebx
push ebx
mov dword [esp + 0x68], eax
lea eax, [esp + 0x5c]
push esi
push eax
mov dword [esp + 0x6c], ecx
call fcn.10065720
mov edi, dword [0x1027c41c]
add esp, 0x24
mov eax, dword [edi + 0x1b48]
mov byte [eax + 0x84], 1
mov esi, dword [edi + 0x1b48]
mov dword [esp + 0x20], esi
test esi, esi
je 0x10045408
mov eax, dword [0x1027c494]
cmp byte [eax + 0x16f8], bl
je 0x10045408
cmp byte [eax + 0x16f9], bl
je 0x10044153
and dword [esp + 0x3c], ebx
lea ecx, [esp + 0x30]
push dword [esp + 0x3c]
and dword [esp + 0x3c], ebx
push dword [esp + 0x3c]
mov dword [esp + 0x3c], 0x42860000
push dword [esp + 0x3c]
mov dword [esp + 0x3c], 0x42800000
push dword [esp + 0x3c]
call fcn.1004623e
and dword [esp + 0x4c], ebx
lea ecx, [esp + 0x48]
push dword [esp + 0x4c]
and dword [esp + 0x4c], ebx
push dword [esp + 0x4c]
mov dword [esp + 0x2c], 0x432f0000
push dword [esp + 0x2c]
mov dword [esp + 0x2c], 0x43360000
push dword [esp + 0x2c]
call fcn.1004623e
movss xmm0, dword [esp + 0x58]
add esp, 0x1c
addss xmm0, dword [esi + 0xc]
movss xmm1, dword [0x10273ea0]
mov dword [esp], 0x3f800000
push 0xf
addss xmm0, xmm1
push ecx
and dword [esp], ebx
movss dword [esp + 0x4c], xmm0
movss xmm0, dword [esp + 0x48]
addss xmm0, dword [esi + 0x10]
addss xmm0, xmm1
movss dword [esp + 0x50], xmm0
movss xmm0, dword [esp + 0x3c]
addss xmm0, dword [esi + 0xc]
subss xmm0, xmm1
movss dword [esp + 0x1c], xmm0
movss xmm0, dword [esp + 0x40]
addss xmm0, dword [esi + 0x10]
subss xmm0, xmm1
movss dword [esp + 0x20], xmm0
movss xmm0, dword [edi + 0x1520]
mulss xmm0, dword [0x10274050]
call fcn.1010fe60
mov ecx, dword [esi + 0x294]
shl eax, 0x18
push eax
lea eax, [esp + 0x50]
push eax
lea eax, [esp + 0x24]
push eax
call fcn.1005dfe2
mov eax, dword [0x1027c494]
push ecx
mov dword [esp], 0x3f800000
push 0xf
movss xmm0, dword [eax + 0x16fc]
movss dword [esp + 0x58], xmm0
movss xmm0, dword [eax + 0x1700]
movss dword [esp + 0x5c], xmm0
movss xmm0, dword [eax + 0x1704]
movss dword [esp + 0x60], xmm0
movss xmm0, dword [eax + 0x1708]
mov eax, dword [0x1027c41c]
push ecx
and dword [esp], ebx
mulss xmm0, dword [eax + 0x1520]
movss dword [esp + 0x68], xmm0
movss xmm0, dword [esp + 0x44]
addss xmm0, dword [esi + 0xc]
movss dword [esp + 0x4c], xmm0
movss xmm0, dword [esp + 0x48]
addss xmm0, dword [esi + 0x10]
movss dword [esp + 0x50], xmm0
movss xmm0, dword [esp + 0x3c]
addss xmm0, dword [esi + 0xc]
movss dword [esp + 0x1c], xmm0
movss xmm0, dword [esp + 0x40]
addss xmm0, dword [esi + 0x10]
movss dword [esp + 0x20], xmm0
lea ecx, [esp + 0x5c]
call fcn.1004808c
mov ecx, dword [esi + 0x294]
push eax
lea eax, [esp + 0x50]
push eax
lea eax, [esp + 0x24]
push eax
call fcn.1005dfe2
movss xmm0, dword [esp + 0x38]
addss xmm0, dword [esi + 0xc]
movss xmm1, dword [0x10273ea0]
mov eax, dword [0x1027c41c]
push ecx
mov dword [esp], 0x3f800000
subss xmm0, xmm1
push 0xf
push ecx
and dword [esp], ebx
movss dword [esp + 0x4c], xmm0
movss xmm0, dword [esp + 0x48]
addss xmm0, dword [esi + 0x10]
subss xmm0, xmm1
movss dword [esp + 0x50], xmm0
movss xmm0, dword [esp + 0x3c]
addss xmm0, dword [esi + 0xc]
addss xmm0, xmm1
movss dword [esp + 0x44], xmm0
movss xmm0, dword [esp + 0x40]
addss xmm0, dword [esi + 0x10]
addss xmm0, xmm1
movss dword [esp + 0x48], xmm0
movss xmm0, dword [eax + 0x1520]
mulss xmm0, dword [0x10274050]
call fcn.1010fe60
mov ecx, dword [esi + 0x294]
shl eax, 0x18
push eax
lea eax, [esp + 0x50]
push eax
lea eax, [esp + 0x4c]
push eax
call fcn.1005dfe2
mov eax, dword [0x1027c494]
cmp byte [eax + 0x1784], bl
je 0x10045408
and dword [esp + 0x3c], ebx
lea ecx, [esp + 0x30]
push dword [esp + 0x3c]
and dword [esp + 0x3c], ebx
push dword [esp + 0x3c]
mov dword [esp + 0x3c], 0x43340000
push dword [esp + 0x3c]
mov dword [esp + 0x3c], 0x42800000
push dword [esp + 0x3c]
call fcn.1004623e
movss xmm0, dword [0x10273f90]
xorps xmm1, xmm1
call fcn.10046146
add esp, 0xc
lea ecx, [esp + 0x54]
movaps xmm2, xmm0
mov dword [esp], 0xbf800000
push ebx
push ebx
mov ebx, dword [0x1027ceb4]
mov edx, ebx
push 0x102722b4
call fcn.1004b9d5
movss xmm0, dword [0x102740d4]
add esp, 0x10
xorps xmm1, xmm1
call fcn.10046146
movss xmm1, dword [0x10273e38]
movaps xmm2, xmm0
subss xmm2, dword [esp + 0x30]
movss xmm0, dword [esp + 0x50]
mov eax, dword [0x1027c494]
mov edi, dword [esi + 0x294]
mulss xmm0, xmm1
mulss xmm2, xmm1
addss xmm2, dword [esp + 0x30]
subss xmm2, xmm0
movss xmm0, dword [eax + 0x1794]
mulss xmm0, dword [0x1027412c]
mov eax, dword [esp + 0x20]
cvttss2si esi, xmm0
movaps xmm0, xmm2
movss dword [esp + 0x38], xmm2
addss xmm0, dword [eax + 0xc]
shl esi, 0x18
or esi, 0x565656
movss dword [esp + 0x40], xmm0
movss xmm0, dword [esp + 0x34]
addss xmm0, dword [eax + 0x10]
addss xmm0, xmm1
xorps xmm1, xmm1
movss dword [esp + 0x44], xmm0
movss xmm0, dword [0x10273f90]
call fcn.10046146
push 0
push ecx
and dword [esp], 0
lea eax, [esp + 0x48]
push 0
push 0x102722b4
push esi
push eax
push ebx
movaps xmm2, xmm0
mov ecx, edi
call fcn.1005e4e0
mov eax, dword [0x1027c494]
mov ecx, dword [esp + 0x20]
movss xmm0, dword [eax + 0x1788]
mov esi, dword [ecx + 0x294]
movss dword [esp + 0x50], xmm0
movss xmm0, dword [eax + 0x178c]
movss dword [esp + 0x54], xmm0
movss xmm0, dword [eax + 0x1790]
movss dword [esp + 0x58], xmm0
movss xmm0, dword [eax + 0x1794]
mov eax, dword [0x1027c41c]
mulss xmm0, dword [eax + 0x1520]
movss dword [esp + 0x5c], xmm0
movss xmm0, dword [esp + 0x38]
addss xmm0, dword [ecx + 0xc]
movss dword [esp + 0x40], xmm0
xorps xmm1, xmm1
movss xmm0, dword [esp + 0x34]
addss xmm0, dword [ecx + 0x10]
movss dword [esp + 0x44], xmm0
movss xmm0, dword [0x10273f90]
call fcn.10046146
push 0
push ecx
and dword [esp], 0
lea ecx, [esp + 0x58]
push 0
push 0x102722b4
movaps xmm5, xmm0
call fcn.1004808c
push eax
lea eax, [esp + 0x54]
push eax
push dword [0x1027ceb4]
movaps xmm2, xmm5
mov ecx, esi
jmp 0x10045403
and dword [esp + 0x3c], ebx
lea ecx, [esp + 0x50]
push dword [esp + 0x3c]
and dword [esp + 0x3c], ebx
push dword [esp + 0x3c]
mov dword [esp + 0x3c], 0x42340000
push dword [esp + 0x3c]
mov dword [esp + 0x3c], 0x41b80000
push dword [esp + 0x3c]
call fcn.1004623e
add esp, 0x10
mov ecx, eax
call fcn.10050a1e
mov edx, dword [0x1027c41c]
push ebx
push str.previewnade.yaw
mov eax, dword [edx + 0x1b48]
mov ecx, dword [eax + 0xd0]
mov eax, dword [eax + 0xd4]
mov dword [esp + 0x44], eax
mov eax, dword [edx + 0x1b48]
mov dword [esp + 0x40], ecx
mov byte [eax + 0x84], 1
mov ecx, dword [edx + 0x1b48]
call fcn.100493dd
movss xmm2, dword [esp + 0x38]
lea ecx, [esp + 0x50]
movss xmm1, dword [esp + 0x3c]
movaps xmm0, xmm2
addss xmm0, dword [0x102740f8]
and dword [esp + 0x34], ebx
mov esi, eax
push dword [esp + 0x34]
and dword [esp + 0x34], ebx
push dword [esp + 0x34]
movss dword [esp + 0x28], xmm0
movaps xmm0, xmm1
addss xmm0, dword [0x102740a0]
movss dword [esp + 0x2c], xmm0
push dword [esp + 0x2c]
push dword [esp + 0x2c]
call fcn.1004623e
push ebx
movss dword [esp + 0x54], xmm2
movss dword [esp + 0x58], xmm1
mov ecx, dword [eax]
mov eax, dword [eax + 4]
push ebx
push ebx
mov dword [esp + 0x68], eax
lea eax, [esp + 0x5c]
push esi
push eax
mov dword [esp + 0x6c], ecx
call fcn.10065720
mov edi, dword [0x1027c41c]
add esp, 0x24
mov eax, dword [edi + 0x1b48]
mov byte [eax + 0x84], 1
mov ebx, dword [edi + 0x1b48]
mov dword [esp + 0x10], ebx
test ebx, ebx
je 0x10045408
mov eax, dword [0x1027c494]
cmp byte [eax + 0x1534], 0
je 0x10045408
cmp byte [eax + 0x1535], 0
je 0x100446d2
and dword [esp + 0x3c], 0
lea ecx, [esp + 0x30]
push dword [esp + 0x3c]
and dword [esp + 0x3c], 0
push dword [esp + 0x3c]
mov dword [esp + 0x3c], 0x42d60000
push dword [esp + 0x3c]
mov dword [esp + 0x3c], 0x42bc0000
push dword [esp + 0x3c]
call fcn.1004623e
and dword [esp + 0x4c], 0
lea ecx, [esp + 0x48]
push dword [esp + 0x4c]
and dword [esp + 0x4c], 0
push dword [esp + 0x4c]
mov dword [esp + 0x3c], 0x43250000
push dword [esp + 0x3c]
mov dword [esp + 0x3c], 0x43180000
push dword [esp + 0x3c]
call fcn.1004623e
movss xmm0, dword [esp + 0x58]
add esp, 0x1c
addss xmm0, dword [ebx + 0xc]
movss xmm1, dword [0x10273ea0]
mov dword [esp], 0x3f800000
push 0xf
addss xmm0, xmm1
push ecx
and dword [esp], 0
movss dword [esp + 0x4c], xmm0
movss xmm0, dword [esp + 0x48]
addss xmm0, dword [ebx + 0x10]
addss xmm0, xmm1
movss dword [esp + 0x50], xmm0
movss xmm0, dword [esp + 0x3c]
addss xmm0, dword [ebx + 0xc]
subss xmm0, xmm1
movss dword [esp + 0x2c], xmm0
movss xmm0, dword [esp + 0x40]
addss xmm0, dword [ebx + 0x10]
subss xmm0, xmm1
movss dword [esp + 0x30], xmm0
movss xmm0, dword [edi + 0x1520]
mulss xmm0, dword [0x10274050]
call fcn.1010fe60
mov ecx, dword [ebx + 0x294]
shl eax, 0x18
push eax
lea eax, [esp + 0x50]
push eax
lea eax, [esp + 0x34]
push eax
call fcn.1005dfe2
mov eax, dword [0x1027c494]
mov ecx, dword [0x1027c41c]
movss xmm2, dword [ebx + 0xc]
movss xmm1, dword [ebx + 0x10]
movss xmm0, dword [eax + 0x1538]
movss dword [esp + 0x50], xmm0
movss xmm0, dword [eax + 0x153c]
movss dword [esp + 0x54], xmm0
movss xmm0, dword [eax + 0x1540]
movss dword [esp + 0x58], xmm0
movss xmm0, dword [ecx + 0x1520]
mulss xmm0, dword [eax + 0x1544]
push ecx
mov dword [esp], 0x3f800000
push 0xf
movss dword [esp + 0x64], xmm0
movaps xmm0, xmm2
addss xmm0, dword [esp + 0x40]
addss xmm2, dword [esp + 0x38]
push ecx
and dword [esp], 0
movss dword [esp + 0x4c], xmm0
movaps xmm0, xmm1
addss xmm0, dword [esp + 0x48]
addss xmm1, dword [esp + 0x40]
movss dword [esp + 0x2c], xmm2
movss dword [esp + 0x50], xmm0
movss dword [esp + 0x30], xmm1
lea ecx, [esp + 0x5c]
call fcn.1004808c
mov ecx, dword [ebx + 0x294]
push eax
lea eax, [esp + 0x50]
push eax
lea eax, [esp + 0x34]
push eax
call fcn.1005dfe2
movss xmm1, dword [ebx + 0xc]
movss xmm3, dword [0x10273ea0]
movaps xmm0, xmm1
addss xmm0, dword [esp + 0x38]
movss xmm2, dword [ebx + 0x10]
addss xmm1, dword [esp + 0x30]
mov eax, dword [0x1027c41c]
push ecx
subss xmm0, xmm3
mov dword [esp], 0x3f800000
push 0xf
addss xmm1, xmm3
push ecx
and dword [esp], 0
movss dword [esp + 0x4c], xmm0
movaps xmm0, xmm2
addss xmm0, dword [esp + 0x48]
addss xmm2, dword [esp + 0x40]
movss dword [esp + 0x44], xmm1
subss xmm0, xmm3
addss xmm2, xmm3
movss dword [esp + 0x50], xmm0
movss xmm0, dword [eax + 0x1520]
mulss xmm0, dword [0x10274050]
movss dword [esp + 0x48], xmm2
call fcn.1010fe60
mov ecx, dword [ebx + 0x294]
shl eax, 0x18
push eax
lea eax, [esp + 0x50]
push eax
lea eax, [esp + 0x4c]
push eax
call fcn.1005dfe2
mov eax, dword [0x1027c494]
mov edi, dword [0x1027c41c]
cmp byte [eax + 0x1548], 0
je 0x10045408
cmp byte [eax + 0x155c], 0
xorps xmm1, xmm1
movss xmm5, dword [0x10273e38]
je 0x100448d7
and dword [esp + 0x3c], 0
lea ecx, [esp + 0x40]
push dword [esp + 0x3c]
and dword [esp + 0x3c], 0
push dword [esp + 0x3c]
mov dword [esp + 0x3c], 0x432a0000
push dword [esp + 0x3c]
mov dword [esp + 0x3c], 0x41b80000
push dword [esp + 0x3c]
call fcn.1004623e
movss xmm0, dword [0x10274134]
call fcn.10046146
subss xmm0, dword [esp + 0x50]
mulss xmm0, xmm5
movss dword [esp + 0x40], xmm0
movss xmm0, dword [0x10273fc4]
call fcn.10046146
mulss xmm0, xmm5
movss dword [esp + 0x48], xmm0
movss xmm0, dword [0x10273f88]
call fcn.10046146
mov edx, dword [0x1027d080]
lea ecx, [esp + 0x60]
add esp, 0xc
movaps xmm2, xmm0
mov dword [esp], 0xbf800000
push 0
push 0
push 0x102722b8
call fcn.1004b9d5
mov eax, dword [0x1027c494]
lea ecx, [esp + 0x30]
add esp, 0x10
add eax, 0x154c
push eax
call fcn.1001531c
movzx esi, byte [esp + 0x23]
mov ebx, dword [ebx + 0x294]
movd xmm0, esi
cvtdq2ps xmm0, xmm0
mulss xmm0, dword [edi + 0x1520]
call fcn.1010fe60
movss xmm0, dword [esp + 0x30]
mov edi, eax
mov eax, dword [esp + 0x10]
xorps xmm1, xmm1
shl edi, 0x18
or edi, 0x565656
addss xmm0, dword [eax + 0xc]
movss dword [esp + 0x50], xmm0
movss xmm0, dword [esp + 0x44]
addss xmm0, dword [eax + 0x10]
addss xmm0, dword [0x10273e38]
movss dword [esp + 0x54], xmm0
movss xmm0, dword [0x10273f88]
call fcn.10046146
push 0
push ecx
and dword [esp], 0
lea eax, [esp + 0x58]
push 0
push 0x102722b8
push edi
push eax
push dword [0x1027d080]
movaps xmm2, xmm0
mov ecx, ebx
call fcn.1005e4e0
mov eax, dword [0x1027c41c]
mov ebx, dword [esp + 0x10]
movd xmm0, esi
cvtdq2ps xmm0, xmm0
mov edi, dword [ebx + 0x294]
mulss xmm0, dword [eax + 0x1520]
call fcn.1010fe60
mov ecx, dword [esp + 0x20]
mov esi, eax
shl esi, 8
movzx edx, cl
or esi, edx
shl esi, 8
movss xmm0, dword [esp + 0x30]
xorps xmm1, xmm1
addss xmm0, dword [ebx + 0xc]
movzx ecx, ch
or esi, ecx
movzx ecx, byte [esp + 0x22]
shl esi, 8
or esi, ecx
movss dword [esp + 0x50], xmm0
movss xmm0, dword [esp + 0x44]
addss xmm0, dword [ebx + 0x10]
movss dword [esp + 0x54], xmm0
movss xmm0, dword [0x10273f88]
call fcn.10046146
push 0
push ecx
and dword [esp], 0
lea eax, [esp + 0x58]
push 0
push 0x102722b8
push esi
push eax
push dword [0x1027d080]
movaps xmm2, xmm0
mov ecx, edi
call fcn.1005e4e0
mov eax, dword [0x1027c494]
movss xmm1, dword [esp + 0x38]
cmp byte [eax + 0x155d], 0
je 0x10045408
and dword [esp + 0x44], 0
lea ecx, [esp + 0x40]
push dword [esp + 0x44]
and dword [esp + 0x44], 0
push dword [esp + 0x44]
mov dword [esp + 0x44], 0x432a0000
push dword [esp + 0x44]
mov dword [esp + 0x44], 0x42bc0000
push dword [esp + 0x44]
call fcn.1004623e
movss xmm0, dword [esp + 0x54]
addss xmm0, xmm1
xorps xmm1, xmm1
movss dword [esp + 0x40], xmm0
movss xmm0, dword [0x10273f88]
call fcn.10046146
mov edx, dword [0x1027d090]
lea ecx, [esp + 0x60]
add esp, 0xc
movaps xmm2, xmm0
mov dword [esp], 0xbf800000
push 0
push 0
push str.HE_GRENADE
call fcn.1004b9d5
movss xmm0, dword [0x102740a8]
add esp, 0x10
xorps xmm1, xmm1
call fcn.10046146
movss xmm2, dword [0x10273e38]
movaps xmm1, xmm0
subss xmm1, dword [esp + 0x40]
movss xmm0, dword [esp + 0x50]
mov eax, dword [0x1027c494]
mulss xmm0, xmm2
mov edi, dword [ebx + 0x294]
mulss xmm1, xmm2
addss xmm1, dword [esp + 0x40]
subss xmm1, xmm0
movss xmm0, dword [eax + 0x1558]
mulss xmm0, dword [0x1027412c]
cvttss2si esi, xmm0
movaps xmm0, xmm1
movss dword [esp + 0x38], xmm1
addss xmm0, dword [ebx + 0xc]
shl esi, 0x18
xorps xmm1, xmm1
or esi, 0x565656
movss dword [esp + 0x50], xmm0
movss xmm0, dword [esp + 0x30]
addss xmm0, dword [ebx + 0x10]
addss xmm0, xmm2
movss dword [esp + 0x54], xmm0
movss xmm0, dword [0x10273f88]
call fcn.10046146
push 0
push ecx
and dword [esp], 0
lea eax, [esp + 0x58]
push 0
push str.HE_GRENADE
push esi
push eax
push dword [0x1027ceac]
movaps xmm2, xmm0
mov ecx, edi
call fcn.1005e4e0
mov eax, dword [0x1027c494]
mov ecx, dword [0x1027c41c]
mov esi, dword [ebx + 0x294]
movss xmm0, dword [eax + 0x154c]
movss dword [esp + 0x40], xmm0
movss xmm0, dword [eax + 0x1550]
movss dword [esp + 0x44], xmm0
movss xmm0, dword [eax + 0x1554]
movss dword [esp + 0x48], xmm0
movss xmm0, dword [ecx + 0x1520]
mulss xmm0, dword [eax + 0x1558]
movss dword [esp + 0x4c], xmm0
movss xmm0, dword [esp + 0x38]
addss xmm0, dword [ebx + 0xc]
movss dword [esp + 0x50], xmm0
xorps xmm1, xmm1
movss xmm0, dword [esp + 0x30]
addss xmm0, dword [ebx + 0x10]
movss dword [esp + 0x54], xmm0
movss xmm0, dword [0x10273f88]
call fcn.10046146
push 0
push ecx
and dword [esp], 0
lea ecx, [esp + 0x48]
push 0
push str.HE_GRENADE
movaps xmm5, xmm0
call fcn.1004808c
push eax
lea eax, [esp + 0x64]
push eax
push dword [0x1027ceac]
jmp 0x10044331
and dword [esp + 0x44], ebx
lea ecx, [esp + 0x50]
push dword [esp + 0x44]
and dword [esp + 0x44], ebx
push dword [esp + 0x44]
mov dword [esp + 0x44], 0x42340000
push dword [esp + 0x44]
mov dword [esp + 0x44], 0x41b80000
push dword [esp + 0x44]
call fcn.1004623e
add esp, 0x10
mov ecx, eax
call fcn.10050a1e
mov edx, dword [0x1027c41c]
push ebx
push str.preview.yaw
mov eax, dword [edx + 0x1b48]
mov ecx, dword [eax + 0xd0]
mov eax, dword [eax + 0xd4]
mov dword [esp + 0x4c], eax
mov eax, dword [edx + 0x1b48]
mov dword [esp + 0x48], ecx
mov byte [eax + 0x84], 1
mov ecx, dword [edx + 0x1b48]
call fcn.100493dd
movss xmm2, dword [esp + 0x40]
lea ecx, [esp + 0x50]
movss xmm1, dword [esp + 0x44]
movaps xmm0, xmm2
addss xmm0, dword [0x102740f8]
and dword [esp + 0x3c], ebx
mov esi, eax
push dword [esp + 0x3c]
and dword [esp + 0x3c], ebx
push dword [esp + 0x3c]
movss dword [esp + 0x38], xmm0
movaps xmm0, xmm1
addss xmm0, dword [0x102740a0]
movss dword [esp + 0x3c], xmm0
push dword [esp + 0x3c]
push dword [esp + 0x3c]
call fcn.1004623e
push ebx
movss dword [esp + 0x34], xmm2
movss dword [esp + 0x38], xmm1
mov ecx, dword [eax]
mov eax, dword [eax + 4]
push ebx
push ebx
mov dword [esp + 0x48], eax
lea eax, [esp + 0x3c]
push esi
push eax
mov dword [esp + 0x4c], ecx
call fcn.10065720
mov edi, dword [0x1027c41c]
add esp, 0x24
mov eax, dword [edi + 0x1b48]
mov byte [eax + 0x84], 1
mov ebx, dword [edi + 0x1b48]
mov dword [esp + 0x20], ebx
test ebx, ebx
je 0x10045408
mov esi, dword [0x1027c494]
cmp byte [esi + 0x15b8], 0
je 0x10045408
cmp byte [esi + 0x15b9], 0
je 0x10044e60
and dword [esp + 0x44], 0
lea ecx, [esp + 0x30]
push dword [esp + 0x44]
and dword [esp + 0x44], 0
push dword [esp + 0x44]
mov dword [esp + 0x44], 0x42820000
push dword [esp + 0x44]
mov dword [esp + 0x44], 0x41b80000
push dword [esp + 0x44]
call fcn.1004623e
and dword [esp + 0x54], 0
lea ecx, [esp + 0x48]
push dword [esp + 0x54]
and dword [esp + 0x54], 0
push dword [esp + 0x54]
mov dword [esp + 0x54], 0x432f0000
push dword [esp + 0x54]
mov dword [esp + 0x54], 0x43630000
push dword [esp + 0x54]
call fcn.1004623e
movss xmm1, dword [ebx + 0xc]
add esp, 0x1c
movss xmm3, dword [0x10273ea0]
movaps xmm0, xmm1
addss xmm0, dword [esp + 0x3c]
movss xmm2, dword [ebx + 0x10]
addss xmm1, dword [esp + 0x34]
mov dword [esp], 0x3f800000
push 0xf
addss xmm0, xmm3
push ecx
and dword [esp], 0
subss xmm1, xmm3
movss dword [esp + 0x5c], xmm0
movaps xmm0, xmm2
addss xmm0, dword [esp + 0x48]
addss xmm2, dword [esp + 0x40]
movss dword [esp + 0x4c], xmm1
addss xmm0, xmm3
subss xmm2, xmm3
movss dword [esp + 0x60], xmm0
movss xmm0, dword [edi + 0x1520]
mulss xmm0, dword [0x10274050]
movss dword [esp + 0x50], xmm2
call fcn.1010fe60
mov ecx, dword [ebx + 0x294]
shl eax, 0x18
push eax
lea eax, [esp + 0x60]
push eax
lea eax, [esp + 0x54]
push eax
call fcn.1005dfe2
mov eax, dword [0x1027c494]
mov ecx, dword [0x1027c41c]
movss xmm2, dword [ebx + 0xc]
movss xmm1, dword [ebx + 0x10]
movss xmm0, dword [eax + 0x15bc]
movss dword [esp + 0x10], xmm0
movss xmm0, dword [eax + 0x15c0]
movss dword [esp + 0x14], xmm0
movss xmm0, dword [eax + 0x15c4]
movss dword [esp + 0x18], xmm0
movss xmm0, dword [ecx + 0x1520]
mulss xmm0, dword [eax + 0x15c8]
push ecx
mov dword [esp], 0x3f800000
push 0xf
movss dword [esp + 0x24], xmm0
movaps xmm0, xmm2
addss xmm0, dword [esp + 0x40]
addss xmm2, dword [esp + 0x38]
push ecx
and dword [esp], 0
movss dword [esp + 0x5c], xmm0
movaps xmm0, xmm1
addss xmm0, dword [esp + 0x48]
addss xmm1, dword [esp + 0x40]
movss dword [esp + 0x4c], xmm2
movss dword [esp + 0x60], xmm0
movss dword [esp + 0x50], xmm1
lea ecx, [esp + 0x1c]
call fcn.1004808c
mov ecx, dword [ebx + 0x294]
push eax
lea eax, [esp + 0x60]
push eax
lea eax, [esp + 0x54]
push eax
call fcn.1005dfe2
movss xmm1, dword [ebx + 0xc]
movss xmm3, dword [0x10273ea0]
movaps xmm0, xmm1
addss xmm0, dword [esp + 0x38]
movss xmm2, dword [ebx + 0x10]
addss xmm1, dword [esp + 0x30]
mov eax, dword [0x1027c41c]
push ecx
subss xmm0, xmm3
mov dword [esp], 0x3f800000
push 0xf
addss xmm1, xmm3
push ecx
and dword [esp], 0
movss dword [esp + 0x5c], xmm0
movaps xmm0, xmm2
addss xmm0, dword [esp + 0x48]
addss xmm2, dword [esp + 0x40]
movss dword [esp + 0x4c], xmm1
subss xmm0, xmm3
addss xmm2, xmm3
movss dword [esp + 0x60], xmm0
movss xmm0, dword [eax + 0x1520]
mulss xmm0, dword [0x10274050]
movss dword [esp + 0x50], xmm2
call fcn.1010fe60
mov ecx, dword [ebx + 0x294]
shl eax, 0x18
push eax
lea eax, [esp + 0x60]
push eax
lea eax, [esp + 0x54]
push eax
call fcn.1005dfe2
mov esi, dword [0x1027c494]
mov edi, dword [0x1027c41c]
lea eax, [esi + 0x15d0]
push eax
lea ecx, [esp + 0x14]
call fcn.1001531c
cmp byte [esi + 0x15cc], 0
je 0x100451f3
cmp byte [esi + 0x15e0], 0
je 0x10045029
and dword [esp + 0x44], 0
lea ecx, [esp + 0x30]
push dword [esp + 0x44]
and dword [esp + 0x44], 0
push dword [esp + 0x44]
mov dword [esp + 0x44], 0x43320000
push dword [esp + 0x44]
mov dword [esp + 0x44], 0x41b80000
push dword [esp + 0x44]
call fcn.1004623e
and dword [esp + 0x54], 0
lea ecx, [esp + 0x48]
push dword [esp + 0x54]
and dword [esp + 0x54], 0
push dword [esp + 0x54]
mov dword [esp + 0x54], 0x43330000
push dword [esp + 0x54]
mov dword [esp + 0x54], 0x43630000
push dword [esp + 0x54]
call fcn.1004623e
movss xmm1, dword [ebx + 0xc]
add esp, 0x20
movss xmm3, dword [0x10273ea0]
movaps xmm0, xmm1
addss xmm0, dword [esp + 0x38]
movss xmm2, dword [ebx + 0x10]
movzx esi, byte [esp + 0x13]
addss xmm1, dword [esp + 0x30]
push 0xf
addss xmm0, xmm3
push ecx
and dword [esp], 0
subss xmm1, xmm3
movss dword [esp + 0x58], xmm0
movaps xmm0, xmm2
addss xmm0, dword [esp + 0x44]
addss xmm2, dword [esp + 0x3c]
movss dword [esp + 0x48], xmm1
addss xmm0, xmm3
subss xmm2, xmm3
movss dword [esp + 0x5c], xmm0
movd xmm0, esi
cvtdq2ps xmm0, xmm0
movss dword [esp + 0x4c], xmm2
mulss xmm0, dword [edi + 0x1520]
call fcn.1010fe60
mov ecx, dword [ebx + 0x294]
shl eax, 0x18
or eax, 0x707070
push eax
lea eax, [esp + 0x5c]
push eax
lea eax, [esp + 0x50]
push eax
call fcn.1005e0cd
movss xmm2, dword [ebx + 0xc]
movss xmm1, dword [ebx + 0x10]
movaps xmm0, xmm2
addss xmm0, dword [esp + 0x38]
mov eax, dword [0x1027c41c]
addss xmm2, dword [esp + 0x30]
push 0xf
push ecx
and dword [esp], 0
movss dword [esp + 0x58], xmm0
movaps xmm0, xmm1
addss xmm0, dword [esp + 0x44]
addss xmm1, dword [esp + 0x3c]
movss dword [esp + 0x48], xmm2
movss dword [esp + 0x5c], xmm0
movd xmm0, esi
cvtdq2ps xmm0, xmm0
movss dword [esp + 0x4c], xmm1
mulss xmm0, dword [eax + 0x1520]
call fcn.1010fe60
mov ecx, dword [esp + 0x18]
shl eax, 8
movzx edx, cl
or eax, edx
movzx ecx, ch
shl eax, 8
or eax, ecx
movzx ecx, byte [esp + 0x1a]
shl eax, 8
or eax, ecx
mov ecx, dword [ebx + 0x294]
push eax
lea eax, [esp + 0x5c]
push eax
lea eax, [esp + 0x50]
push eax
call fcn.1005e0cd
mov esi, dword [0x1027c494]
mov edi, dword [0x1027c41c]
cmp byte [esi + 0x15e1], 0
je 0x100451f3
and dword [esp + 0x44], 0
lea ecx, [esp + 0x40]
push dword [esp + 0x44]
and dword [esp + 0x44], 0
push dword [esp + 0x44]
mov dword [esp + 0x44], 0x43340000
push dword [esp + 0x44]
mov dword [esp + 0x44], 0x41b80000
push dword [esp + 0x44]
call fcn.1004623e
movss xmm0, dword [0x1027410c]
xorps xmm1, xmm1
call fcn.10046146
subss xmm0, dword [esp + 0x50]
mulss xmm0, dword [0x10273e38]
movss dword [esp + 0x40], xmm0
movss xmm0, dword [0x10273f88]
call fcn.10046146
mov edx, dword [0x1027ceac]
lea ecx, [esp + 0x60]
add esp, 0xc
movaps xmm2, xmm0
mov dword [esp], 0xbf800000
push 0
push 0
push str.10_30
call fcn.1004b9d5
movzx esi, byte [esp + 0x23]
add esp, 0x10
mov ebx, dword [ebx + 0x294]
movd xmm0, esi
cvtdq2ps xmm0, xmm0
mulss xmm0, dword [edi + 0x1520]
call fcn.1010fe60
movss xmm0, dword [esp + 0x30]
mov edi, eax
mov eax, dword [esp + 0x20]
xorps xmm1, xmm1
shl edi, 0x18
or edi, 0x565656
addss xmm0, dword [eax + 0xc]
movss dword [esp + 0x50], xmm0
movss xmm0, dword [esp + 0x44]
addss xmm0, dword [eax + 0x10]
addss xmm0, dword [0x10273e38]
movss dword [esp + 0x54], xmm0
movss xmm0, dword [0x10273f88]
call fcn.10046146
push 0
push ecx
and dword [esp], 0
lea eax, [esp + 0x58]
push 0
push str.10_30
push edi
push eax
push dword [0x1027ceac]
movaps xmm2, xmm0
mov ecx, ebx
call fcn.1005e4e0
mov eax, dword [0x1027c41c]
mov ebx, dword [esp + 0x20]
movd xmm0, esi
cvtdq2ps xmm0, xmm0
mov edi, dword [ebx + 0x294]
mulss xmm0, dword [eax + 0x1520]
call fcn.1010fe60
movss xmm0, dword [esp + 0x30]
mov esi, eax
mov eax, dword [esp + 0x10]
addss xmm0, dword [ebx + 0xc]
shl esi, 8
movzx ecx, al
or esi, ecx
movzx ecx, ah
shl esi, 8
or esi, ecx
movss dword [esp + 0x50], xmm0
movzx ecx, byte [esp + 0x12]
shl esi, 8
or esi, ecx
movss xmm0, dword [esp + 0x44]
xorps xmm1, xmm1
addss xmm0, dword [ebx + 0x10]
movss dword [esp + 0x54], xmm0
movss xmm0, dword [0x10273f88]
call fcn.10046146
push 0
push ecx
and dword [esp], 0
lea eax, [esp + 0x58]
push 0
push str.10_30
push esi
push eax
push dword [0x1027ceac]
movaps xmm2, xmm0
mov ecx, edi
call fcn.1005e4e0
mov esi, dword [0x1027c494]
mov edi, dword [0x1027c41c]
cmp byte [esi + 0x15cc], 0
xorps xmm0, xmm0
movss dword [esp + 0x30], xmm0
je 0x10045224
cmp byte [esi + 0x15e1], 0
je 0x10045224
movss xmm0, dword [0x10273f8c]
xorps xmm1, xmm1
call fcn.10046146
movss dword [esp + 0x30], xmm0
cmp byte [esi + 0x1644], 0
je 0x10045408
and dword [esp + 0x44], 0
lea ecx, [esp + 0x50]
push dword [esp + 0x44]
and dword [esp + 0x44], 0
push dword [esp + 0x44]
mov dword [esp + 0x44], 0x43340000
push dword [esp + 0x44]
mov dword [esp + 0x44], 0x41b80000
push dword [esp + 0x44]
call fcn.1004623e
movss xmm0, dword [0x1027410c]
xorps xmm1, xmm1
call fcn.10046146
subss xmm0, dword [esp + 0x60]
mulss xmm0, dword [0x10273e38]
movss dword [esp + 0x48], xmm0
movss xmm0, dword [0x10273f88]
call fcn.10046146
mov edx, dword [0x1027d080]
lea ecx, [esp + 0x50]
add esp, 0xc
movaps xmm2, xmm0
mov dword [esp], 0xbf800000
push 0
push 0
push str.WZaY
call fcn.1004b9d5
movss xmm0, dword [esp + 0x64]
lea ecx, [esp + 0x20]
addss xmm0, dword [esp + 0x40]
mov eax, dword [0x1027c494]
add esp, 0x10
add eax, 0x1648
push eax
movss dword [esp + 0x34], xmm0
call fcn.1001531c
movzx esi, byte [esp + 0x13]
mov ebx, dword [ebx + 0x294]
movd xmm0, esi
cvtdq2ps xmm0, xmm0
mulss xmm0, dword [edi + 0x1520]
call fcn.1010fe60
movss xmm0, dword [esp + 0x38]
mov edi, eax
mov eax, dword [esp + 0x20]
xorps xmm1, xmm1
shl edi, 0x18
or edi, 0x565656
addss xmm0, dword [eax + 0xc]
movss dword [esp + 0x50], xmm0
movss xmm0, dword [esp + 0x30]
addss xmm0, dword [eax + 0x10]
addss xmm0, dword [0x10273e38]
movss dword [esp + 0x54], xmm0
movss xmm0, dword [0x10273f88]
call fcn.10046146
push 0
push ecx
and dword [esp], 0
lea eax, [esp + 0x58]
push 0
push str.WZaY
push edi
push eax
push dword [0x1027d080]
movaps xmm2, xmm0
mov ecx, ebx
call fcn.1005e4e0
mov eax, dword [0x1027c41c]
mov ebx, dword [esp + 0x20]
movd xmm0, esi
cvtdq2ps xmm0, xmm0
mov edi, dword [ebx + 0x294]
mulss xmm0, dword [eax + 0x1520]
call fcn.1010fe60
mov ecx, dword [esp + 0x10]
mov esi, eax
shl esi, 8
movzx edx, cl
or esi, edx
shl esi, 8
movss xmm0, dword [esp + 0x38]
xorps xmm1, xmm1
addss xmm0, dword [ebx + 0xc]
movzx ecx, ch
or esi, ecx
movzx ecx, byte [esp + 0x12]
shl esi, 8
or esi, ecx
movss dword [esp + 0x50], xmm0
movss xmm0, dword [esp + 0x30]
addss xmm0, dword [ebx + 0x10]
movss dword [esp + 0x54], xmm0
movss xmm0, dword [0x10273f88]
call fcn.10046146
push 0
push ecx
and dword [esp], 0
lea eax, [esp + 0x58]
push 0
push str.WZaY
push esi
push eax
push dword [0x1027d080]
movaps xmm2, xmm0
mov ecx, edi
call fcn.1005e4e0
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret