Function at 0x1002d48e
Capabilities:
Contain obfuscated stackstrings

Disassembly:
push ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x1003da29
mov eax, dword fs:[0]
push eax
sub esp, 0x24c
mov eax, dword [0x1004b00c]
xor eax, ebp
mov dword [ebp - 0x10], eax
push ebx
push esi
push edi
push eax
lea eax, [ebp - 0xc]
mov dword fs:[0], eax
xor esi, esi
mov dword [ebp - 0x1b0], esi
mov ecx, dword [0x100d1558]
mov dword [ebp - 0x1e4], esi
mov eax, dword [ecx]
mov eax, dword [eax + 0x30]
call eax
mov ecx, dword [0x100d1564]
push eax
mov edx, dword [ecx]
mov eax, dword [edx + 0xc]
call eax
mov edi, eax
mov dword [ebp - 0x1c4], edi
test edi, edi
je 0x1002e22e
cmp byte [0x10103dc4], 0
jne 0x1002cc7a
cmp byte [0x10103dc5], 0
jne 0x1002cc7a
cmp byte [0x10103dc6], 0
jne 0x1002cc7a
cmp byte [0x10103dcb], 0
jne 0x1002cc7a
cmp byte [0x10103dcc], 0
jne 0x1002cc7a
cmp byte [0x10103dce], 0
jne 0x1002cc7a
cmp byte [0x10103dcd], 0
je 0x1002e22e
xor eax, eax
mov edx, 1
mov dword [ebp - 0x1ec], eax
mov eax, dword [0x100d1560]
mov dword [ebp - 0x1e0], edx
cmp dword [eax + 0x14], edx
jl 0x1002e22e
nop dword [eax + eax]
mov ecx, dword [0x100d1564]
push edx
mov eax, dword [ecx]
mov eax, dword [eax + 0xc]
call eax
mov ebx, eax
mov dword [ebp - 0x208], ebx
test ebx, ebx
je 0x1002e207
cmp ebx, edi
je 0x1002e207
mov ecx, dword [0x100d1564]
push dword [ebx + 0xb38]
mov eax, dword [ecx]
mov eax, dword [eax + 0x10]
call eax
mov ecx, eax
test ecx, ecx
jne 0x1002cce9
xor edi, edi
mov dword [ebp - 0x1d8], edi
jmp 0x1002ccf6
mov eax, dword [ecx]
call dword [eax + 0x1c]
mov edi, eax
mov dword [ebp - 0x1d8], eax
mov ecx, ebx
call fcn.10003050
cmp dword [eax], 0
jne 0x1002e201
cmp byte [0x10103dd0], 0
je 0x1002cd31
mov ecx, ebx
call fcn.10002b40
mov ecx, dword [ebp - 0x1c4]
mov esi, dword [eax]
call fcn.10002b40
cmp esi, dword [eax]
je 0x1002e201
mov esi, dword [ebp - 0x1e4]
mov eax, dword [ebp - 0x1e0]
cmp byte [eax + 0x101040b8], 0
je 0x1002cd52
mov dword [ebp - 0x224], 0xffffffff
mov eax, dword [ebp - 0x224]
jmp 0x1002cd7c
mov ecx, ebx
call fcn.10002b40
cmp dword [eax], 2
jne 0x1002cd65
mov eax, dword [0x10103b58]
jmp 0x1002cd7c
mov ecx, ebx
call fcn.10002b40
cmp dword [eax], 3
mov eax, dword [ebp - 0x1ec]
cmove eax, dword [0x10103b54]
mov dword [ebp - 0x1ec], eax
mov ecx, ebx
mov dword [ebp - 0x1d0], eax
mov eax, dword [ebx]
call dword [eax + 0x24]
mov ecx, ebx
movss xmm0, dword [eax]
movss dword [ebp - 0x1d4], xmm0
movss xmm0, dword [eax + 4]
movss dword [ebp - 0x1c8], xmm0
movss xmm0, dword [eax + 8]
movss dword [ebp - 0x1bc], xmm0
call fcn.10002d80
movss xmm0, dword [ebp - 0x1d4]
movss dword [ebp - 0x1b8], xmm0
movss xmm0, dword [ebp - 0x1c8]
mov eax, dword [eax]
shr eax, 1
and al, 1
movss dword [ebp - 0x1c0], xmm0
movss xmm0, dword [ebp - 0x1bc]
mov dword [ebp - 0x1ac], eax
je 0x1002cdfc
addss xmm0, dword [0x1004689c]
jmp 0x1002ce04
addss xmm0, dword [0x100468b0]
mov ecx, dword [0x100d1558]
movss dword [ebp - 0x1b0], xmm0
mov eax, dword [ecx]
mov eax, dword [eax + 0x98]
call eax
movss xmm1, dword [ebp - 0x1d4]
mov ecx, eax
movss xmm5, dword [ebp - 0x1c8]
movaps xmm3, xmm1
movss xmm4, dword [ebp - 0x1bc]
movaps xmm0, xmm5
mulss xmm0, dword [ecx + 0x34]
mulss xmm3, dword [ecx + 0x30]
addss xmm3, xmm0
movaps xmm0, xmm4
mulss xmm0, dword [ecx + 0x38]
addss xmm0, dword [ecx + 0x3c]
addss xmm3, xmm0
cvtps2pd xmm0, xmm3
comisd xmm0, xmmword [0x10046760]
jbe 0x1002e201
mulss xmm1, dword [ecx + 0x10]
xorps xmm0, xmm0
mov eax, dword [0x100d154c]
mulss xmm5, dword [ecx + 0x14]
mulss xmm4, dword [ecx + 0x18]
addss xmm1, xmm5
cvtsi2ss xmm0, eax
addss xmm4, dword [ecx + 0x1c]
mulss xmm0, dword [0x1004673c]
mov ecx, dword [0x100d1558]
addss xmm1, xmm4
cvtps2pd xmm2, xmm0
divss xmm1, xmm3
xorps xmm0, xmm0
mulss xmm1, dword [0x1004673c]
cvtsi2sd xmm0, eax
mov eax, dword [ecx]
cvtps2pd xmm1, xmm1
mov eax, dword [eax + 0x98]
mulsd xmm1, xmm0
addsd xmm1, qword [0x100467c0]
subsd xmm2, xmm1
cvtpd2ps xmm0, xmm2
movss dword [ebp - 0x1cc], xmm0
call eax
movss xmm4, dword [ebp - 0x1c0]
mov ecx, eax
movss xmm6, dword [ebp - 0x1b8]
movaps xmm1, xmm4
movss xmm5, dword [ebp - 0x1b0]
movaps xmm0, xmm6
mulss xmm0, dword [ecx + 0x30]
mulss xmm1, dword [ecx + 0x34]
addss xmm1, xmm0
movaps xmm0, xmm5
mulss xmm0, dword [ecx + 0x38]
addss xmm0, dword [ecx + 0x3c]
addss xmm1, xmm0
cvtps2pd xmm0, xmm1
comisd xmm0, xmmword [0x10046760]
jbe 0x1002e201
cmp byte [0x10103dcc], 0
movaps xmm0, xmm6
mulss xmm0, dword [ecx]
mov eax, dword [0x100d1554]
movss xmm3, dword [0x10046778]
divss xmm3, xmm1
movaps xmm1, xmm4
movss xmm7, dword [0x1004673c]
mulss xmm1, dword [ecx + 4]
mulss xmm4, dword [ecx + 0x14]
addss xmm1, xmm0
mulss xmm6, dword [ecx + 0x10]
movaps xmm0, xmm5
mulss xmm5, dword [ecx + 0x18]
mulss xmm0, dword [ecx + 8]
addss xmm4, xmm6
addss xmm5, dword [ecx + 0x1c]
addss xmm0, dword [ecx + 0xc]
addss xmm4, xmm5
addss xmm1, xmm0
xorps xmm0, xmm0
cvtsi2sd xmm0, eax
mulss xmm1, xmm3
mulss xmm4, xmm3
mulss xmm1, xmm7
mulss xmm4, xmm7
cvtps2pd xmm1, xmm1
mulsd xmm1, xmm0
xorps xmm0, xmm0
cvtsi2ss xmm0, eax
mov eax, dword [0x100d154c]
addsd xmm1, qword [0x100467c0]
mulss xmm0, xmm7
cvtps2pd xmm0, xmm0
addsd xmm1, xmm0
cvtpd2ps xmm0, xmm1
cvtps2pd xmm1, xmm4
movss dword [ebp - 0x1c0], xmm0
xorps xmm0, xmm0
cvtsi2ss xmm0, eax
mulss xmm0, xmm7
cvtps2pd xmm2, xmm0
xorps xmm0, xmm0
cvtsi2sd xmm0, eax
mulsd xmm1, xmm0
addsd xmm1, qword [0x100467c0]
subsd xmm2, xmm1
cvtpd2ps xmm3, xmm2
movss dword [ebp - 0x1b8], xmm3
je 0x1002d033
mov dword [ebp - 0x220], 0xa0ffffff
mov ecx, 0x100d1438
push dword [ebp - 0x220]
push ebx
call fcn.10018d60
movss xmm3, dword [ebp - 0x1b8]
movss xmm0, dword [ebp - 0x1cc]
mov eax, dword fs:[0x2c]
subss xmm0, xmm3
mov ecx, dword [0x100d13d0]
mov ecx, dword [eax + ecx*4]
movaps xmm1, xmm0
mulss xmm1, dword [0x10046704]
mov eax, dword [0x102f7794]
movss dword [ebp - 0x1c8], xmm0
movss dword [ebp - 0x1d4], xmm1
cmp eax, dword [ecx + 4]
jle 0x1002d0b1
push 0x102f7794
call fcn.100380f9
add esp, 4
cmp dword [0x102f7794], 0xffffffff
jne 0x1002d099
push 0x102f7794
call fcn.100380af
add esp, 4
movss xmm3, dword [ebp - 0x1b8]
movss xmm0, dword [ebp - 0x1c8]
movss xmm1, dword [ebp - 0x1d4]
cmp byte [ebp - 0x1ac], 0
je 0x1002d0ca
mulss xmm1, dword [0x10046798]
movss dword [ebp - 0x1d4], xmm1
cmp byte [0x10103dc4], 0
movss xmm2, dword [ebp - 0x1c0]
subss xmm2, xmm1
movss dword [ebp - 0x1bc], xmm2
je 0x1002d149
mov eax, dword [ebp - 0x1ec]
movzx edx, byte [ebp - 0x1ce]
movzx ecx, ah
movzx eax, al
mov byte [ebp - 0x218], al
cvttss2si eax, xmm0
mov dword [ebp - 0x21c], 0x80000000
mov byte [ebp - 0x217], cl
mov byte [ebp - 0x216], dl
mov byte [ebp - 0x215], 0xa0
movaps xmm0, xmm1
push dword [ebp - 0x21c]
addss xmm0, xmm1
push dword [ebp - 0x218]
push eax
cvttss2si eax, xmm0
push eax
cvttss2si eax, xmm3
push eax
cvttss2si eax, xmm2
push eax
call fcn.10018ae0
cmp byte [0x10103dcd], 0
je 0x1002d16e
mov dword [ebp - 0x214], 0xa0ffffff
push dword [ebp - 0x214]
push dword [0x10103b98]
push ebx
call fcn.10019440
mov ecx, dword [0x100d1558]
lea edx, [ebp - 0x1a8]
push edx
push dword [ebp - 0x1e0]
mov eax, dword [ecx]
mov eax, dword [eax + 0x20]
call eax
cmp byte [0x10103dc5], 0
je 0x1002d29a
mov eax, dword [ebp - 0x1e0]
cmp byte [eax + 0x101040b8], 0
je 0x1002d1da
mov dword [ebp - 0x11c], 0x65697246
mov dword [ebp - 0x118], 0x203a646e
mov word [ebp - 0x114], 0x7325
mov byte [ebp - 0x112], 0
lea eax, [ebp - 0x11c]
mov dword [ebp - 4], 0
or esi, 1
jmp 0x1002d1fa
mov word [ebp - 0x1e8], 0x7325
mov byte [ebp - 0x1e6], 0
lea eax, [ebp - 0x1e8]
mov dword [ebp - 4], 1
or esi, 2
movss xmm0, dword [ebp - 0x1b8]
lea ecx, [ebp - 0x1a8]
subss xmm0, dword [0x10046860]
push ecx
push eax
mov dword [ebp - 0x210], 0xc8ffffff
push dword [ebp - 0x210]
cvttss2si eax, xmm0
mov dword [ebp - 0x1b0], esi
mov dword [ebp - 0x1e4], esi
push eax
cvttss2si eax, dword [ebp - 0x1c0]
push eax
push 0
push 1
push 0x100d1438
call fcn.10018080
mov eax, esi
add esp, 0x20
test al, 2
je 0x1002d26b
and eax, 0xfffffffd
xor ecx, ecx
mov dword [ebp - 0x1e4], eax
mov word [ebp - 0x1e8], cx
mov byte [ebp - 0x1e6], cl
mov dword [ebp - 4], 0xffffffff
test al, 1
je 0x1002d29a
and eax, 0xfffffffe
mov word [ebp - 0x114], 0
xorps xmm0, xmm0
mov dword [ebp - 0x1e4], eax
movq qword [ebp - 0x11c], xmm0
mov byte [ebp - 0x112], 0
cmp byte [0x10103dc6], 0
je case.0x1002d2d8.0
test edi, edi
je case.0x1002d2d8.0
mov eax, dword [edi]
mov ecx, edi
mov eax, dword [eax + 0x4a4]
call eax
test eax, eax
js case.0x1002d2d8.0
cmp eax, 0x1d
jg case.0x1002d2d8.0
cmp eax, 0x1c
ja case.0x1002d2d8.1
movzx eax, byte [eax + 0x1002e254]
jmp dword [eax*4 + 0x1002e24c]
mov ecx, edi
call fcn.10002c90
mov eax, dword [eax]
cmp eax, 0x3e8
jle 0x1002d2f6
mov eax, 0x3e8
jmp 0x1002d2fd
xor ecx, ecx
test eax, eax
cmovs eax, ecx
movss xmm1, dword [ebp - 0x1d4]
movd xmm0, eax
movaps xmm2, xmm1
cvtdq2ps xmm0, xmm0
mov ecx, dword [0x100d156c]
mov dword [ebp - 0x1b0], eax
push 0x66000000
mov eax, dword [ecx]
addss xmm2, xmm1
mulss xmm0, dword [0x1004666c]
mov eax, dword [eax + 0x28]
maxss xmm0, dword [0x1004665c]
subss xmm2, dword [0x100467e0]
minss xmm0, dword [0x10046778]
mulss xmm2, xmm0
movss xmm0, dword [ebp - 0x1cc]
addss xmm0, dword [0x10046778]
movss dword [ebp - 0x1ac], xmm2
movss dword [ebp - 0x1b4], xmm0
cvttss2si ebx, xmm0
movss xmm0, dword [ebp - 0x1bc]
subss xmm0, xmm1
movss dword [ebp - 0x1d0], xmm0
cvttss2si edi, xmm0
call eax
lea eax, [ebx + 4]
mov ecx, dword [0x100d156c]
mov edx, edi
push eax
mov esi, dword [ecx]
movss xmm0, dword [ebp - 0x1d4]
mulss xmm0, dword [0x100469cc]
cvttss2si eax, xmm0
sub edx, eax
mov eax, dword [esi + 0x30]
push edx
push ebx
push edi
call eax
movss xmm0, dword [ebp - 0x1cc]
addss xmm0, dword [0x100467e0]
mov ecx, dword [0x100d156c]
push 0xffff2323
mov eax, dword [ecx]
cvttss2si edi, xmm0
mov eax, dword [eax + 0x28]
movss xmm0, dword [ebp - 0x1d0]
addss xmm0, dword [0x10046778]
movss dword [ebp - 0x1d0], xmm0
cvttss2si esi, xmm0
call eax
mov ecx, dword [0x100d156c]
lea eax, [edi + 2]
push eax
mov edx, dword [ecx]
cvttss2si eax, dword [ebp - 0x1ac]
add eax, esi
push eax
mov eax, dword [edx + 0x30]
push edi
push esi
call eax
mov esi, dword [ebp - 0x1b0]
cmp esi, 0x3e8
jge 0x1002d488
mov ecx, dword [ebp - 0x1d8]
call fcn.10002c90
cmp dword [eax], 0xffffffff
je 0x1002d488
test esi, esi
jle 0x1002d488
movss xmm0, dword [ebp - 0x1b4]
addss xmm0, dword [0x1004684c]
push esi
push 0x10044ea0
mov dword [ebp - 0x20c], 0xffffffff
push dword [ebp - 0x20c]
cvttss2si eax, xmm0
movss xmm0, dword [ebp - 0x1ac]
addss xmm0, dword [ebp - 0x1d0]
push eax
cvttss2si eax, xmm0
push eax
push 0
push 0x100d1438
call fcn.10018570
add esp, 0x1c
mov ebx, dword [ebp - 0x208]
cmp byte [0x10103dc7], 0
je 0x1002d723
mov eax, dword fs:[0x2c]
mov ecx, dword [0x100d13d0]
mov ecx, dword [eax + ecx*4]
mov eax, dword [0x102f72ec]
cmp eax, dword [ecx + 4]
jle 0x1002d57d
push 0x102f72ec
call fcn.100380f9
add esp, 4
cmp dword [0x102f72ec], 0xffffffff
jne 0x1002d57d
lea ecx, [ebp - 0x238]
mov dword [ebp - 4], 2
call fcn.10032930
push 0
push str.m_ArmorValue
push str.DT_CSPlayer
mov ecx, eax
mov byte [ebp - 4], 3
call fcn.100329d0
mov byte [ebp - 4], 2
mov ecx, dword [ebp - 0x238]
mov dword [0x102f7308], eax
test ecx, ecx
je 0x1002d569
mov eax, dword [ebp - 0x230]
sub eax, ecx
sar eax, 2
lea edx, [eax*4]
mov eax, ecx
cmp edx, 0x1000
jb 0x1002d541
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x1002e228
push edx
push ecx
call fcn.10037fb5
add esp, 8
mov dword [ebp - 0x238], 0
mov dword [ebp - 0x234], 0
mov dword [ebp - 0x230], 0
push 0x102f72ec
mov dword [ebp - 4], 0xffffffff
call fcn.100380af
add esp, 4
mov eax, dword [0x102f7308]
mov edi, 0x64
movss xmm1, dword [ebp - 0x1c8]
addss xmm1, dword [0x10046778]
push ecx
mov esi, dword [eax + ebx]
cmp esi, 0x64
cmovg esi, edi
mov dword [ebp - 0x1cc], esi
movss dword [ebp - 0x1b0], xmm1
movd xmm0, esi
cvtdq2ps xmm0, xmm0
mulss xmm0, xmm1
mulss xmm0, dword [0x1004668c]
movss dword [ebp - 0x1b4], xmm0
fld dword [ebp - 0x1b4]
fstp dword [esp]
call sub.api_ms_win_crt_math_l1_1_0.dll_roundf
movss xmm1, dword [ebp - 0x1b0]
add esp, 4
fstp dword [ebp - 0x1ac]
cvttss2si eax, dword [ebp - 0x1ac]
movd xmm0, eax
cvtdq2ps xmm0, xmm0
subss xmm1, xmm0
cvttss2si eax, xmm1
mov dword [ebp - 0x1b4], eax
test esi, esi
jle 0x1002d728
movss xmm0, dword [ebp - 0x1b8]
addss xmm0, dword [0x10046778]
mov ecx, dword [0x100d156c]
push 0xff000000
mov eax, dword [ecx]
cvttss2si edi, xmm0
mov eax, dword [eax + 0x28]
movss xmm0, dword [ebp - 0x1bc]
subss xmm0, dword [0x1004686c]
cvttss2si esi, xmm0
call eax
mov ecx, dword [0x100d156c]
mov edx, dword [ecx]
movss xmm0, dword [ebp - 0x1c8]
addss xmm0, dword [0x10046810]
cvttss2si eax, xmm0
add eax, edi
push eax
lea eax, [esi + 4]
push eax
mov eax, dword [edx + 0x30]
push edi
push esi
call eax
movd xmm0, dword [ebp - 0x1b4]
mov ecx, dword [0x100d156c]
cvtdq2ps xmm0, xmm0
push 0xffb4b4b4
mov eax, dword [ecx]
addss xmm0, dword [ebp - 0x1b8]
mov eax, dword [eax + 0x28]
movss dword [ebp - 0x1b4], xmm0
addss xmm0, dword [0x100467e0]
cvttss2si esi, xmm0
movss xmm0, dword [ebp - 0x1bc]
subss xmm0, dword [0x10046868]
cvttss2si edi, xmm0
call eax
mov ecx, dword [0x100d156c]
mov edx, dword [ecx]
cvttss2si eax, dword [ebp - 0x1ac]
add eax, esi
push eax
lea eax, [edi + 2]
push eax
mov eax, dword [edx + 0x30]
push esi
push edi
call eax
mov eax, dword [ebp - 0x1cc]
cmp eax, 0x64
jge 0x1002d723
movss xmm0, dword [ebp - 0x1b4]
addss xmm0, dword [0x1004684c]
push eax
push 0x10044eac
mov dword [ebp - 0x204], 0xffffffff
push dword [ebp - 0x204]
cvttss2si eax, xmm0
push eax
push edi
push 0
push 0x100d1438
call fcn.10018570
add esp, 0x1c
mov edi, 0x64
cmp byte [0x10103dc6], 0
je 0x1002d91c
mov ecx, ebx
call fcn.10003140
movss xmm1, dword [ebp - 0x1c8]
addss xmm1, dword [0x10046778]
push ecx
mov esi, dword [eax]
cmp esi, 0x64
cmovg esi, edi
mov dword [ebp - 0x1d0], esi
movss dword [ebp - 0x1b0], xmm1
movd xmm0, esi
cvtdq2ps xmm0, xmm0
movss dword [ebp - 0x1cc], xmm0
mulss xmm0, xmm1
mulss xmm0, dword [0x1004668c]
movss dword [ebp - 0x1b4], xmm0
fld dword [ebp - 0x1b4]
fstp dword [esp]
call sub.api_ms_win_crt_math_l1_1_0.dll_roundf
movss xmm1, dword [ebp - 0x1b0]
add esp, 4
fstp dword [ebp - 0x1ac]
cvttss2si eax, dword [ebp - 0x1ac]
movd xmm0, eax
cvtdq2ps xmm0, xmm0
subss xmm1, xmm0
cvttss2si eax, xmm1
mov dword [ebp - 0x1b4], eax
test esi, esi
jle 0x1002d91c
movss xmm0, dword [ebp - 0x1b8]
addss xmm0, dword [0x10046778]
mov ecx, dword [0x100d156c]
push 0xff000000
mov eax, dword [ecx]
cvttss2si edi, xmm0
mov eax, dword [eax + 0x28]
movss xmm0, dword [ebp - 0x1bc]
subss xmm0, dword [0x1004684c]
cvttss2si esi, xmm0
call eax
mov ecx, dword [0x100d156c]
mov edx, dword [ecx]
movss xmm0, dword [ebp - 0x1c8]
addss xmm0, dword [0x10046810]
cvttss2si eax, xmm0
add eax, edi
push eax
lea eax, [esi + 4]
push eax
mov eax, dword [edx + 0x30]
push edi
push esi
call eax
movd xmm0, dword [ebp - 0x1b4]
cvtdq2ps xmm0, xmm0
mov ecx, dword [0x100d156c]
movss xmm1, dword [ebp - 0x1cc]
addss xmm0, dword [ebp - 0x1b8]
mulss xmm1, dword [0x10046800]
mov esi, dword [ecx]
movss dword [ebp - 0x1b0], xmm0
addss xmm0, dword [0x100467e0]
cvttss2si edi, xmm0
movss xmm0, dword [ebp - 0x1bc]
subss xmm0, dword [0x10046848]
cvttss2si eax, xmm0
movss xmm0, dword [0x10046930]
mov dword [ebp - 0x1b4], eax
subss xmm0, xmm1
cvttss2si eax, xmm1
movzx edx, al
cvttss2si eax, xmm0
or edx, 0xffff0000
shl edx, 8
movzx eax, al
or edx, eax
mov eax, dword [esi + 0x28]
push edx
call eax
cvttss2si eax, dword [ebp - 0x1ac]
mov esi, dword [ebp - 0x1b4]
mov ecx, dword [0x100d156c]
mov edx, dword [ecx]
add eax, edi
push eax
lea eax, [esi + 2]
push eax
mov eax, dword [edx + 0x30]
push edi
push esi
call eax
mov eax, dword [ebp - 0x1d0]
cmp eax, 0x64
jge 0x1002d91c
movss xmm0, dword [ebp - 0x1b0]
addss xmm0, dword [0x1004684c]
push eax
push 0x10044ea8
mov dword [ebp - 0x228], 0xffffffff
push dword [ebp - 0x228]
cvttss2si eax, xmm0
push eax
push esi
push 0
push 0x100d1438
call fcn.10018570
add esp, 0x1c
cmp byte [0x10103dc8], 0
mov esi, dword [0x100d13d0]
je 0x1002da64
mov eax, dword fs:[0x2c]
mov ecx, dword [eax + esi*4]
mov eax, dword [0x102f7300]
cmp eax, dword [ecx + 4]
jle 0x1002da0b
push 0x102f7300
call fcn.100380f9
add esp, 4
cmp dword [0x102f7300], 0xffffffff
jne 0x1002da0b
lea ecx, [ebp - 0x248]
mov dword [ebp - 4], 4
call fcn.10032930
push 0
push str.m_bHasHelmet
push str.DT_CSPlayer
mov ecx, eax
mov byte [ebp - 4], 5
call fcn.100329d0
mov byte [ebp - 4], 4
mov ecx, dword [ebp - 0x248]
mov dword [0x102f72f8], eax
test ecx, ecx
je 0x1002d9f7
mov eax, dword [ebp - 0x240]
sub eax, ecx
sar eax, 2
lea edx, [eax*4]
mov eax, ecx
cmp edx, 0x1000
jb 0x1002d9cf
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x1002e228
push edx
push ecx
call fcn.10037fb5
add esp, 8
mov dword [ebp - 0x248], 0
mov dword [ebp - 0x244], 0
mov dword [ebp - 0x240], 0
push 0x102f7300
mov dword [ebp - 4], 0xffffffff
call fcn.100380af
add esp, 4
mov eax, dword [0x102f72f8]
cmp byte [eax + ebx], 0
je 0x1002da64
movss xmm0, dword [ebp - 0x1b8]
addss xmm0, dword [0x10046778]
push 0x10044eb4
mov dword [ebp - 0x1f0], 0xc800ff00
push dword [ebp - 0x1f0]
cvttss2si eax, xmm0
movss xmm0, dword [ebp - 0x1bc]
subss xmm0, dword [0x1004687c]
push eax
cvttss2si eax, xmm0
push eax
push 0
push 0x100d1438
call fcn.10018570
add esp, 0x18
cmp byte [0x10103dc9], 0
je 0x1002dbb5
mov eax, dword fs:[0x2c]
mov ecx, dword [eax + esi*4]
mov eax, dword [0x102f72fc]
cmp eax, dword [ecx + 4]
jle 0x1002db4d
push 0x102f72fc
call fcn.100380f9
add esp, 4
cmp dword [0x102f72fc], 0xffffffff
jne 0x1002db4d
lea ecx, [ebp - 0x258]
mov dword [ebp - 4], 6
call fcn.10032930
push 0
push str.m_iAccount
push str.DT_CSPlayer
mov ecx, eax
mov byte [ebp - 4], 7
call fcn.100329d0
mov byte [ebp - 4], 6
mov ecx, dword [ebp - 0x258]
mov dword [0x102f72f0], eax
test ecx, ecx
je 0x1002db39
mov eax, dword [ebp - 0x250]
sub eax, ecx
sar eax, 2
lea edx, [eax*4]
mov eax, ecx
cmp edx, 0x1000
jb 0x1002db11
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x1002e228
push edx
push ecx
call fcn.10037fb5
add esp, 8
mov dword [ebp - 0x258], 0
mov dword [ebp - 0x254], 0
mov dword [ebp - 0x250], 0
push 0x102f72fc
mov dword [ebp - 4], 0xffffffff
call fcn.100380af
add esp, 4
movss xmm0, dword [ebp - 0x1b8]
addss xmm0, dword [0x10046778]
mov eax, dword [0x102f72f0]
mov dword [ebp - 0x1f4], 0xc800ff00
push dword [eax + ebx]
cvttss2si eax, xmm0
push 0x10044eb0
push dword [ebp - 0x1f4]
movss dword [ebp - 0x1b4], xmm0
movss xmm0, dword [ebp - 0x1bc]
subss xmm0, dword [0x1004688c]
push eax
cvttss2si eax, xmm0
push eax
push 0
push 0x100d1438
call fcn.10018570
movss xmm0, dword [ebp - 0x1b4]
add esp, 0x1c
jmp 0x1002dbc5
movss xmm0, dword [ebp - 0x1b8]
addss xmm0, dword [0x10046778]
cmp byte [0x10103dca], 0
je 0x1002dc5c
cvttss2si eax, dword [ebx + 0x1020]
mov dword [ebp - 0x1f8], 0xc800ff00
cvttss2si edi, dword [ebx + 0x101c]
push eax
push str.__f.y
push dword [ebp - 0x1f8]
cvttss2si esi, xmm0
movss xmm0, dword [ebp - 0x1bc]
subss xmm0, dword [0x10046894]
push esi
cvttss2si eax, xmm0
push eax
push 0
push 0x100d1438
call fcn.10018570
movss xmm0, dword [ebp - 0x1bc]
add esp, 0x1c
subss xmm0, dword [0x100468a0]
mov dword [ebp - 0x1fc], 0xc800ff00
push edi
push str.__f.x
push dword [ebp - 0x1fc]
cvttss2si eax, xmm0
push esi
push eax
push 0
push 0x100d1438
call fcn.10018570
add esp, 0x1c
movss xmm0, dword [ebp - 0x1c8]
movss xmm2, dword [0x10046810]
mov ecx, dword [ebp - 0x1d8]
addss xmm0, xmm2
movaps xmm1, xmm0
addss xmm1, dword [ebp - 0x1b8]
test ecx, ecx
je 0x1002dd90
cmp byte [0x10103dc6], 0
je 0x1002dca0
addss xmm1, xmm2
movss dword [ebp - 0x1ac], xmm1
jmp 0x1002dcac
addss xmm0, xmm1
movss dword [ebp - 0x1ac], xmm0
mov eax, dword [ecx]
mov eax, dword [eax + 0x4a4]
call eax
test eax, eax
jns 0x1002dcbe
xor eax, eax
jmp 0x1002dcc6
xor ecx, ecx
cmp eax, 0x1d
cmovg eax, ecx
push eax
push str.client.dll
call dword [sym.imp.KERNEL32.dll_GetModuleHandleA]
add eax, 0x1e0b00
call eax
lea edx, [ebp - 0x110]
add esp, 4
sub edx, eax
mov cl, byte [eax]
lea eax, [eax + 1]
mov byte [eax + edx - 1], cl
test cl, cl
jne 0x1002dce4
mov al, byte [ebp - 0x110]
lea esi, [ebp - 0x110]
test al, al
je 0x1002dd19
movsx eax, al
push eax
call dword [sym.imp.api_ms_win_crt_string_l1_1_0.dll_toupper]
mov byte [esi], al
lea esi, [esi + 1]
mov al, byte [esi]
add esp, 4
test al, al
jne 0x1002dd01
cmp byte [0x10103dcb], 0
je 0x1002dd90
mov word [ebp - 0x1dc], 0x7325
mov byte [ebp - 0x1da], 0
lea eax, [ebp - 0x110]
mov dword [ebp - 0x200], 0xc8ffffff
push eax
lea eax, [ebp - 0x1dc]
mov dword [ebp - 4], 8
push eax
cvttss2si eax, dword [ebp - 0x1ac]
push dword [ebp - 0x200]
push eax
cvttss2si eax, dword [ebp - 0x1c0]
push eax
push 0
push 1
push 0x100d1438
call fcn.10018080
add esp, 0x20
mov dword [ebp - 4], 0xffffffff
xor eax, eax
mov word [ebp - 0x1dc], ax
mov byte [ebp - 0x1da], al
imul eax, dword [ebp - 0x1e0], 0x39c
add eax, 0x100f52c0
movss xmm2, dword [eax]
movss xmm0, dword [eax + 4]
movss xmm1, dword [eax + 8]
imul eax, dword [ebp - 0x1e0], 0x7380
movss dword [ebp - 0x1ac], xmm2
movss dword [ebp - 0x1b4], xmm0
movss dword [ebp - 0x1b0], xmm1
add eax, 0x101044a8
cmp dword [0x10103d54], 0
movss xmm5, dword [eax]
movss xmm3, dword [eax + 4]
movss xmm4, dword [eax + 8]
movss dword [ebp - 0x1d8], xmm5
movss dword [ebp - 0x1c0], xmm3
movss dword [ebp - 0x1cc], xmm4
jle 0x1002e201
xorps xmm6, xmm6
ucomiss xmm6, xmm2
lahf
test ah, 0x44
jp 0x1002de29
ucomiss xmm6, xmm0
lahf
test ah, 0x44
jp 0x1002de29
ucomiss xmm6, xmm1
lahf
test ah, 0x44
jnp 0x1002e201
ucomiss xmm6, xmm5
lahf
test ah, 0x44
jp 0x1002de48
ucomiss xmm6, xmm3
lahf
test ah, 0x44
jp 0x1002de48
ucomiss xmm6, xmm4
lahf
test ah, 0x44
jnp 0x1002e201
mov ecx, dword [0x100d1558]
mov eax, dword [ecx]
mov eax, dword [eax + 0x98]
call eax
movss xmm4, dword [ebp - 0x1b4]
mov ecx, eax
movss xmm6, dword [ebp - 0x1ac]
movaps xmm1, xmm4
movss xmm5, dword [ebp - 0x1b0]
movaps xmm0, xmm6
mulss xmm0, dword [ecx + 0x30]
mulss xmm1, dword [ecx + 0x34]
addss xmm1, xmm0
movaps xmm0, xmm5
mulss xmm0, dword [ecx + 0x38]
addss xmm0, dword [ecx + 0x3c]
addss xmm1, xmm0
cvtps2pd xmm0, xmm1
comisd xmm0, xmmword [0x10046760]
jbe 0x1002e201
movss xmm3, dword [0x10046778]
movaps xmm0, xmm6
mulss xmm0, dword [ecx]
mov eax, dword [0x100d1554]
divss xmm3, xmm1
movaps xmm1, xmm4
movss xmm7, dword [0x1004673c]
mulss xmm1, dword [ecx + 4]
mulss xmm4, dword [ecx + 0x14]
addss xmm1, xmm0
mulss xmm6, dword [ecx + 0x10]
movaps xmm0, xmm5
mulss xmm5, dword [ecx + 0x18]
mulss xmm0, dword [ecx + 8]
addss xmm4, xmm6
addss xmm5, dword [ecx + 0x1c]
addss xmm0, dword [ecx + 0xc]
mov ecx, dword [0x100d1558]
addss xmm4, xmm5
addss xmm1, xmm0
xorps xmm0, xmm0
cvtsi2sd xmm0, eax
mulss xmm1, xmm3
mulss xmm4, xmm3
mulss xmm1, xmm7
mulss xmm4, xmm7
cvtps2pd xmm1, xmm1
mulsd xmm1, xmm0
xorps xmm0, xmm0
cvtsi2ss xmm0, eax
mov eax, dword [0x100d154c]
addsd xmm1, qword [0x100467c0]
mulss xmm0, xmm7
cvtps2pd xmm0, xmm0
addsd xmm1, xmm0
cvtpd2ps xmm0, xmm1
cvtps2pd xmm1, xmm4
movss dword [ebp - 0x1b0], xmm0
xorps xmm0, xmm0
cvtsi2ss xmm0, eax
mulss xmm0, xmm7
cvtps2pd xmm2, xmm0
xorps xmm0, xmm0
cvtsi2sd xmm0, eax
mov eax, dword [ecx]
mov eax, dword [eax + 0x98]
mulsd xmm1, xmm0
addsd xmm1, qword [0x100467c0]
subsd xmm2, xmm1
cvtpd2ps xmm0, xmm2
movss dword [ebp - 0x1ac], xmm0
call eax
movss xmm4, dword [ebp - 0x1c0]
mov ecx, eax
movss xmm6, dword [ebp - 0x1d8]
movaps xmm1, xmm4
movss xmm5, dword [ebp - 0x1cc]
movaps xmm0, xmm6
mulss xmm0, dword [ecx + 0x30]
mulss xmm1, dword [ecx + 0x34]
addss xmm1, xmm0
movaps xmm0, xmm5
mulss xmm0, dword [ecx + 0x38]
addss xmm0, dword [ecx + 0x3c]
addss xmm1, xmm0
cvtps2pd xmm0, xmm1
comisd xmm0, xmmword [0x10046760]
jbe 0x1002e201
movss xmm3, dword [0x10046778]
movaps xmm0, xmm6
mulss xmm0, dword [ecx]
mov eax, dword [0x100d1554]
divss xmm3, xmm1
push 0xa0ffffff
movaps xmm1, xmm4
movss xmm7, dword [0x1004673c]
mulss xmm1, dword [ecx + 4]
mulss xmm4, dword [ecx + 0x14]
addss xmm1, xmm0
mulss xmm6, dword [ecx + 0x10]
movaps xmm0, xmm5
mulss xmm5, dword [ecx + 0x18]
mulss xmm0, dword [ecx + 8]
addss xmm4, xmm6
addss xmm5, dword [ecx + 0x1c]
addss xmm0, dword [ecx + 0xc]
mov ecx, dword [0x100d156c]
addss xmm4, xmm5
addss xmm1, xmm0
movd xmm0, eax
cvtdq2pd xmm0, xmm0
mulss xmm1, xmm3
mulss xmm4, xmm3
mulss xmm1, xmm7
mulss xmm4, xmm7
cvtps2pd xmm1, xmm1
mulsd xmm1, xmm0
movd xmm0, eax
cvtdq2ps xmm0, xmm0
mov eax, dword [0x100d154c]
addsd xmm1, qword [0x100467c0]
mulss xmm0, xmm7
cvtps2pd xmm0, xmm0
addsd xmm1, xmm0
cvtpd2ps xmm0, xmm1
cvtps2pd xmm1, xmm4
movss dword [ebp - 0x1d8], xmm0
movd xmm0, eax
cvtdq2ps xmm0, xmm0
mulss xmm0, xmm7
cvtps2pd xmm2, xmm0
movd xmm0, eax
mov eax, dword [ecx]
cvtdq2pd xmm0, xmm0
mov eax, dword [eax + 0x28]
mulsd xmm1, xmm0
addsd xmm1, qword [0x100467c0]
subsd xmm2, xmm1
cvtpd2ps xmm0, xmm2
movss dword [ebp - 0x1c0], xmm0
call eax
cvttss2si eax, dword [ebp - 0x1c0]
mov ecx, dword [0x100d156c]
mov edx, dword [ecx]
push eax
cvttss2si eax, dword [ebp - 0x1d8]
push eax
cvttss2si eax, dword [ebp - 0x1ac]
push eax
cvttss2si eax, dword [ebp - 0x1b0]
push eax
mov eax, dword [edx + 0x3c]
call eax
movss xmm0, dword [ebp - 0x1ac]
subss xmm0, dword [0x100467e0]
mov ecx, dword [0x100d156c]
push 0xa03c3cff
mov eax, dword [ecx]
cvttss2si esi, xmm0
mov eax, dword [eax + 0x28]
movss xmm0, dword [ebp - 0x1b0]
subss xmm0, dword [0x100467e0]
mov dword [ebp - 0x1ac], esi
cvttss2si ebx, xmm0
call eax
mov ecx, dword [0x100d156c]
lea edi, [ebx + 5]
add esi, 5
mov eax, dword [ecx]
mov eax, dword [eax + 0x30]
push esi
push edi
push dword [ebp - 0x1ac]
push ebx
call eax
mov ecx, dword [0x100d156c]
push 0xa0000000
mov eax, dword [ecx]
mov eax, dword [eax + 0x28]
call eax
mov ecx, dword [0x100d156c]
push esi
push edi
push dword [ebp - 0x1ac]
mov eax, dword [ecx]
push ebx
mov eax, dword [eax + 0x38]
call eax
movss xmm0, dword [ebp - 0x1c0]
subss xmm0, dword [0x100467e0]
mov ecx, dword [0x100d156c]
push 0xa0ffc8a0
mov eax, dword [ecx]
cvttss2si esi, xmm0
mov eax, dword [eax + 0x28]
movss xmm0, dword [ebp - 0x1d8]
subss xmm0, dword [0x100467e0]
mov dword [ebp - 0x1ac], esi
cvttss2si ebx, xmm0
call eax
mov ecx, dword [0x100d156c]
lea edi, [ebx + 5]
add esi, 5
push esi
push edi
mov eax, dword [ecx]
push dword [ebp - 0x1ac]
push ebx
mov eax, dword [eax + 0x30]
call eax
mov ecx, dword [0x100d156c]
push 0xa0000000
mov eax, dword [ecx]
mov eax, dword [eax + 0x28]
call eax
mov ecx, dword [0x100d156c]
push esi
push edi
push dword [ebp - 0x1ac]
mov eax, dword [ecx]
push ebx
mov eax, dword [eax + 0x38]
call eax
mov edi, dword [ebp - 0x1c4]
mov eax, dword [0x100d1560]
inc dword [ebp - 0x1e0]
mov edx, dword [ebp - 0x1e0]
cmp edx, dword [eax + 0x14]
jg 0x1002e22e
mov esi, dword [ebp - 0x1e4]
jmp 0x1002cca0
call dword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
pop ebx
mov ecx, dword [ebp - 0x10]
xor ecx, ebp
call fcn.10037c8d
mov esp, ebp
pop ebp
ret