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

Disassembly:
push ebx
mov ebx, esp
sub esp, 8
and esp, 0xfffffff0
add esp, 4
push ebp
mov ebp, dword [ebx + 4]
mov dword [esp + 4], ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x101b59a6
mov eax, dword fs:[0]
push eax
push ebx
sub esp, 0x1b8
mov eax, dword [0x104cdec0]
xor eax, ebp
mov dword [ebp - 0x14], eax
push esi
push edi
push eax
lea eax, [ebp - 0xc]
mov dword fs:[0], eax
mov esi, dword [ebx + 8]
lea eax, [ebp - 0x17c]
push 0x30
push 0
push eax
mov dword [ebp - 0x1c], esi
mov dword [ebp - 0x24], 0
call sub.VCRUNTIME140.dll_memset
xorps xmm0, xmm0
mov dword [ebp - 0x180], 0
add esp, 0xc
cmp dword [esi + 4], 0
movups xmmword [ebp - 0x1a0], xmm0
movups xmmword [ebp - 0x190], xmm0
je 0x1011b993
push 0xd
push str.antiUntrusted
lea ecx, [ebp - 0x1bc]
mov dword [ebp - 0x1ac], 0
movups xmmword [ebp - 0x1bc], xmm0
mov dword [ebp - 0x1a8], 0
call fcn.10018360
lea eax, [ebp - 0x1bc]
mov dword [ebp - 4], 0
push eax
lea eax, [ebp - 0x1c4]
mov ecx, 0x105daf00
push eax
call fcn.100196a0
mov ecx, dword [ebp - 0x1a8]
mov dword [ebp - 4], 0xffffffff
mov eax, dword [eax]
mov al, byte [eax + 0x20]
mov byte [ebp - 0x1a1], al
cmp ecx, 0xf
jbe 0x1011a9c6
mov edx, dword [ebp - 0x1bc]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x1011a9b6
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
jbe 0x1011a9b6
call dword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
push ecx
push edx
call fcn.101a3a33
mov al, byte [ebp - 0x1a1]
add esp, 8
test al, al
je 0x1011b993
mov edi, dword [esi]
test edi, edi
je 0x1011b993
mov eax, dword [edi + 8]
lea ecx, [edi + 8]
mov eax, dword [eax + 0x24]
call eax
test al, al
jne 0x1011b993
mov eax, dword [0x105d9fdc]
add eax, 0xffffffce
xor eax, 0x58f652e0
cmp dword [eax + edi], 0
je 0x1011ab14
mov esi, dword [0x104cd090]
lea ecx, [ebp - 0x1bc]
push 0x20
xorps xmm0, xmm0
mov dword [ebp - 0x1ac], 0
push str.missed_shot_due_to_player_death_n
movups xmmword [ebp - 0x1bc], xmm0
mov dword [ebp - 0x1a8], 0
call fcn.10018360
lea eax, [ebp - 0x1c]
mov dword [ebp - 4], 1
push eax
lea eax, [ebp - 0x24]
mov dword [ebp - 0x1c], 0x41000000
push eax
lea eax, [ebp - 0x1bc]
mov dword [ebp - 0x24], esi
push eax
lea eax, [ebp - 0x1c4]
push eax
call fcn.1002caf0
add esp, 0x10
mov edx, eax
mov ecx, dword [0x105d9f34]
mov byte [ebp - 4], 2
cmp ecx, dword [0x105d9f38]
je 0x1011aaa8
mov dword [ecx], 0
mov dword [ecx + 4], 0
mov eax, dword [edx]
mov dword [ecx], eax
mov eax, dword [edx + 4]
mov dword [ecx + 4], eax
mov dword [edx], 0
mov dword [edx + 4], 0
add dword [0x105d9f34], 8
jmp 0x1011aab4
push edx
push ecx
mov ecx, 0x105d9f30
call fcn.1002c710
mov edi, dword [ebp - 0x1c0]
mov byte [ebp - 4], 1
test edi, edi
je 0x1011aae3
or esi, 0xffffffff
mov eax, esi
lock xadd dword [edi + 4], eax
jne 0x1011aae3
mov eax, dword [edi]
mov ecx, edi
call dword [eax]
lock xadd dword [edi + 8], esi
dec esi
jne 0x1011aae3
mov eax, dword [edi]
mov ecx, edi
call dword [eax + 4]
push dword [ebp - 0x24]
lea eax, [ebp - 0x1bc]
sub esp, 0x18
mov ecx, esp
push eax
call fcn.1002cbb0
push 0x102f2380
call fcn.1003aaa0
add esp, 0x20
lea ecx, [ebp - 0x1bc]
call fcn.1001ae90
jmp 0x1011b993
imul eax, dword [edi + 0x64], 0x2670
lea esi, [eax + 0x104cc38c]
test esi, esi
je 0x1011b993
mov eax, dword [ebp - 0x1c]
cmp dword [eax + 4], 0
je 0x1011b993
mov eax, dword [0x105d9f98]
mov ecx, edi
add eax, 0xffffffdf
xor eax, 0x58f652cf
movq xmm0, qword [eax + edi]
mov eax, dword [eax + edi + 8]
mov dword [ebp - 0xf4], eax
mov eax, dword [edi]
movq qword [ebp - 0xfc], xmm0
mov eax, dword [eax + 0x28]
call eax
mov ecx, edi
movq xmm0, qword [eax]
movq qword [ebp - 0x138], xmm0
mov eax, dword [eax + 8]
mov dword [ebp - 0x130], eax
mov eax, dword [edi]
mov eax, dword [eax + 0x2c]
call eax
mov ecx, dword [0x105d9f98]
add ecx, 0xffffffdf
xor ecx, 0x58f652cf
movq xmm0, qword [eax]
movq qword [ebp - 0x144], xmm0
mov eax, dword [eax + 8]
mov dword [ebp - 0x13c], eax
mov eax, dword [0x105d9fa8]
add eax, 0xffffffdb
xor eax, 0x58f652d3
movq xmm0, qword [eax + edi]
mov eax, dword [eax + edi + 8]
mov dword [ebp - 0x100], eax
mov eax, dword [0x105d9fac]
add eax, 0xffffffda
movq qword [ebp - 0x108], xmm0
xor eax, 0x58f652d4
movq xmm0, qword [eax + edi]
mov eax, dword [eax + edi + 8]
mov dword [ebp - 0x10c], eax
mov eax, dword [0x105da084]
add eax, 0xffffffa4
movq qword [ebp - 0x114], xmm0
xor eax, 0x58f6530a
mov eax, dword [eax + edi]
mov dword [ebp - 0x1c0], eax
mov eax, dword [ebp - 0x1c]
mov edx, dword [eax + 4]
mov eax, dword [edx + 0x1cc0]
mov dword [ecx + edi], eax
mov eax, dword [edx + 0x1cc4]
mov dword [ecx + edi + 4], eax
mov eax, dword [edx + 0x1cc8]
mov dword [ecx + edi + 8], eax
mov eax, dword [ebp - 0x1c]
mov ecx, dword [eax + 4]
mov eax, dword [0x105d9e64]
add ecx, 0x1cc0
push ecx
mov ecx, edi
call eax
mov eax, dword [ebp - 0x1c]
mov ecx, dword [eax + 4]
mov eax, dword [0x105d9e5c]
add ecx, 0x1c5c
push ecx
mov ecx, edi
call eax
mov eax, dword [ebp - 0x1c]
mov ecx, dword [0x105d9fa8]
add ecx, 0xffffffdb
xor ecx, 0x58f652d3
mov edx, dword [eax + 4]
mov eax, dword [edx + 0x1c2c]
mov dword [ecx + edi], eax
mov eax, dword [edx + 0x1c30]
mov dword [ecx + edi + 4], eax
mov eax, dword [edx + 0x1c34]
mov dword [ecx + edi + 8], eax
mov eax, dword [ebp - 0x1c]
mov ecx, dword [0x105d9fac]
mov edx, dword [eax + 4]
mov eax, dword [edx + 0x1c38]
add ecx, 0xffffffda
xor ecx, 0x58f652d4
mov dword [ecx + edi], eax
mov eax, dword [edx + 0x1c3c]
mov dword [ecx + edi + 4], eax
mov eax, dword [edx + 0x1c40]
mov edx, dword [ebp - 0x1c]
mov dword [ecx + edi + 8], eax
mov eax, dword [0x105da084]
add eax, 0xffffffa4
mov ecx, dword [edx + 4]
xor eax, 0x58f6530a
mov dword [eax + edi], ecx
movss xmm0, dword [edx + 0x18]
movss xmm3, dword [edx + 0x24]
movss xmm1, dword [edx + 0x1c]
subss xmm3, xmm0
movss xmm4, dword [edx + 0x20]
movss xmm2, dword [edx + 0x2c]
movss dword [ebp - 0x12c], xmm0
subss xmm2, xmm4
movss xmm0, dword [edx + 0x28]
subss xmm0, xmm1
movss dword [ebp - 0x128], xmm1
movss dword [ebp - 0x124], xmm4
movss dword [ebp - 0x24], xmm3
movss dword [ebp - 0x18], xmm2
movaps xmm1, xmm0
movss dword [ebp - 0x44], xmm0
mulss xmm1, xmm0
movaps xmm0, xmm3
mulss xmm0, xmm3
addss xmm1, xmm0
movaps xmm0, xmm2
mulss xmm0, xmm2
addss xmm1, xmm0
cvtps2pd xmm0, xmm1
xorps xmm1, xmm1
ucomisd xmm1, xmm0
ja 0x1011ad4c
sqrtsd xmm0, xmm0
jmp 0x1011ad51
call sub.api_ms_win_crt_math_l1_1_0.dll__libm_sse2_sqrt_precise
movss xmm3, dword [ebp - 0x44]
xorps xmm1, xmm1
movss xmm2, dword [ebp - 0x18]
movss xmm4, dword [ebp - 0x24]
cvtsd2ss xmm1, xmm0
mov eax, dword [ebp - 0x1c]
mov dword [ebp - 0x44], 0
mov byte [ebp - 0x6b], 1
movss xmm0, dword [eax + 0x14]
addss xmm1, dword [0x101bc194]
movss xmm5, dword [eax + 0x18]
movss xmm6, dword [eax + 0x1c]
movss xmm7, dword [eax + 0x20]
divss xmm2, xmm1
divss xmm4, xmm1
divss xmm3, xmm1
mulss xmm2, xmm0
mulss xmm4, xmm0
mulss xmm3, xmm0
addss xmm2, xmm7
addss xmm4, xmm5
addss xmm3, xmm6
movss dword [ebp - 0x118], xmm2
subss xmm2, xmm7
movss dword [ebp - 0x120], xmm4
subss xmm4, xmm5
movss dword [ebp - 0x11c], xmm3
subss xmm3, xmm6
movss dword [ebp - 0x48], xmm2
movss dword [ebp - 0x50], xmm4
movss dword [ebp - 0x4c], xmm3
movaps xmm2, xmmword [ebp - 0x50]
movaps xmm1, xmm2
movaps xmmword [ebp - 0xa0], xmm2
shufps xmm1, xmm2, 0x55
movaps xmm0, xmm2
mulss xmm0, xmm2
mulss xmm1, xmm1
shufps xmm2, xmm2, 0xaa
mulss xmm2, xmm2
addss xmm1, xmm0
xorps xmm0, xmm0
addss xmm1, xmm2
ucomiss xmm1, xmm0
lahf
test ah, 0x44
jp 0x1011ae25
mov byte [ebp - 0x6b], 0
mov ecx, dword [0x105d9d04]
lea edx, [ebp - 0x1a0]
push edx
mov dword [ebp - 0x70], 0
lea edx, [ebp - 0xb0]
mov byte [ebp - 0x6c], 1
movss dword [ebp - 0xb0], xmm5
movss dword [ebp - 0xac], xmm6
movss dword [ebp - 0xa8], xmm7
mov dword [ebp - 0xa4], 0
mov dword [ebp - 0x88], 0
mov dword [ebp - 0x8c], 0
mov dword [ebp - 0x90], 0
mov dword [ebp - 0x78], 0
mov dword [ebp - 0x7c], 0
mov dword [ebp - 0x80], 0
mov eax, dword [ecx]
push edi
push 0x4600400b
push edx
mov eax, dword [eax + 0xc]
call eax
mov eax, dword [ebp - 0x1c]
lea ecx, [ebp - 0x120]
push dword [eax + 0x50]
push ecx
lea ecx, [ebp - 0x12c]
push ecx
push dword [eax + 4]
mov ecx, 0x104ce960
call fcn.1001c390
test al, al
je 0x1011b5be
mov ecx, dword [ebp - 0x1c]
xor dl, dl
mov eax, dword [ecx + 4]
mov eax, dword [eax + 0x1ce4]
dec eax
cmp eax, 0x28
ja case.0x1011aeee.4
movzx eax, byte [eax + 0x1011ba14]
jmp dword [eax*4 + 0x1011b9b4]
inc dword [esi + 0x211c]
mov dl, 1
jmp case.0x1011aeee.4
inc dword [esi + 0x2120]
jmp case.0x1011aeee.4
inc dword [esi + 0x2124]
jmp case.0x1011aeee.4
inc dword [esi + 0x2110]
jmp case.0x1011aeee.4
inc dword [esi + 0x2114]
jmp case.0x1011aeee.4
inc dword [esi + 0x20fc]
jmp case.0x1011aeee.4
inc dword [esi + 0x2100]
jmp case.0x1011aeee.4
inc dword [esi + 0x20f8]
jmp case.0x1011aeee.4
inc dword [esi + 0x2108]
jmp case.0x1011aeee.4
inc dword [esi + 0x210c]
jmp case.0x1011aeee.4
inc dword [esi + 0x209c]
jmp case.0x1011aeee.4
inc dword [esi + 0x2094]
jmp case.0x1011aeee.4
inc dword [esi + 0x20e0]
jmp case.0x1011aeee.4
inc dword [esi + 0x20d0]
jmp case.0x1011aeee.4
inc dword [esi + 0x20d8]
jmp case.0x1011aeee.4
inc dword [esi + 0x20dc]
jmp case.0x1011aeee.4
inc dword [esi + 0x20c8]
jmp case.0x1011aeee.4
inc dword [esi + 0x20c4]
jmp case.0x1011aeee.4
inc dword [esi + 0x20e8]
jmp case.0x1011aeee.4
inc dword [esi + 0x2098]
jmp case.0x1011aeee.4
inc dword [esi + 0x2118]
jmp case.0x1011aeee.4
inc dword [esi + 0x208c]
jmp case.0x1011aeee.4
inc dword [esi + 0x2090]
inc dword [esi + 0x1d60]
test dl, dl
je 0x1011b258
mov eax, dword [ecx + 4]
movss xmm4, dword [0x101bc21c]
mov esi, dword [0x104cd098]
movss xmm2, dword [0x101bdec0]
mov eax, dword [eax + 0x1800]
movss xmm0, dword [eax + 0x78]
comiss xmm0, xmm4
movss xmm1, dword [eax + 0x80]
jbe 0x1011b009
nop
subss xmm0, xmm2
comiss xmm0, xmm4
ja 0x1011b000
movss xmm3, dword [0x101bc248]
comiss xmm3, xmm0
jbe 0x1011b01f
addss xmm0, xmm2
comiss xmm3, xmm0
ja 0x1011b016
comiss xmm1, xmm4
jbe 0x1011b02d
subss xmm1, xmm2
comiss xmm1, xmm4
ja 0x1011b024
comiss xmm3, xmm1
jbe 0x1011b03b
addss xmm1, xmm2
comiss xmm3, xmm1
ja 0x1011b032
subss xmm0, xmm1
comiss xmm0, xmm4
jbe 0x1011b04d
subss xmm0, xmm2
comiss xmm0, xmm4
ja 0x1011b044
comiss xmm3, xmm0
jbe 0x1011b05b
addss xmm0, xmm2
comiss xmm3, xmm0
ja 0x1011b052
push 0x98
lea eax, [ebp - 0xf0]
movss dword [ebp - 0x18], xmm0
push 0
push eax
call sub.VCRUNTIME140.dll_memset
add esp, 0xc
mov dword [ebp - 0xf0], 0x101bc304
lea ecx, [ebp - 0xa0]
call dword [sym.imp.MSVCP140.dll_protected:_void___thiscall_std::basic_ios_char__struct_std::char_traits_char__::constructor_void_]
push 0
push 0
lea eax, [ebp - 0xec]
mov dword [ebp - 4], 3
push eax
lea ecx, [ebp - 0xf0]
mov dword [ebp - 0x24], 2
call dword [sym.imp.MSVCP140.dll_public:_void___thiscall_std::basic_ostream_char__struct_std::char_traits_char__::constructor_class_std::basic_streambuf_char__struct_std::char_traits_char_____bool_]
mov eax, dword [ebp - 0xf0]
mov dword [ebp - 4], 4
mov eax, dword [eax + 4]
mov dword [ebp + eax - 0xf0], vtable.std::basic_ostringstream_char__struct_std::char_traits_char___class_std::allocator_char__.0
mov eax, dword [ebp - 0xf0]
mov ecx, dword [eax + 4]
lea eax, [ecx - 0x50]
mov dword [ebp + ecx - 0xf4], eax
lea ecx, [ebp - 0xec]
call dword [sym.imp.MSVCP140.dll_protected:_void___thiscall_std::basic_streambuf_char__struct_std::char_traits_char__::constructor_void_]
mov dword [ebp - 0xec], vtable.std::basic_stringbuf_char__struct_std::char_traits_char___class_std::allocator_char__.0
mov dword [ebp - 0xb4], 0
mov dword [ebp - 0xb0], 4
lea eax, [ebp - 0x2c]
mov dword [ebp - 0x48], 0x10041f70
mov dword [ebp - 0x34], eax
lea eax, [ebp - 0x18]
mov dword [ebp - 0x4c], eax
lea eax, [ebp - 0x2c]
movq xmm0, qword [ebp - 0x4c]
push 1
push eax
lea eax, [ebp - 0xf0]
mov dword [ebp - 4], 5
push str.Missed_shot_due_to_animations:__f_n
push eax
mov dword [ebp - 0x30], 1
movq qword [ebp - 0x2c], xmm0
mov dword [ebp - 0x24], 0x10042250
call fcn.1002d6b0
add esp, 0x10
lea eax, [ebp - 0x1bc]
lea ecx, [ebp - 0xec]
push eax
call fcn.1002db80
mov eax, dword [ebp - 0xf0]
mov eax, dword [eax + 4]
mov dword [ebp + eax - 0xf0], vtable.std::basic_ostringstream_char__struct_std::char_traits_char___class_std::allocator_char__.0
mov eax, dword [ebp - 0xf0]
mov ecx, dword [eax + 4]
lea eax, [ecx - 0x50]
mov dword [ebp + ecx - 0xf4], eax
lea ecx, [ebp - 0xec]
call fcn.1001aee0
lea ecx, [ebp - 0xe8]
call dword [sym.imp.MSVCP140.dll_public_virtual:_void___thiscall_std::basic_ostream_char__struct_std::char_traits_char__::destructor_void_]
lea ecx, [ebp - 0xa0]
call dword [sym.imp.MSVCP140.dll_public_virtual:_void___thiscall_std::basic_ios_char__struct_std::char_traits_char__::destructor_void_]
lea eax, [ebp - 0x44]
mov dword [ebp - 4], 6
push eax
lea eax, [ebp - 0x24]
mov dword [ebp - 0x44], 0x41000000
push eax
lea eax, [ebp - 0x1bc]
mov dword [ebp - 0x24], esi
push eax
lea eax, [ebp - 0x20]
push eax
call fcn.1002caf0
add esp, 0x10
mov edx, eax
mov ecx, dword [0x105d9f34]
mov byte [ebp - 4], 7
cmp ecx, dword [0x105d9f38]
je 0x1011b21e
mov dword [ecx], 0
mov dword [ecx + 4], 0
mov eax, dword [edx]
mov dword [ecx], eax
mov eax, dword [edx + 4]
mov dword [ecx + 4], eax
mov dword [edx], 0
mov dword [edx + 4], 0
add dword [0x105d9f34], 8
jmp 0x1011b22a
push edx
push ecx
mov ecx, 0x105d9f30
call fcn.1002c710
mov ecx, dword [ebp - 0x1c]
mov byte [ebp - 4], 6
mov dword [ebp - 0x44], ecx
test ecx, ecx
je 0x1011b888
or esi, 0xffffffff
mov eax, esi
lock xadd dword [ecx + 4], eax
jne 0x1011b888
mov eax, dword [ecx]
call dword [eax]
mov ecx, dword [ebp - 0x44]
jmp 0x1011b87b
mov esi, dword [0x104cd08c]
lea eax, [ebp - 0xf0]
push 0x98
push 0
push eax
call sub.VCRUNTIME140.dll_memset
add esp, 0xc
mov dword [ebp - 0xf0], 0x101bc304
lea ecx, [ebp - 0xa0]
call dword [sym.imp.MSVCP140.dll_protected:_void___thiscall_std::basic_ios_char__struct_std::char_traits_char__::constructor_void_]
push 0
push 0
lea eax, [ebp - 0xec]
mov dword [ebp - 4], 8
push eax
lea ecx, [ebp - 0xf0]
mov dword [ebp - 0x24], 0x10
call dword [sym.imp.MSVCP140.dll_public:_void___thiscall_std::basic_ostream_char__struct_std::char_traits_char__::constructor_class_std::basic_streambuf_char__struct_std::char_traits_char_____bool_]
mov eax, dword [ebp - 0xf0]
mov dword [ebp - 4], 9
mov eax, dword [eax + 4]
mov dword [ebp + eax - 0xf0], vtable.std::basic_ostringstream_char__struct_std::char_traits_char___class_std::allocator_char__.0
mov eax, dword [ebp - 0xf0]
mov ecx, dword [eax + 4]
lea eax, [ecx - 0x50]
mov dword [ebp + ecx - 0xf4], eax
lea ecx, [ebp - 0xec]
call dword [sym.imp.MSVCP140.dll_protected:_void___thiscall_std::basic_streambuf_char__struct_std::char_traits_char__::constructor_void_]
mov dword [ebp - 0xec], vtable.std::basic_stringbuf_char__struct_std::char_traits_char___class_std::allocator_char__.0
mov dword [ebp - 0xb4], 0
mov dword [ebp - 0xb0], 4
push 0
push 0
lea eax, [ebp - 0xf0]
mov dword [ebp - 4], 0xa
push str.Missed_shot_due_to_resolver_n
push eax
call fcn.1002d6b0
add esp, 0x10
lea eax, [ebp - 0x1bc]
lea ecx, [ebp - 0xec]
push eax
call fcn.1002db80
mov eax, dword [ebp - 0xf0]
mov eax, dword [eax + 4]
mov dword [ebp + eax - 0xf0], vtable.std::basic_ostringstream_char__struct_std::char_traits_char___class_std::allocator_char__.0
mov eax, dword [ebp - 0xf0]
mov ecx, dword [eax + 4]
lea eax, [ecx - 0x50]
mov dword [ebp + ecx - 0xf4], eax
lea ecx, [ebp - 0xec]
call fcn.1001aee0
lea ecx, [ebp - 0xe8]
call dword [sym.imp.MSVCP140.dll_public_virtual:_void___thiscall_std::basic_ostream_char__struct_std::char_traits_char__::destructor_void_]
lea ecx, [ebp - 0xa0]
call dword [sym.imp.MSVCP140.dll_public_virtual:_void___thiscall_std::basic_ios_char__struct_std::char_traits_char__::destructor_void_]
lea eax, [ebp - 0x18]
mov dword [ebp - 4], 0xb
push eax
lea eax, [ebp - 0x44]
mov dword [ebp - 0x18], 0x41000000
push eax
lea eax, [ebp - 0x1bc]
mov dword [ebp - 0x44], esi
push eax
lea eax, [ebp - 0x28]
push eax
call fcn.1002caf0
add esp, 0x10
mov edx, eax
mov ecx, dword [0x105d9f34]
mov byte [ebp - 4], 0xc
cmp ecx, dword [0x105d9f38]
je 0x1011b3ef
mov dword [ecx], 0
mov dword [ecx + 4], 0
mov eax, dword [edx]
mov dword [ecx], eax
mov eax, dword [edx + 4]
mov dword [ecx + 4], eax
mov dword [edx], 0
mov dword [edx + 4], 0
add dword [0x105d9f34], 8
jmp 0x1011b3fb
push edx
push ecx
mov ecx, 0x105d9f30
call fcn.1002c710
mov ecx, dword [ebp - 0x24]
mov dword [ebp - 0x18], ecx
test ecx, ecx
je 0x1011b425
or esi, 0xffffffff
mov eax, esi
lock xadd dword [ecx + 4], eax
jne 0x1011b425
mov eax, dword [ecx]
call dword [eax]
mov ecx, dword [ebp - 0x18]
lock xadd dword [ecx + 8], esi
dec esi
jne 0x1011b425
mov eax, dword [ecx]
call dword [eax + 4]
lea ecx, [ebp - 0x1bc]
mov dword [ebp - 4], 0xffffffff
call fcn.1001ae90
push dword [0x104cd08c]
mov eax, dword [ebp - 0x1c]
sub esp, 0x18
mov esi, dword [eax + 4]
lea eax, [ebp - 0xf0]
mov dword [ebp - 0x18], esp
add esi, 0x1d00
push 0x98
push 0
push eax
call sub.VCRUNTIME140.dll_memset
add esp, 0xc
mov dword [ebp - 0xf0], 0x101bc304
lea ecx, [ebp - 0xa0]
call dword [sym.imp.MSVCP140.dll_protected:_void___thiscall_std::basic_ios_char__struct_std::char_traits_char__::constructor_void_]
push 0
push 0
lea eax, [ebp - 0xec]
mov dword [ebp - 4], 0xd
push eax
lea ecx, [ebp - 0xf0]
mov dword [ebp - 0x24], 0xb8
call dword [sym.imp.MSVCP140.dll_public:_void___thiscall_std::basic_ostream_char__struct_std::char_traits_char__::constructor_class_std::basic_streambuf_char__struct_std::char_traits_char_____bool_]
mov eax, dword [ebp - 0xf0]
mov dword [ebp - 4], 0xe
mov eax, dword [eax + 4]
mov dword [ebp + eax - 0xf0], vtable.std::basic_ostringstream_char__struct_std::char_traits_char___class_std::allocator_char__.0
mov eax, dword [ebp - 0xf0]
mov ecx, dword [eax + 4]
lea eax, [ecx - 0x50]
mov dword [ebp + ecx - 0xf4], eax
lea ecx, [ebp - 0xec]
call dword [sym.imp.MSVCP140.dll_protected:_void___thiscall_std::basic_streambuf_char__struct_std::char_traits_char__::constructor_void_]
mov dword [ebp - 0xec], vtable.std::basic_stringbuf_char__struct_std::char_traits_char___class_std::allocator_char__.0
mov dword [ebp - 0xb4], 0
mov dword [ebp - 0xb0], 4
lea eax, [ebp - 0x1b0]
mov dword [ebp - 0x2c], esi
push 1
push eax
mov dword [ebp - 0x1b8], eax
lea eax, [ebp - 0xf0]
mov dword [ebp - 0x28], 0x10034ea0
movq xmm0, qword [ebp - 0x2c]
push str.Missed_shot_due_to_resolver:__s_n
push eax
mov dword [ebp - 4], 0xf
mov dword [ebp - 0x1b4], 1
movq qword [ebp - 0x1b0], xmm0
mov dword [ebp - 0x1a8], fcn.100353a0
call fcn.1002d6b0
add esp, 0x10
lea ecx, [ebp - 0xec]
push dword [ebp - 0x18]
call fcn.1002db80
mov eax, dword [ebp - 0xf0]
mov dword [ebp - 4], 0xffffffff
mov eax, dword [eax + 4]
mov dword [ebp + eax - 0xf0], vtable.std::basic_ostringstream_char__struct_std::char_traits_char___class_std::allocator_char__.0
mov eax, dword [ebp - 0xf0]
mov ecx, dword [eax + 4]
lea eax, [ecx - 0x50]
mov dword [ebp + ecx - 0xf4], eax
lea ecx, [ebp - 0xec]
call fcn.1001aee0
lea ecx, [ebp - 0xe8]
call dword [sym.imp.MSVCP140.dll_public_virtual:_void___thiscall_std::basic_ostream_char__struct_std::char_traits_char__::destructor_void_]
lea ecx, [ebp - 0xa0]
call dword [sym.imp.MSVCP140.dll_public_virtual:_void___thiscall_std::basic_ios_char__struct_std::char_traits_char__::destructor_void_]
push 0x102f2380
call fcn.1003aaa0
add esp, 0x20
jmp 0x1011b8bb
mov esi, dword [ebp - 0x1c]
movss xmm2, dword [esi + 0x28]
subss xmm2, dword [esi + 0x1c]
movss xmm1, dword [esi + 0x40]
subss xmm1, dword [esi + 0x1c]
movss xmm0, dword [esi + 0x24]
subss xmm0, dword [esi + 0x18]
movss dword [ebp - 0x18], xmm2
movss xmm2, dword [esi + 0x3c]
subss xmm2, dword [esi + 0x18]
mulss xmm1, xmm1
movss dword [ebp - 0x44], xmm0
mulss xmm2, xmm2
addss xmm1, xmm2
cvtps2pd xmm0, xmm1
xorps xmm1, xmm1
ucomisd xmm1, xmm0
ja 0x1011b611
sqrtsd xmm0, xmm0
jmp 0x1011b616
call sub.api_ms_win_crt_math_l1_1_0.dll__libm_sse2_sqrt_precise
movss xmm1, dword [ebp - 0x44]
cvtsd2ss xmm0, xmm0
mulss xmm1, xmm1
movss dword [ebp - 0x24], xmm0
movss xmm0, dword [ebp - 0x18]
mulss xmm0, xmm0
addss xmm0, xmm1
xorps xmm1, xmm1
cvtps2pd xmm0, xmm0
ucomisd xmm1, xmm0
ja 0x1011b647
sqrtsd xmm0, xmm0
jmp 0x1011b64c
call sub.api_ms_win_crt_math_l1_1_0.dll__libm_sse2_sqrt_precise
movss xmm1, dword [ebp - 0x24]
lea ecx, [ebp - 0x1bc]
cvtsd2ss xmm0, xmm0
mov dword [ebp - 0x1ac], 0
mov dword [ebp - 0x1a8], 0
subss xmm1, xmm0
movss xmm0, dword [0x102180e0]
andps xmm1, xmmword [0x101bc270]
comiss xmm0, xmm1
xorps xmm0, xmm0
movups xmmword [ebp - 0x1bc], xmm0
jbe 0x1011b730
mov esi, dword [0x104cd08c]
push 0x1d
push str.missed_shot_due_to_occlusion_n
call fcn.10018360
lea eax, [ebp - 0x18]
mov dword [ebp - 4], 0x10
push eax
lea eax, [ebp - 0x24]
mov dword [ebp - 0x18], 0x41000000
push eax
lea eax, [ebp - 0x1bc]
mov dword [ebp - 0x24], esi
push eax
lea eax, [ebp - 0x48]
push eax
call fcn.1002caf0
add esp, 0x10
mov edx, eax
mov ecx, dword [0x105d9f34]
mov byte [ebp - 4], 0x11
cmp ecx, dword [0x105d9f38]
je 0x1011b71b
mov dword [ecx], 0
mov dword [ecx + 4], 0
mov eax, dword [edx]
mov dword [ecx], eax
mov eax, dword [edx + 4]
mov dword [ecx + 4], eax
mov dword [edx], 0
mov dword [edx + 4], 0
add dword [0x105d9f34], 8
mov byte [ebp - 4], 0x10
jmp 0x1011b85e
push edx
push ecx
mov ecx, 0x105d9f30
call fcn.1002c710
mov byte [ebp - 4], 0x10
jmp 0x1011b85e
cmp dword [esi + 0x58], 0x64
mov esi, dword [0x104cd08c]
jne 0x1011b7d5
push 0x24
push str.missed_shot_due_to_prediction_error_n
call fcn.10018360
lea eax, [ebp - 0x18]
mov dword [ebp - 4], 0x12
push eax
lea eax, [ebp - 0x24]
mov dword [ebp - 0x18], 0x41000000
push eax
lea eax, [ebp - 0x1bc]
mov dword [ebp - 0x24], esi
push eax
lea eax, [ebp - 0x48]
push eax
call fcn.1002caf0
add esp, 0x10
mov edx, eax
mov ecx, dword [0x105d9f34]
mov byte [ebp - 4], 0x13
cmp ecx, dword [0x105d9f38]
je 0x1011b7c0
mov dword [ecx], 0
mov dword [ecx + 4], 0
mov eax, dword [edx]
mov dword [ecx], eax
mov eax, dword [edx + 4]
mov dword [ecx + 4], eax
mov dword [edx], 0
mov dword [edx + 4], 0
add dword [0x105d9f34], 8
mov byte [ebp - 4], 0x12
jmp 0x1011b85e
push edx
push ecx
mov ecx, 0x105d9f30
call fcn.1002c710
mov byte [ebp - 4], 0x12
jmp 0x1011b85e
push 0x1a
push str.missed_shot_due_to_spread_n
call fcn.10018360
lea eax, [ebp - 0x18]
mov dword [ebp - 4], 0x14
push eax
lea eax, [ebp - 0x24]
mov dword [ebp - 0x18], 0x41000000
push eax
lea eax, [ebp - 0x1bc]
mov dword [ebp - 0x24], esi
push eax
lea eax, [ebp - 0x48]
push eax
call fcn.1002caf0
add esp, 0x10
mov edx, eax
mov ecx, dword [0x105d9f34]
mov byte [ebp - 4], 0x15
cmp ecx, dword [0x105d9f38]
je 0x1011b84e
mov dword [ecx], 0
mov dword [ecx + 4], 0
mov eax, dword [edx]
mov dword [ecx], eax
mov eax, dword [edx + 4]
mov dword [ecx + 4], eax
mov dword [edx], 0
mov dword [edx + 4], 0
add dword [0x105d9f34], 8
jmp 0x1011b85a
push edx
push ecx
mov ecx, 0x105d9f30
call fcn.1002c710
mov byte [ebp - 4], 0x14
mov ecx, dword [ebp - 0x44]
mov dword [ebp - 0x18], ecx
test ecx, ecx
je 0x1011b888
or esi, 0xffffffff
mov eax, esi
lock xadd dword [ecx + 4], eax
jne 0x1011b888
mov eax, dword [ecx]
call dword [eax]
mov ecx, dword [ebp - 0x18]
lock xadd dword [ecx + 8], esi
dec esi
jne 0x1011b888
mov eax, dword [ecx]
call dword [eax + 4]
push dword [ebp - 0x24]
lea eax, [ebp - 0x1bc]
sub esp, 0x18
mov ecx, esp
push eax
call fcn.1002cbb0
push 0x102f2380
call fcn.1003aaa0
add esp, 0x20
mov dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0x1bc]
call fcn.1001ae90
mov eax, dword [0x105d9f98]
lea ecx, [ebp - 0x138]
movss xmm0, dword [ebp - 0xfc]
add eax, 0xffffffdf
xor eax, 0x58f652cf
push ecx
mov ecx, edi
movss dword [eax + edi], xmm0
movss xmm0, dword [ebp - 0xf8]
movss dword [eax + edi + 4], xmm0
movss xmm0, dword [ebp - 0xf4]
movss dword [eax + edi + 8], xmm0
mov eax, dword [0x105d9e64]
call eax
mov eax, dword [0x105d9e5c]
lea ecx, [ebp - 0x144]
push ecx
mov ecx, edi
call eax
mov eax, dword [0x105d9fa8]
movss xmm0, dword [ebp - 0x108]
add eax, 0xffffffdb
xor eax, 0x58f652d3
mov ecx, dword [ebp - 0x1c0]
movss dword [eax + edi], xmm0
movss xmm0, dword [ebp - 0x104]
movss dword [eax + edi + 4], xmm0
movss xmm0, dword [ebp - 0x100]
movss dword [eax + edi + 8], xmm0
mov eax, dword [0x105d9fac]
movss xmm0, dword [ebp - 0x114]
add eax, 0xffffffda
xor eax, 0x58f652d4
movss dword [eax + edi], xmm0
movss xmm0, dword [ebp - 0x110]
movss dword [eax + edi + 4], xmm0
movss xmm0, dword [ebp - 0x10c]
movss dword [eax + edi + 8], xmm0
mov eax, dword [0x105da084]
add eax, 0xffffffa4
xor eax, 0x58f6530a
mov dword [eax + edi], ecx
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
mov ecx, dword [ebp - 0x14]
xor ecx, ebp
call fcn.101a3d69
mov esp, ebp
pop ebp
mov esp, ebx
pop ebx
ret 4