Function at 0x10056fa0
Capabilities:
Contain obfuscated stackstrings
Parse pe header

Disassembly:
push ebx
mov ebx, esp
sub esp, 8
and esp, 0xfffffff8
add esp, 4
push ebp
mov ebp, dword [ebx + 4]
mov dword [esp + 4], ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x100a3429
mov eax, dword fs:[0]
push eax
push ebx
sub esp, 0x1f0
mov eax, dword [0x100ba220]
xor eax, ebp
mov dword [ebp - 0x14], eax
push esi
push edi
push eax
lea eax, [ebp - 0xc]
mov dword fs:[0], eax
mov edi, ecx
mov dword [ebp - 0x54], edi
push 7
xorps xmm0, xmm0
mov dword [ebp - 0x60], 0
push str.visuals
lea ecx, [ebp - 0x70]
mov dword [ebp - 0x5c], 0
movups xmmword [ebp - 0x70], xmm0
call fcn.10022110
lea eax, [ebp - 0x70]
mov dword [ebp - 4], 0
cmp edi, eax
je 0x1005702b
cmp dword [ebp - 0x5c], 0x10
mov ecx, edi
push dword [ebp - 0x60]
cmovae eax, dword [ebp - 0x70]
push eax
call fcn.10027280
mov dword [ebp - 4], 0xffffffff
mov ecx, dword [ebp - 0x5c]
cmp ecx, 0x10
jb 0x10057066
mov edx, dword [ebp - 0x70]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x1005705c
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x10059065
push ecx
push edx
call fcn.1009cb41
add esp, 8
push 4
xorps xmm0, xmm0
mov dword [ebp - 0xd0], 0
push str.text
lea ecx, [ebp - 0xe0]
mov dword [ebp - 0xcc], 0
movups xmmword [ebp - 0xe0], xmm0
call fcn.10022110
mov dword [ebp - 4], 1
lea ecx, [ebp - 0xc8]
push 4
xorps xmm0, xmm0
mov dword [ebp - 0xb8], 0
push str.ammo
movups xmmword [ebp - 0xc8], xmm0
mov dword [ebp - 0xb4], 0
call fcn.10022110
mov byte [ebp - 4], 2
lea ecx, [ebp - 0xb0]
push 8
xorps xmm0, xmm0
mov dword [ebp - 0xa0], 0
push str.distance
movups xmmword [ebp - 0xb0], xmm0
mov dword [ebp - 0x9c], 0
call fcn.10022110
mov byte [ebp - 4], 3
lea ecx, [ebp - 0x98]
push 4
xorps xmm0, xmm0
mov dword [ebp - 0x88], 0
push str.glow
movups xmmword [ebp - 0x98], xmm0
mov dword [ebp - 0x84], 0
call fcn.10022110
lea ecx, [ebp - 0xe0]
mov dword [ebp - 4], 4
push ecx
lea eax, [ebp - 0x80]
push eax
push ecx
lea ecx, [ebp - 0x80]
call fcn.10070f60
mov byte [ebp - 4], 5
lea ecx, [ebp - 0x38]
push 0x10
xorps xmm0, xmm0
mov dword [ebp - 0x28], 0
push str.weapon_selection
movups xmmword [ebp - 0x38], xmm0
mov dword [ebp - 0x24], 0
call fcn.10022110
mov byte [ebp - 4], 6
lea ecx, [ebp - 0x50]
push 0xf
xorps xmm0, xmm0
mov dword [ebp - 0x40], 0
push str.dropped_weapons
movups xmmword [ebp - 0x50], xmm0
mov dword [ebp - 0x3c], 0
call fcn.10022110
mov dword [ebp - 0x68], 0
mov dword [ebp - 0x64], 0
mov dword [ebp - 0x60], 0
lea ecx, [edi + 0x68]
mov byte [ebp - 4], 8
lea eax, [ebp - 0x38]
cmp ecx, eax
je 0x100571d4
cmp dword [ebp - 0x24], 0x10
push dword [ebp - 0x28]
cmovae eax, dword [ebp - 0x38]
push eax
call fcn.10027280
lea ecx, [edi + 0xa0]
mov byte [edi + 0x99], 1
lea eax, [ebp - 0x50]
cmp ecx, eax
je 0x100571f9
cmp dword [ebp - 0x3c], 0x10
push dword [ebp - 0x40]
cmovae eax, dword [ebp - 0x50]
push eax
call fcn.10027280
mov esi, dword [ebp - 0x80]
xor eax, eax
cmp byte [edi + 0x99], al
mov ecx, 0xf
cmovne eax, ecx
mov dword [edi + 0xd4], eax
add eax, 0x14
mov dword [edi + 0x40], eax
mov dword [edi + 0x44], eax
mov eax, dword [ebp - 0x7c]
mov dword [ebp - 0x1c], eax
cmp esi, eax
je 0x10057263
lea ecx, [edi + 0xb8]
nop dword [eax + eax]
mov eax, dword [edi + 0xbc]
push esi
cmp eax, dword [edi + 0xc0]
je 0x1005724f
mov ecx, eax
call fcn.10026fd0
add dword [edi + 0xbc], 0x18
jmp 0x10057255
push eax
call fcn.10044950
add esi, 0x18
lea ecx, [edi + 0xb8]
cmp esi, dword [ebp - 0x1c]
jne 0x10057230
mov byte [ebp - 4], 6
mov ecx, dword [ebp - 0x3c]
cmp ecx, 0x10
jb 0x10057297
mov edx, dword [ebp - 0x50]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x1005728d
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x100572c1
push ecx
push edx
call fcn.1009cb41
add esp, 8
mov byte [ebp - 4], 5
mov ecx, dword [ebp - 0x24]
cmp ecx, 0x10
jb 0x100572d1
mov edx, dword [ebp - 0x38]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x100572c7
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
jbe 0x100572c7
call dword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
push ecx
push edx
call fcn.1009cb41
add esp, 8
lea ecx, [ebp - 0x80]
call fcn.10044200
push fcn.10021790
push 4
push 0x18
lea eax, [ebp - 0xe0]
mov dword [ebp - 4], 0xffffffff
push eax
call fcn.1009c712
mov dword [edi + 0x48], 0
lea esi, [edi + 0x18]
mov dword [edi + 0x34], 0x14
lea ecx, [edi + 0x30]
mov dword [edi + 0x3c], 0xaf
mov eax, dword [edi + 0x2c]
mov dword [edi + 0x4c], eax
mov eax, dword [esi + 4]
mov dword [ebp - 0x1c], ecx
cmp eax, dword [esi + 8]
je 0x10057329
mov dword [eax], ecx
add dword [esi + 4], 4
jmp 0x10057335
lea ecx, [ebp - 0x1c]
push ecx
push eax
mov ecx, esi
call fcn.10022760
push 0xc
xorps xmm0, xmm0
mov dword [ebp - 0x40], 0
push str.weapon_color
lea ecx, [ebp - 0x50]
mov dword [ebp - 0x3c], 0
movups xmmword [ebp - 0x50], xmm0
call fcn.10022110
mov dword [ebp - 4], 9
lea ecx, [ebp - 0x38]
push 0x15
xorps xmm0, xmm0
mov dword [ebp - 0x28], 0
push str.dropped_weapons_color
movups xmmword [ebp - 0x38], xmm0
mov dword [ebp - 0x24], 0
call fcn.10022110
lea ecx, [edi + 0x148]
mov byte [ebp - 4], 0xa
lea eax, [ebp - 0x38]
cmp ecx, eax
je 0x100573a6
cmp dword [ebp - 0x24], 0x10
push dword [ebp - 0x28]
cmovae eax, dword [ebp - 0x38]
push eax
call fcn.10027280
lea ecx, [edi + 0x110]
lea eax, [ebp - 0x50]
cmp ecx, eax
je 0x100573c4
cmp dword [ebp - 0x3c], 0x10
push dword [ebp - 0x40]
cmovae eax, dword [ebp - 0x50]
push eax
call fcn.10027280
mov byte [ebp - 4], 9
mov ecx, dword [ebp - 0x24]
mov dword [edi + 0x160], 0xd2ffffff
mov dword [edi + 0x178], 0
cmp ecx, 0x10
jb 0x10057410
mov edx, dword [ebp - 0x38]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x10057406
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x10059065
push ecx
push edx
call fcn.1009cb41
add esp, 8
mov dword [ebp - 4], 0xffffffff
mov ecx, dword [ebp - 0x3c]
cmp ecx, 0x10
jb 0x1005744b
mov edx, dword [ebp - 0x50]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x10057441
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x10059065
push ecx
push edx
call fcn.1009cb41
add esp, 8
mov eax, dword [edi + 0x134]
lea ecx, [edi + 0x130]
mov dword [ebp - 0x1c], 0x10024860
cmp eax, dword [ecx + 8]
je 0x1005746f
mov dword [eax], 0x10024860
add dword [ecx + 4], 4
jmp 0x10057479
lea edx, [ebp - 0x1c]
push edx
push eax
call fcn.10022760
mov dword [edi + 0xf0], 0
lea ecx, [edi + 0xd8]
mov dword [edi + 0xdc], 0x14
mov dword [edi + 0xe4], 0xaf
mov eax, dword [edi + 0x2c]
mov dword [edi + 0xf4], eax
mov eax, dword [esi + 4]
mov dword [ebp - 0x1c], ecx
cmp eax, dword [esi + 8]
je 0x100574b9
mov dword [eax], ecx
add dword [esi + 4], 4
jmp 0x100574c5
lea ecx, [ebp - 0x1c]
push ecx
push eax
mov ecx, esi
call fcn.10022760
push 0xb
xorps xmm0, xmm0
mov dword [ebp - 0x40], 0
push str.enemy_radar
lea ecx, [ebp - 0x50]
mov dword [ebp - 0x3c], 0
movups xmmword [ebp - 0x50], xmm0
call fcn.10022110
mov dword [ebp - 4], 0xb
lea ecx, [ebp - 0x38]
push 5
xorps xmm0, xmm0
mov dword [ebp - 0x28], 0
push str.radar
movups xmmword [ebp - 0x38], xmm0
mov dword [ebp - 0x24], 0
call fcn.10022110
lea ecx, [edi + 0xb9c]
mov byte [ebp - 4], 0xc
lea eax, [ebp - 0x50]
cmp ecx, eax
je 0x10057536
cmp dword [ebp - 0x3c], 0x10
push dword [ebp - 0x40]
cmovae eax, dword [ebp - 0x50]
push eax
call fcn.10027280
lea ecx, [edi + 0xbd4]
mov byte [edi + 0xbcd], 1
lea eax, [ebp - 0x38]
cmp ecx, eax
je 0x1005755b
cmp dword [ebp - 0x24], 0x10
push dword [ebp - 0x28]
cmovae eax, dword [ebp - 0x38]
push eax
call fcn.10027280
mov byte [ebp - 4], 0xb
mov ecx, dword [ebp - 0x24]
mov byte [edi + 0xbd0], 0
cmp ecx, 0x10
jb 0x1005759a
mov edx, dword [ebp - 0x38]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x10057590
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x10059065
push ecx
push edx
call fcn.1009cb41
add esp, 8
mov dword [ebp - 4], 0xffffffff
mov ecx, dword [ebp - 0x3c]
cmp ecx, 0x10
jb 0x100575d5
mov edx, dword [ebp - 0x50]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x100575cb
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x10059065
push ecx
push edx
call fcn.1009cb41
add esp, 8
mov dword [edi + 0xb7c], 0
lea ecx, [edi + 0xb64]
mov dword [edi + 0xb68], 0x14
mov dword [edi + 0xb70], 0xaf
mov eax, dword [edi + 0x2c]
mov dword [edi + 0xb80], eax
mov eax, dword [esi + 4]
mov dword [ebp - 0x1c], ecx
cmp eax, dword [esi + 8]
je 0x10057615
mov dword [eax], ecx
add dword [esi + 4], 4
jmp 0x10057621
lea ecx, [ebp - 0x1c]
push ecx
push eax
mov ecx, esi
call fcn.10022760
push 4
xorps xmm0, xmm0
mov dword [ebp - 0x40], 0
push str.proj
lea ecx, [ebp - 0x50]
mov dword [ebp - 0x3c], 0
movups xmmword [ebp - 0x50], xmm0
call fcn.10022110
mov dword [ebp - 4], 0xd
lea ecx, [ebp - 0x38]
push 8
xorps xmm0, xmm0
mov dword [ebp - 0x28], 0
push str.grenades
movups xmmword [ebp - 0x38], xmm0
mov dword [ebp - 0x24], 0
call fcn.10022110
lea ecx, [edi + 0x1cc]
mov byte [ebp - 4], 0xe
lea eax, [ebp - 0x50]
cmp ecx, eax
je 0x10057692
cmp dword [ebp - 0x3c], 0x10
push dword [ebp - 0x40]
cmovae eax, dword [ebp - 0x50]
push eax
call fcn.10027280
lea ecx, [edi + 0x204]
mov byte [edi + 0x1fd], 1
lea eax, [ebp - 0x38]
cmp ecx, eax
je 0x100576b7
cmp dword [ebp - 0x24], 0x10
push dword [ebp - 0x28]
cmovae eax, dword [ebp - 0x38]
push eax
call fcn.10027280
mov byte [ebp - 4], 0xd
mov ecx, dword [ebp - 0x24]
mov byte [edi + 0x200], 0
cmp ecx, 0x10
jb 0x100576f6
mov edx, dword [ebp - 0x38]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x100576ec
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x10059065
push ecx
push edx
call fcn.1009cb41
add esp, 8
mov dword [ebp - 4], 0xffffffff
mov ecx, dword [ebp - 0x3c]
cmp ecx, 0x10
jb 0x10057731
mov edx, dword [ebp - 0x50]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x10057727
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x10059065
push ecx
push edx
call fcn.1009cb41
add esp, 8
mov dword [edi + 0x1ac], 0
lea ecx, [edi + 0x194]
mov dword [edi + 0x198], 0x14
mov dword [edi + 0x1a0], 0xaf
mov eax, dword [edi + 0x2c]
mov dword [edi + 0x1b0], eax
mov eax, dword [esi + 4]
mov dword [ebp - 0x1c], ecx
cmp eax, dword [esi + 8]
je 0x10057771
mov dword [eax], ecx
add dword [esi + 4], 4
jmp 0x1005777d
lea ecx, [ebp - 0x1c]
push ecx
push eax
mov ecx, esi
call fcn.10022760
push 0xf
xorps xmm0, xmm0
mov dword [ebp - 0x40], 0
push str.proj_color_text
lea ecx, [ebp - 0x50]
mov dword [ebp - 0x3c], 0
movups xmmword [ebp - 0x50], xmm0
call fcn.10022110
mov dword [ebp - 4], 0xf
lea ecx, [ebp - 0x38]
push 0x13
xorps xmm0, xmm0
mov dword [ebp - 0x28], 0
push str.text_grenades_color
movups xmmword [ebp - 0x38], xmm0
mov dword [ebp - 0x24], 0
call fcn.10022110
lea ecx, [edi + 0x28c]
mov byte [ebp - 4], 0x10
lea eax, [ebp - 0x38]
cmp ecx, eax
je 0x100577ee
cmp dword [ebp - 0x24], 0x10
push dword [ebp - 0x28]
cmovae eax, dword [ebp - 0x38]
push eax
call fcn.10027280
lea ecx, [edi + 0x254]
lea eax, [ebp - 0x50]
cmp ecx, eax
je 0x1005780c
cmp dword [ebp - 0x3c], 0x10
push dword [ebp - 0x40]
cmovae eax, dword [ebp - 0x50]
push eax
call fcn.10027280
mov byte [ebp - 4], 0xf
mov ecx, dword [ebp - 0x24]
mov dword [edi + 0x2a4], 0xb4ffffff
mov dword [edi + 0x2bc], 0
cmp ecx, 0x10
jb 0x10057858
mov edx, dword [ebp - 0x38]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x1005784e
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x10059065
push ecx
push edx
call fcn.1009cb41
add esp, 8
mov dword [ebp - 4], 0xffffffff
mov ecx, dword [ebp - 0x3c]
cmp ecx, 0x10
jb 0x10057893
mov edx, dword [ebp - 0x50]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x10057889
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x10059065
push ecx
push edx
call fcn.1009cb41
add esp, 8
mov eax, dword [edi + 0x278]
lea ecx, [edi + 0x274]
mov dword [ebp - 0x1c], 0x10024740
cmp eax, dword [ecx + 8]
je 0x100578b7
mov dword [eax], 0x10024740
add dword [ecx + 4], 4
jmp 0x100578c1
lea edx, [ebp - 0x1c]
push edx
push eax
call fcn.10022760
mov dword [edi + 0x234], 0
lea ecx, [edi + 0x21c]
mov dword [edi + 0x220], 0x14
mov dword [edi + 0x228], 0xaf
mov eax, dword [edi + 0x2c]
mov dword [edi + 0x238], eax
mov eax, dword [esi + 4]
mov dword [ebp - 0x1c], ecx
cmp eax, dword [esi + 8]
je 0x10057901
mov dword [eax], ecx
add dword [esi + 4], 4
jmp 0x1005790d
lea ecx, [ebp - 0x1c]
push ecx
push eax
mov ecx, esi
call fcn.10022760
push 0xb
xorps xmm0, xmm0
mov dword [ebp - 0x40], 0
push str.should_Glow
lea ecx, [ebp - 0x50]
mov dword [ebp - 0x3c], 0
movups xmmword [ebp - 0x50], xmm0
call fcn.10022110
mov dword [ebp - 4], 0x11
lea ecx, [ebp - 0x38]
push 4
xorps xmm0, xmm0
mov dword [ebp - 0x28], 0
push str.glow
movups xmmword [ebp - 0x38], xmm0
mov dword [ebp - 0x24], 0
call fcn.10022110
lea ecx, [edi + 0x310]
mov byte [ebp - 4], 0x12
lea eax, [ebp - 0x50]
cmp ecx, eax
je 0x1005797e
cmp dword [ebp - 0x3c], 0x10
push dword [ebp - 0x40]
cmovae eax, dword [ebp - 0x50]
push eax
call fcn.10027280
lea ecx, [edi + 0x348]
mov byte [edi + 0x341], 1
lea eax, [ebp - 0x38]
cmp ecx, eax
je 0x100579a3
cmp dword [ebp - 0x24], 0x10
push dword [ebp - 0x28]
cmovae eax, dword [ebp - 0x38]
push eax
call fcn.10027280
mov byte [ebp - 4], 0x11
mov ecx, dword [ebp - 0x24]
mov byte [edi + 0x344], 0
cmp ecx, 0x10
jb 0x100579e2
mov edx, dword [ebp - 0x38]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x100579d8
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x10059065
push ecx
push edx
call fcn.1009cb41
add esp, 8
mov dword [ebp - 4], 0xffffffff
mov ecx, dword [ebp - 0x3c]
cmp ecx, 0x10
jb 0x10057a1d
mov edx, dword [ebp - 0x50]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x10057a13
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x10059065
push ecx
push edx
call fcn.1009cb41
add esp, 8
mov eax, dword [edi + 0x334]
lea ecx, [edi + 0x330]
mov dword [ebp - 0x1c], 0x10024740
cmp eax, dword [ecx + 8]
je 0x10057a41
mov dword [eax], 0x10024740
add dword [ecx + 4], 4
jmp 0x10057a4b
lea edx, [ebp - 0x1c]
push edx
push eax
call fcn.10022760
mov dword [edi + 0x2f0], 0
lea ecx, [edi + 0x2d8]
mov dword [edi + 0x2dc], 0x14
mov dword [edi + 0x2e4], 0xaf
mov eax, dword [edi + 0x2c]
mov dword [edi + 0x2f4], eax
mov eax, dword [esi + 4]
mov dword [ebp - 0x1c], ecx
cmp eax, dword [esi + 8]
je 0x10057a8b
mov dword [eax], ecx
add dword [esi + 4], 4
jmp 0x10057a97
lea ecx, [ebp - 0x1c]
push ecx
push eax
mov ecx, esi
call fcn.10022760
push 0xa
xorps xmm0, xmm0
mov dword [ebp - 0x40], 0
push str.proj_color
lea ecx, [ebp - 0x50]
mov dword [ebp - 0x3c], 0
movups xmmword [ebp - 0x50], xmm0
call fcn.10022110
mov dword [ebp - 4], 0x13
lea ecx, [ebp - 0x38]
push 0x13
xorps xmm0, xmm0
mov dword [ebp - 0x28], 0
push str.glow_grenades_color
movups xmmword [ebp - 0x38], xmm0
mov dword [ebp - 0x24], 0
call fcn.10022110
lea ecx, [edi + 0x3d0]
mov byte [ebp - 4], 0x14
lea eax, [ebp - 0x38]
cmp ecx, eax
je 0x10057b08
cmp dword [ebp - 0x24], 0x10
push dword [ebp - 0x28]
cmovae eax, dword [ebp - 0x38]
push eax
call fcn.10027280
lea ecx, [edi + 0x398]
lea eax, [ebp - 0x50]
cmp ecx, eax
je 0x10057b26
cmp dword [ebp - 0x3c], 0x10
push dword [ebp - 0x40]
cmovae eax, dword [ebp - 0x50]
push eax
call fcn.10027280
mov byte [ebp - 4], 0x13
mov ecx, dword [ebp - 0x24]
mov dword [edi + 0x3e8], 0xff0000ff
mov dword [edi + 0x400], 0
cmp ecx, 0x10
jb 0x10057b72
mov edx, dword [ebp - 0x38]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x10057b68
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x10059065
push ecx
push edx
call fcn.1009cb41
add esp, 8
mov dword [ebp - 4], 0xffffffff
mov ecx, dword [ebp - 0x3c]
cmp ecx, 0x10
jb 0x10057bad
mov edx, dword [ebp - 0x50]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x10057ba3
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x10059065
push ecx
push edx
call fcn.1009cb41
add esp, 8
mov eax, dword [edi + 0x3bc]
lea ecx, [edi + 0x3b8]
mov dword [ebp - 0x1c], 0x10024750
cmp eax, dword [ecx + 8]
je 0x10057bd1
mov dword [eax], 0x10024750
add dword [ecx + 4], 4
jmp 0x10057bdb
lea edx, [ebp - 0x1c]
push edx
push eax
call fcn.10022760
mov dword [edi + 0x378], 0
lea ecx, [edi + 0x360]
mov dword [edi + 0x364], 0x14
mov dword [edi + 0x36c], 0xaf
mov eax, dword [edi + 0x2c]
mov dword [edi + 0x37c], eax
mov eax, dword [esi + 4]
mov dword [ebp - 0x1c], ecx
cmp eax, dword [esi + 8]
je 0x10057c1b
mov dword [eax], ecx
add dword [esi + 4], 4
jmp 0x10057c27
lea ecx, [ebp - 0x1c]
push ecx
push eax
mov ecx, esi
call fcn.10022760
push 6
xorps xmm0, xmm0
mov dword [ebp - 0x40], 0
push str.tracer
lea ecx, [ebp - 0x50]
mov dword [ebp - 0x3c], 0
movups xmmword [ebp - 0x50], xmm0
call fcn.10022110
mov dword [ebp - 4], 0x15
lea ecx, [ebp - 0x38]
push 6
xorps xmm0, xmm0
mov dword [ebp - 0x28], 0
push str.tracer
movups xmmword [ebp - 0x38], xmm0
mov dword [ebp - 0x24], 0
call fcn.10022110
lea ecx, [edi + 0x454]
mov byte [ebp - 4], 0x16
lea eax, [ebp - 0x50]
cmp ecx, eax
je 0x10057c98
cmp dword [ebp - 0x3c], 0x10
push dword [ebp - 0x40]
cmovae eax, dword [ebp - 0x50]
push eax
call fcn.10027280
lea ecx, [edi + 0x48c]
mov byte [edi + 0x485], 1
lea eax, [ebp - 0x38]
cmp ecx, eax
je 0x10057cbd
cmp dword [ebp - 0x24], 0x10
push dword [ebp - 0x28]
cmovae eax, dword [ebp - 0x38]
push eax
call fcn.10027280
mov byte [ebp - 4], 0x15
mov ecx, dword [ebp - 0x24]
mov byte [edi + 0x488], 0
cmp ecx, 0x10
jb 0x10057cfc
mov edx, dword [ebp - 0x38]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x10057cf2
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x10059065
push ecx
push edx
call fcn.1009cb41
add esp, 8
mov dword [ebp - 4], 0xffffffff
mov ecx, dword [ebp - 0x3c]
cmp ecx, 0x10
jb 0x10057d37
mov edx, dword [ebp - 0x50]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x10057d2d
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x10059065
push ecx
push edx
call fcn.1009cb41
add esp, 8
mov eax, dword [edi + 0x478]
lea ecx, [edi + 0x474]
mov dword [ebp - 0x1c], 0x10024740
cmp eax, dword [ecx + 8]
je 0x10057d5b
mov dword [eax], 0x10024740
add dword [ecx + 4], 4
jmp 0x10057d65
lea edx, [ebp - 0x1c]
push edx
push eax
call fcn.10022760
mov dword [edi + 0x434], 0
lea ecx, [edi + 0x41c]
mov dword [edi + 0x420], 0x14
mov dword [edi + 0x428], 0xaf
mov eax, dword [edi + 0x2c]
mov dword [edi + 0x438], eax
mov eax, dword [esi + 4]
mov dword [ebp - 0x1c], ecx
cmp eax, dword [esi + 8]
je 0x10057da5
mov dword [eax], ecx
add dword [esi + 4], 4
jmp 0x10057db1
lea ecx, [ebp - 0x1c]
push ecx
push eax
mov ecx, esi
call fcn.10022760
push 4
xorps xmm0, xmm0
mov dword [ebp - 0xb8], 0
push str.beam
lea ecx, [ebp - 0xc8]
mov dword [ebp - 0xb4], 0
movups xmmword [ebp - 0xc8], xmm0
call fcn.10022110
mov dword [ebp - 4], 0x17
lea ecx, [ebp - 0xb0]
push 7
xorps xmm0, xmm0
mov dword [ebp - 0xa0], 0
push str.glowbox
movups xmmword [ebp - 0xb0], xmm0
mov dword [ebp - 0x9c], 0
call fcn.10022110
mov byte [ebp - 4], 0x18
lea ecx, [ebp - 0x98]
push 4
xorps xmm0, xmm0
mov dword [ebp - 0x88], 0
push str.line
movups xmmword [ebp - 0x98], xmm0
mov dword [ebp - 0x84], 0
call fcn.10022110
lea ecx, [ebp - 0xc8]
mov dword [ebp - 4], 0x19
push ecx
lea eax, [ebp - 0x80]
push eax
push ecx
lea ecx, [ebp - 0x80]
call fcn.10070f60
mov byte [ebp - 4], 0x1a
lea ecx, [ebp - 0x38]
push 0xb
xorps xmm0, xmm0
mov dword [ebp - 0x28], 0
push str.tracer_type
movups xmmword [ebp - 0x38], xmm0
mov dword [ebp - 0x24], 0
call fcn.10022110
mov byte [ebp - 4], 0x1b
lea ecx, [ebp - 0x50]
push 6
xorps xmm0, xmm0
mov dword [ebp - 0x40], 0
push str.tracer
movups xmmword [ebp - 0x50], xmm0
mov dword [ebp - 0x3c], 0
call fcn.10022110
lea ecx, [edi + 0x4dc]
mov byte [ebp - 4], 0x1c
lea eax, [ebp - 0x38]
cmp ecx, eax
je 0x10057ed9
cmp dword [ebp - 0x24], 0x10
push dword [ebp - 0x28]
cmovae eax, dword [ebp - 0x38]
push eax
call fcn.10027280
mov ecx, dword [ebp - 0x7c]
mov eax, dword [ebp - 0x80]
mov byte [edi + 0x50d], 0
mov dword [edi + 0x540], 0
mov dword [edi + 0x4b4], 0x14
mov dword [edi + 0x4b8], 0x14
mov dword [ebp - 0x20], ecx
cmp eax, ecx
je 0x10057f49
lea ecx, [edi + 0x52c]
mov esi, eax
mov eax, dword [edi + 0x530]
push esi
cmp eax, dword [edi + 0x534]
je 0x10057f32
mov ecx, eax
call fcn.10026fd0
add dword [edi + 0x530], 0x18
jmp 0x10057f38
push eax
call fcn.10044950
add esi, 0x18
lea ecx, [edi + 0x52c]
cmp esi, dword [ebp - 0x20]
jne 0x10057f13
lea esi, [edi + 0x18]
mov ecx, dword [edi + 0x530]
lea eax, [edi + 0x52c]
sub ecx, dword [eax]
mov eax, 0x2aaaaaab
imul ecx
sar edx, 2
mov eax, edx
shr eax, 0x1f
add eax, edx
je 0x10057f74
mov dword [edi + 0x53c], 0
mov byte [ebp - 4], 0x1b
mov ecx, dword [ebp - 0x3c]
cmp ecx, 0x10
jb 0x10057fa8
mov edx, dword [ebp - 0x50]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x10057f9e
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x10057fd2
push ecx
push edx
call fcn.1009cb41
add esp, 8
mov byte [ebp - 4], 0x1a
mov ecx, dword [ebp - 0x24]
cmp ecx, 0x10
jb 0x10057fe2
mov edx, dword [ebp - 0x38]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x10057fd8
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
jbe 0x10057fd8
call dword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
push ecx
push edx
call fcn.1009cb41
add esp, 8
lea ecx, [ebp - 0x80]
call fcn.10044200
push fcn.10021790
push 3
push 0x18
lea eax, [ebp - 0xc8]
mov dword [ebp - 4], 0xffffffff
push eax
call fcn.1009c712
mov eax, dword [edi + 0x500]
lea ecx, [edi + 0x4fc]
mov dword [ebp - 0x20], 0x10024760
cmp eax, dword [ecx + 8]
je 0x1005802a
mov dword [eax], 0x10024760
add dword [ecx + 4], 4
jmp 0x10058034
lea edx, [ebp - 0x20]
push edx
push eax
call fcn.10022760
mov dword [edi + 0x4bc], 0
lea ecx, [edi + 0x4a4]
mov dword [edi + 0x4a8], 0x14
mov dword [edi + 0x4b0], 0xaf
mov eax, dword [edi + 0x2c]
mov dword [edi + 0x4c0], eax
mov eax, dword [esi + 4]
mov dword [ebp - 0x20], ecx
cmp eax, dword [esi + 8]
je 0x10058074
mov dword [eax], ecx
add dword [esi + 4], 4
jmp 0x10058080
lea ecx, [ebp - 0x20]
push ecx
push eax
mov ecx, esi
call fcn.10022760
push 2
xorps xmm0, xmm0
mov dword [ebp - 0x60], 0
push 0x100ae600
lea ecx, [ebp - 0x70]
mov dword [ebp - 0x5c], 0
movups xmmword [ebp - 0x70], xmm0
call fcn.10044620
mov dword [ebp - 4], 0x1d
lea ecx, [ebp - 0x50]
push 9
xorps xmm0, xmm0
mov dword [ebp - 0x40], 0
push str.thickness
movups xmmword [ebp - 0x50], xmm0
mov dword [ebp - 0x3c], 0
call fcn.10022110
mov byte [ebp - 4], 0x1e
lea ecx, [ebp - 0x38]
push 0x12
xorps xmm0, xmm0
mov dword [ebp - 0x28], 0
push str.glow_box_thickness
movups xmmword [ebp - 0x38], xmm0
mov dword [ebp - 0x24], 0
call fcn.10022110
lea ecx, [edi + 0x57c]
mov byte [ebp - 4], 0x1f
lea eax, [ebp - 0x50]
cmp ecx, eax
je 0x10058119
cmp dword [ebp - 0x3c], 0x10
push dword [ebp - 0x40]
cmovae eax, dword [ebp - 0x50]
push eax
call fcn.10027280
lea ecx, [edi + 0x5cc]
mov byte [edi + 0x5ad], 1
lea eax, [ebp - 0x38]
cmp ecx, eax
je 0x1005813e
cmp dword [ebp - 0x24], 0x10
push dword [ebp - 0x28]
cmovae eax, dword [ebp - 0x38]
push eax
call fcn.10027280
xor eax, eax
mov ecx, 0xf
cmp byte [edi + 0x5ad], al
cmovne eax, ecx
lea ecx, [edi + 0x5e4]
mov dword [edi + 0x5fc], eax
add eax, 8
mov dword [edi + 0x554], eax
mov dword [edi + 0x558], eax
lea eax, [ebp - 0x70]
mov dword [edi + 0x5b8], 0x3dcccccd
mov dword [edi + 0x5bc], 0x3f800000
mov dword [edi + 0x5b4], 0x3e99999a
mov dword [edi + 0x5c8], 1
mov dword [edi + 0x5c0], 0x3dcccccd
cmp ecx, eax
je 0x100581b3
cmp dword [ebp - 0x5c], 8
push dword [ebp - 0x60]
cmovae eax, dword [ebp - 0x70]
push eax
call fcn.10071200
mov byte [ebp - 4], 0x1e
mov ecx, dword [ebp - 0x24]
cmp ecx, 0x10
jb 0x100581eb
mov edx, dword [ebp - 0x38]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x100581e1
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x10059065
push ecx
push edx
call fcn.1009cb41
add esp, 8
mov byte [ebp - 4], 0x1d
mov ecx, dword [ebp - 0x3c]
cmp ecx, 0x10
jb 0x10058223
mov edx, dword [ebp - 0x50]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x10058219
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x10059065
push ecx
push edx
call fcn.1009cb41
add esp, 8
mov dword [ebp - 4], 0xffffffff
mov ecx, dword [ebp - 0x5c]
cmp ecx, 8
jb 0x10058264
mov edx, dword [ebp - 0x70]
lea ecx, [ecx*2 + 2]
mov eax, edx
cmp ecx, 0x1000
jb 0x1005825a
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x10059065
push ecx
push edx
call fcn.1009cb41
add esp, 8
mov eax, dword [edi + 0x5a0]
lea ecx, [edi + 0x59c]
mov dword [ebp - 0x20], 0x10024770
cmp eax, dword [ecx + 8]
je 0x10058288
mov dword [eax], 0x10024770
add dword [ecx + 4], 4
jmp 0x10058292
lea edx, [ebp - 0x20]
push edx
push eax
call fcn.10022760
mov dword [edi + 0x55c], 0
lea ecx, [edi + 0x544]
mov dword [edi + 0x548], 0x14
mov dword [edi + 0x550], 0xaf
mov eax, dword [edi + 0x2c]
mov dword [edi + 0x560], eax
mov eax, dword [esi + 4]
mov dword [ebp - 0x20], ecx
cmp eax, dword [esi + 8]
je 0x100582d2
mov dword [eax], ecx
add dword [esi + 4], 4
jmp 0x100582de
lea ecx, [ebp - 0x20]
push ecx
push eax
mov ecx, esi
call fcn.10022760
push 0xc
xorps xmm0, xmm0
mov dword [ebp - 0x40], 0
push str.tracer_color
lea ecx, [ebp - 0x50]
mov dword [ebp - 0x3c], 0
movups xmmword [ebp - 0x50], xmm0
call fcn.10022110
mov dword [ebp - 4], 0x20
lea ecx, [ebp - 0x38]
push 0x15
xorps xmm0, xmm0
mov dword [ebp - 0x28], 0
push str.tracer_grenades_color
movups xmmword [ebp - 0x38], xmm0
mov dword [ebp - 0x24], 0
call fcn.10022110
lea ecx, [edi + 0x670]
mov byte [ebp - 4], 0x21
lea eax, [ebp - 0x38]
mov dword [ebp - 0x1c], 0xff732e42
cmp ecx, eax
je 0x10058356
cmp dword [ebp - 0x24], 0x10
push dword [ebp - 0x28]
cmovae eax, dword [ebp - 0x38]
push eax
call fcn.10027280
lea ecx, [edi + 0x638]
lea eax, [ebp - 0x50]
cmp ecx, eax
je 0x10058374
cmp dword [ebp - 0x3c], 0x10
push dword [ebp - 0x40]
cmovae eax, dword [ebp - 0x50]
push eax
call fcn.10027280
mov eax, dword [ebp - 0x1c]
mov byte [ebp - 4], 0x20
mov ecx, dword [ebp - 0x24]
mov dword [edi + 0x688], eax
mov dword [edi + 0x6a0], 0
cmp ecx, 0x10
jb 0x100583bf
mov edx, dword [ebp - 0x38]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x100583b5
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x10059065
push ecx
push edx
call fcn.1009cb41
add esp, 8
mov dword [ebp - 4], 0xffffffff
mov ecx, dword [ebp - 0x3c]
cmp ecx, 0x10
jb 0x100583fa
mov edx, dword [ebp - 0x50]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x100583f0
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x10059065
push ecx
push edx
call fcn.1009cb41
add esp, 8
mov eax, dword [edi + 0x65c]
lea ecx, [edi + 0x658]
mov dword [ebp - 0x20], 0x10024760
cmp eax, dword [ecx + 8]
je 0x1005841e
mov dword [eax], 0x10024760
add dword [ecx + 4], 4
jmp 0x10058428
lea edx, [ebp - 0x20]
push edx
push eax
call fcn.10022760
mov dword [edi + 0x618], 0
lea ecx, [edi + 0x600]
mov dword [edi + 0x604], 0x14
mov dword [edi + 0x60c], 0xaf
mov eax, dword [edi + 0x2c]
mov dword [edi + 0x61c], eax
mov eax, dword [esi + 4]
mov dword [ebp - 0x20], ecx
cmp eax, dword [esi + 8]
je 0x10058468
mov dword [eax], ecx
add dword [esi + 4], 4
jmp 0x10058474
lea ecx, [ebp - 0x20]
push ecx
push eax
mov ecx, esi
call fcn.10022760
push 0x12
xorps xmm0, xmm0
mov dword [ebp - 0x40], 0
push str.tracer_should_Fade
lea ecx, [ebp - 0x50]
mov dword [ebp - 0x3c], 0
movups xmmword [ebp - 0x50], xmm0
call fcn.10022110
mov dword [ebp - 4], 0x22
lea ecx, [ebp - 0x38]
push 0x22
xorps xmm0, xmm0
mov dword [ebp - 0x28], 0
push str.fade_away_based_on_detonation_time
movups xmmword [ebp - 0x38], xmm0
mov dword [ebp - 0x24], 0
call fcn.10022110
lea ecx, [edi + 0x6f4]
mov byte [ebp - 4], 0x23
lea eax, [ebp - 0x50]
cmp ecx, eax
je 0x100584e5
cmp dword [ebp - 0x3c], 0x10
push dword [ebp - 0x40]
cmovae eax, dword [ebp - 0x50]
push eax
call fcn.10027280
lea ecx, [edi + 0x72c]
mov byte [edi + 0x725], 1
lea eax, [ebp - 0x38]
cmp ecx, eax
je 0x1005850a
cmp dword [ebp - 0x24], 0x10
push dword [ebp - 0x28]
cmovae eax, dword [ebp - 0x38]
push eax
call fcn.10027280
mov byte [ebp - 4], 0x22
mov ecx, dword [ebp - 0x24]
mov byte [edi + 0x728], 0
cmp ecx, 0x10
jb 0x10058549
mov edx, dword [ebp - 0x38]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x1005853f
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x10059065
push ecx
push edx
call fcn.1009cb41
add esp, 8
mov dword [ebp - 4], 0xffffffff
mov ecx, dword [ebp - 0x3c]
cmp ecx, 0x10
jb 0x10058584
mov edx, dword [ebp - 0x50]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x1005857a
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x10059065
push ecx
push edx
call fcn.1009cb41
add esp, 8
mov eax, dword [edi + 0x718]
lea ecx, [edi + 0x714]
mov dword [ebp - 0x20], 0x10024760
cmp eax, dword [ecx + 8]
je 0x100585a8
mov dword [eax], 0x10024760
add dword [ecx + 4], 4
jmp 0x100585b2
lea edx, [ebp - 0x20]
push edx
push eax
call fcn.10022760
mov dword [edi + 0x6d4], 0
lea ecx, [edi + 0x6bc]
mov dword [edi + 0x6c0], 0x14
mov dword [edi + 0x6c8], 0xaf
mov eax, dword [edi + 0x2c]
mov dword [edi + 0x6d8], eax
mov eax, dword [esi + 4]
mov dword [ebp - 0x20], ecx
cmp eax, dword [esi + 8]
je 0x100585f2
mov dword [eax], ecx
add dword [esi + 4], 4
jmp 0x100585fe
lea ecx, [ebp - 0x20]
push ecx
push eax
mov ecx, esi
call fcn.10022760
push 4
xorps xmm0, xmm0
mov dword [ebp - 0x40], 0
push str.Bomb
lea ecx, [ebp - 0x50]
mov dword [ebp - 0x3c], 0
movups xmmword [ebp - 0x50], xmm0
call fcn.10022110
mov dword [ebp - 4], 0x24
lea ecx, [ebp - 0x38]
push 4
xorps xmm0, xmm0
mov dword [ebp - 0x28], 0
push str.bomb
movups xmmword [ebp - 0x38], xmm0
mov dword [ebp - 0x24], 0
call fcn.10022110
lea ecx, [edi + 0x77c]
mov byte [ebp - 4], 0x25
lea eax, [ebp - 0x50]
cmp ecx, eax
je 0x1005866f
cmp dword [ebp - 0x3c], 0x10
push dword [ebp - 0x40]
cmovae eax, dword [ebp - 0x50]
push eax
call fcn.10027280
lea ecx, [edi + 0x7b4]
mov byte [edi + 0x7ad], 1
lea eax, [ebp - 0x38]
cmp ecx, eax
je 0x10058694
cmp dword [ebp - 0x24], 0x10
push dword [ebp - 0x28]
cmovae eax, dword [ebp - 0x38]
push eax
call fcn.10027280
mov byte [ebp - 4], 0x24
mov ecx, dword [ebp - 0x24]
mov byte [edi + 0x7b0], 0
cmp ecx, 0x10
jb 0x100586d3
mov edx, dword [ebp - 0x38]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x100586c9
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x10059065
push ecx
push edx
call fcn.1009cb41
add esp, 8
mov dword [ebp - 4], 0xffffffff
mov ecx, dword [ebp - 0x3c]
cmp ecx, 0x10
jb 0x1005870e
mov edx, dword [ebp - 0x50]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x10058704
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x10059065
push ecx
push edx
call fcn.1009cb41
add esp, 8
mov dword [edi + 0x75c], 0
lea ecx, [edi + 0x744]
mov dword [edi + 0x748], 0x14
mov dword [edi + 0x750], 0xaf
mov eax, dword [edi + 0x2c]
mov dword [edi + 0x760], eax
mov eax, dword [esi + 4]
mov dword [ebp - 0x20], ecx
cmp eax, dword [esi + 8]
je 0x1005874e
mov dword [eax], ecx
add dword [esi + 4], 4
jmp 0x1005875a
lea ecx, [ebp - 0x20]
push ecx
push eax
mov ecx, esi
call fcn.10022760
push 0xa
xorps xmm0, xmm0
mov dword [ebp - 0x40], 0
push str.bomb_color
lea ecx, [ebp - 0x50]
mov dword [ebp - 0x3c], 0
movups xmmword [ebp - 0x50], xmm0
call fcn.10022110
mov dword [ebp - 4], 0x26
lea ecx, [ebp - 0x38]
push 0xa
xorps xmm0, xmm0
mov dword [ebp - 0x28], 0
push 0x100ae668
movups xmmword [ebp - 0x38], xmm0
mov dword [ebp - 0x24], 0
call fcn.10022110
lea ecx, [edi + 0x83c]
mov byte [ebp - 4], 0x27
lea eax, [ebp - 0x38]
mov dword [ebp - 0x1c], 0xff3cc897
cmp ecx, eax
je 0x100587d2
cmp dword [ebp - 0x24], 0x10
push dword [ebp - 0x28]
cmovae eax, dword [ebp - 0x38]
push eax
call fcn.10027280
lea ecx, [edi + 0x804]
lea eax, [ebp - 0x50]
cmp ecx, eax
je 0x100587f0
cmp dword [ebp - 0x3c], 0x10
push dword [ebp - 0x40]
cmovae eax, dword [ebp - 0x50]
push eax
call fcn.10027280
mov eax, dword [ebp - 0x1c]
mov byte [ebp - 4], 0x26
mov ecx, dword [ebp - 0x24]
mov dword [edi + 0x854], eax
mov dword [edi + 0x86c], 0
cmp ecx, 0x10
jb 0x1005883b
mov edx, dword [ebp - 0x38]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x10058831
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x10059065
push ecx
push edx
call fcn.1009cb41
add esp, 8
mov dword [ebp - 4], 0xffffffff
mov ecx, dword [ebp - 0x3c]
cmp ecx, 0x10
jb 0x10058876
mov edx, dword [ebp - 0x50]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x1005886c
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x10059065
push ecx
push edx
call fcn.1009cb41
add esp, 8
mov eax, dword [edi + 0x828]
lea ecx, [edi + 0x824]
mov dword [ebp - 0x20], 0x10024830
cmp eax, dword [ecx + 8]
je 0x1005889a
mov dword [eax], 0x10024830
add dword [ecx + 4], 4
jmp 0x100588a4
lea edx, [ebp - 0x20]
push edx
push eax
call fcn.10022760
mov dword [edi + 0x7e4], 0
lea ecx, [edi + 0x7cc]
mov dword [edi + 0x7d0], 0x14
mov dword [edi + 0x7d8], 0xaf
mov eax, dword [edi + 0x2c]
mov dword [edi + 0x7e8], eax
mov eax, dword [esi + 4]
mov dword [ebp - 0x20], ecx
cmp eax, dword [esi + 8]
je 0x100588e4
mov dword [eax], ecx
add dword [esi + 4], 4
jmp 0x100588f0
lea ecx, [ebp - 0x20]
push ecx
push eax
mov ecx, esi
call fcn.10022760
push 1
xorps xmm0, xmm0
mov dword [ebp - 0x60], 0
push 0x100ad400
lea ecx, [ebp - 0x70]
mov dword [ebp - 0x5c], 0
movups xmmword [ebp - 0x70], xmm0
call fcn.10044620
mov dword [ebp - 4], 0x28
lea ecx, [ebp - 0x50]
push 0x15
xorps xmm0, xmm0
mov dword [ebp - 0x40], 0
push str.transparent_props_amt
movups xmmword [ebp - 0x50], xmm0
mov dword [ebp - 0x3c], 0
call fcn.10022110
mov byte [ebp - 4], 0x29
lea ecx, [ebp - 0x38]
push 0x11
xorps xmm0, xmm0
mov dword [ebp - 0x28], 0
push str.transparent_props
movups xmmword [ebp - 0x38], xmm0
mov dword [ebp - 0x24], 0
call fcn.10022110
lea ecx, [edi + 0x8c0]
mov byte [ebp - 4], 0x2a
lea eax, [ebp - 0x50]
cmp ecx, eax
je 0x10058989
cmp dword [ebp - 0x3c], 0x10
push dword [ebp - 0x40]
cmovae eax, dword [ebp - 0x50]
push eax
call fcn.10027280
lea ecx, [edi + 0x910]
mov byte [edi + 0x8f1], 1
lea eax, [ebp - 0x38]
cmp ecx, eax
je 0x100589ae
cmp dword [ebp - 0x24], 0x10
push dword [ebp - 0x28]
cmovae eax, dword [ebp - 0x38]
push eax
call fcn.10027280
xor eax, eax
mov ecx, 0xf
cmp byte [edi + 0x8f1], al
cmovne eax, ecx
lea ecx, [edi + 0x928]
mov dword [edi + 0x940], eax
add eax, 8
mov dword [edi + 0x898], eax
mov dword [edi + 0x89c], eax
lea eax, [ebp - 0x70]
mov dword [edi + 0x8fc], 0
mov dword [edi + 0x900], 0x42c80000
mov dword [edi + 0x8f8], 0x42960000
mov dword [edi + 0x90c], 0
mov dword [edi + 0x904], 0x3f800000
cmp ecx, eax
je 0x10058a23
cmp dword [ebp - 0x5c], 8
push dword [ebp - 0x60]
cmovae eax, dword [ebp - 0x70]
push eax
call fcn.10071200
mov byte [ebp - 4], 0x29
mov ecx, dword [ebp - 0x24]
cmp ecx, 0x10
jb 0x10058a5b
mov edx, dword [ebp - 0x38]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x10058a51
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x10059065
push ecx
push edx
call fcn.1009cb41
add esp, 8
mov byte [ebp - 4], 0x28
mov ecx, dword [ebp - 0x3c]
cmp ecx, 0x10
jb 0x10058a93
mov edx, dword [ebp - 0x50]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x10058a89
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x10059065
push ecx
push edx
call fcn.1009cb41
add esp, 8
mov dword [ebp - 4], 0xffffffff
mov ecx, dword [ebp - 0x5c]
cmp ecx, 8
jb 0x10058ad4
mov edx, dword [ebp - 0x70]
lea ecx, [ecx*2 + 2]
mov eax, edx
cmp ecx, 0x1000
jb 0x10058aca
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x10059065
push ecx
push edx
call fcn.1009cb41
add esp, 8
mov dword [edi + 0x8ec], fcn.1008f190
lea ecx, [edi + 0x888]
mov dword [edi + 0x8a0], 0
mov dword [edi + 0x88c], 0x14
mov dword [edi + 0x894], 0xaf
mov eax, dword [edi + 0x2c]
mov dword [edi + 0x8a4], eax
mov eax, dword [esi + 4]
mov dword [ebp - 0x20], ecx
cmp eax, dword [esi + 8]
je 0x10058b1e
mov dword [eax], ecx
add dword [esi + 4], 4
jmp 0x10058b2a
lea ecx, [ebp - 0x20]
push ecx
push eax
mov ecx, esi
call fcn.10022760
push 5
xorps xmm0, xmm0
mov dword [ebp - 0x100], 0
push str.night
lea ecx, [ebp - 0x110]
mov dword [ebp - 0xfc], 0
movups xmmword [ebp - 0x110], xmm0
call fcn.10022110
mov dword [ebp - 4], 0x2b
lea ecx, [ebp - 0xf8]
push 0xa
xorps xmm0, xmm0
mov dword [ebp - 0xe8], 0
push str.fullbright
movups xmmword [ebp - 0xf8], xmm0
mov dword [ebp - 0xe4], 0
call fcn.10022110
lea ecx, [ebp - 0x110]
mov dword [ebp - 4], 0x2c
push ecx
lea eax, [ebp - 0xe0]
push eax
push ecx
lea ecx, [ebp - 0x80]
call fcn.10070f60
mov byte [ebp - 4], 0x2d
lea ecx, [ebp - 0x50]
push 5
xorps xmm0, xmm0
mov dword [ebp - 0x40], 0
push str.world
movups xmmword [ebp - 0x50], xmm0
mov dword [ebp - 0x3c], 0
call fcn.10022110
mov byte [ebp - 4], 0x2e
lea ecx, [ebp - 0x38]
push 0x15
xorps xmm0, xmm0
mov dword [ebp - 0x28], 0
push str.brightness_adjustment
movups xmmword [ebp - 0x38], xmm0
mov dword [ebp - 0x24], 0
call fcn.10022110
mov dword [ebp - 0x68], 0
mov dword [ebp - 0x64], 0
mov dword [ebp - 0x60], 0
lea ecx, [edi + 0x97c]
mov byte [ebp - 4], 0x30
lea eax, [ebp - 0x50]
cmp ecx, eax
je 0x10058c36
cmp dword [ebp - 0x3c], 0x10
push dword [ebp - 0x40]
cmovae eax, dword [ebp - 0x50]
push eax
call fcn.10027280
lea ecx, [edi + 0x9b4]
mov byte [edi + 0x9ad], 1
lea eax, [ebp - 0x38]
cmp ecx, eax
je 0x10058c5b
cmp dword [ebp - 0x24], 0x10
push dword [ebp - 0x28]
cmovae eax, dword [ebp - 0x38]
push eax
call fcn.10027280
xor eax, eax
mov ecx, 0xf
cmp byte [edi + 0x9ad], al
cmovne eax, ecx
mov ecx, dword [ebp - 0x7c]
mov dword [edi + 0x9e8], eax
add eax, 0x14
mov dword [edi + 0x954], eax
mov dword [edi + 0x958], eax
mov eax, dword [ebp - 0x80]
mov dword [ebp - 0x1c], ecx
cmp eax, ecx
je 0x10058cd6
lea ecx, [edi + 0x9cc]
mov esi, eax
nop word [eax + eax]
mov eax, dword [edi + 0x9d0]
push esi
cmp eax, dword [edi + 0x9d4]
je 0x10058cbf
mov ecx, eax
call fcn.10026fd0
add dword [edi + 0x9d0], 0x18
jmp 0x10058cc5
push eax
call fcn.10044950
add esi, 0x18
lea ecx, [edi + 0x9cc]
cmp esi, dword [ebp - 0x1c]
jne 0x10058ca0
lea esi, [edi + 0x18]
mov byte [ebp - 4], 0x2e
mov ecx, dword [ebp - 0x24]
cmp ecx, 0x10
jb 0x10058d0a
mov edx, dword [ebp - 0x38]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x10058d00
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x10058d34
push ecx
push edx
call fcn.1009cb41
add esp, 8
mov byte [ebp - 4], 0x2d
mov ecx, dword [ebp - 0x3c]
cmp ecx, 0x10
jb 0x10058d44
mov edx, dword [ebp - 0x50]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x10058d3a
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
jbe 0x10058d3a
call dword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
push ecx
push edx
call fcn.1009cb41
add esp, 8
lea ecx, [ebp - 0x80]
call fcn.10044200
push fcn.10021790
push 2
push 0x18
lea eax, [ebp - 0x110]
mov dword [ebp - 4], 0xffffffff
push eax
call fcn.1009c712
mov dword [edi + 0x9a8], 0x1008f190
lea ecx, [edi + 0x944]
mov dword [edi + 0x95c], 0
mov dword [edi + 0x948], 0x14
mov dword [edi + 0x950], 0xaf
mov eax, dword [edi + 0x2c]
mov dword [edi + 0x960], eax
mov eax, dword [esi + 4]
mov dword [ebp - 0x20], ecx
cmp eax, dword [esi + 8]
je 0x10058db2
mov dword [eax], ecx
add dword [esi + 4], 4
jmp 0x10058dbe
lea ecx, [ebp - 0x20]
push ecx
push eax
mov ecx, esi
call fcn.10022760
push 0xa
xorps xmm0, xmm0
mov dword [ebp - 0x40], 0
push str.nightcolor
lea ecx, [ebp - 0x50]
mov dword [ebp - 0x3c], 0
movups xmmword [ebp - 0x50], xmm0
call fcn.10022110
mov dword [ebp - 4], 0x31
lea ecx, [ebp - 0x38]
push 0xb
xorps xmm0, xmm0
mov dword [ebp - 0x28], 0
push str.world_color
movups xmmword [ebp - 0x38], xmm0
mov dword [ebp - 0x24], 0
call fcn.10022110
lea ecx, [edi + 0xa5c]
mov byte [ebp - 4], 0x32
lea eax, [ebp - 0x38]
mov dword [ebp - 0x1c], 0xff2e292b
cmp ecx, eax
je 0x10058e36
cmp dword [ebp - 0x24], 0x10
push dword [ebp - 0x28]
cmovae eax, dword [ebp - 0x38]
push eax
call fcn.10027280
lea ecx, [edi + 0xa24]
lea eax, [ebp - 0x50]
cmp ecx, eax
je 0x10058e54
cmp dword [ebp - 0x3c], 0x10
push dword [ebp - 0x40]
cmovae eax, dword [ebp - 0x50]
push eax
call fcn.10027280
mov eax, dword [ebp - 0x1c]
mov byte [ebp - 4], 0x31
mov ecx, dword [ebp - 0x24]
mov dword [edi + 0xa74], eax
mov dword [edi + 0xa8c], 0
cmp ecx, 0x10
jb 0x10058e9f
mov edx, dword [ebp - 0x38]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x10058e95
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x10059065
push ecx
push edx
call fcn.1009cb41
add esp, 8
mov dword [ebp - 4], 0xffffffff
mov ecx, dword [ebp - 0x3c]
cmp ecx, 0x10
jb 0x10058eda
mov edx, dword [ebp - 0x50]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x10058ed0
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x10059065
push ecx
push edx
call fcn.1009cb41
add esp, 8
lea ecx, [edi + 0xa44]
mov dword [edi + 0xa50], 0x1008f190
mov eax, dword [ecx + 4]
mov dword [ebp - 0x20], 0x10024840
cmp eax, dword [ecx + 8]
je 0x10058f05
mov dword [eax], 0x10024840
add dword [ecx + 4], 4
jmp 0x10058f0f
lea edx, [ebp - 0x20]
push edx
push eax
call fcn.10022760
mov dword [edi + 0xa04], 0
lea ecx, [edi + 0x9ec]
mov dword [edi + 0x9f0], 0x14
mov dword [edi + 0x9f8], 0xaf
mov eax, dword [edi + 0x2c]
mov dword [edi + 0xa08], eax
mov eax, dword [esi + 4]
mov dword [ebp - 0x20], ecx
cmp eax, dword [esi + 8]
je 0x10058f4f
mov dword [eax], ecx
add dword [esi + 4], 4
jmp 0x10058f5b
lea ecx, [ebp - 0x20]
push ecx
push eax
mov ecx, esi
call fcn.10022760
push 0xa
xorps xmm0, xmm0
mov dword [ebp - 0x40], 0
push str.propscolor
lea ecx, [ebp - 0x50]
mov dword [ebp - 0x3c], 0
movups xmmword [ebp - 0x50], xmm0
call fcn.10022110
mov dword [ebp - 4], 0x33
lea ecx, [ebp - 0x38]
push 0xb
xorps xmm0, xmm0
mov dword [ebp - 0x28], 0
push str.props_color
movups xmmword [ebp - 0x38], xmm0
mov dword [ebp - 0x24], 0
call fcn.10022110
lea ecx, [edi + 0xb18]
mov byte [ebp - 4], 0x34
lea eax, [ebp - 0x38]
mov dword [ebp - 0x1c], 0xff808080
cmp ecx, eax
je 0x10058fd3
cmp dword [ebp - 0x24], 0x10
push dword [ebp - 0x28]
cmovae eax, dword [ebp - 0x38]
push eax
call fcn.10027280
lea ecx, [edi + 0xae0]
lea eax, [ebp - 0x50]
cmp ecx, eax
je 0x10058ff1
cmp dword [ebp - 0x3c], 0x10
push dword [ebp - 0x40]
cmovae eax, dword [ebp - 0x50]
push eax
call fcn.10027280
mov eax, dword [ebp - 0x1c]
mov byte [ebp - 4], 0x33
mov ecx, dword [ebp - 0x24]
mov dword [edi + 0xb30], eax
mov dword [edi + 0xb48], 0
cmp ecx, 0x10
jb 0x10059038
mov edx, dword [ebp - 0x38]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x1005902e
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x10059065
push ecx
push edx
call fcn.1009cb41
add esp, 8
mov dword [ebp - 4], 0xffffffff
mov ecx, dword [ebp - 0x3c]
cmp ecx, 0x10
jb 0x10059075
mov edx, dword [ebp - 0x50]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x1005906b
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
jbe 0x1005906b
call dword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
push ecx
push edx
call fcn.1009cb41
add esp, 8
mov dword [edi + 0xb0c], fcn.1008f190
lea ecx, [edi + 0xaa8]
mov dword [edi + 0xac0], 0
mov dword [edi + 0xaac], 0x14
mov dword [edi + 0xab4], 0xaf
mov eax, dword [edi + 0x2c]
mov dword [edi + 0xac4], eax
mov eax, dword [esi + 4]
mov dword [ebp - 0x20], ecx
cmp eax, dword [esi + 8]
je 0x100590bf
mov dword [eax], ecx
add dword [esi + 4], 4
jmp 0x100590cb
lea ecx, [ebp - 0x20]
push ecx
push eax
mov ecx, esi
call fcn.10022760
push 0x14
xorps xmm0, xmm0
mov dword [ebp - 0x1f0], 0
push str.remove_visual_recoil
lea ecx, [ebp - 0x200]
mov dword [ebp - 0x1ec], 0
movups xmmword [ebp - 0x200], xmm0
call fcn.10022110
mov dword [ebp - 4], 0x35
lea ecx, [ebp - 0x1e8]
push 0x13
xorps xmm0, xmm0
mov dword [ebp - 0x1d8], 0
push str.remove_smoke_effect
movups xmmword [ebp - 0x1e8], xmm0
mov dword [ebp - 0x1d4], 0
call fcn.10022110
mov byte [ebp - 4], 0x36
lea ecx, [ebp - 0x1d0]
push 0x11
xorps xmm0, xmm0
mov dword [ebp - 0x1c0], 0
push str.remove_fog_effect
movups xmmword [ebp - 0x1d0], xmm0
mov dword [ebp - 0x1bc], 0
call fcn.10022110
mov byte [ebp - 4], 0x37
lea ecx, [ebp - 0x1b8]
push 0x17
xorps xmm0, xmm0
mov dword [ebp - 0x1a8], 0
push str.remove_flashbang_effect
movups xmmword [ebp - 0x1b8], xmm0
mov dword [ebp - 0x1a4], 0
call fcn.10022110
mov byte [ebp - 4], 0x38
lea ecx, [ebp - 0x1a0]
push 0x14
xorps xmm0, xmm0
mov dword [ebp - 0x190], 0
push str.remove_scope_overlay
movups xmmword [ebp - 0x1a0], xmm0
mov dword [ebp - 0x18c], 0
call fcn.10022110
mov byte [ebp - 4], 0x39
lea ecx, [ebp - 0x188]
push 0x16
xorps xmm0, xmm0
mov dword [ebp - 0x178], 0
push str.remove_teammate_render
movups xmmword [ebp - 0x188], xmm0
mov dword [ebp - 0x174], 0
call fcn.10022110
mov byte [ebp - 4], 0x3a
lea ecx, [ebp - 0x170]
push 0xe
xorps xmm0, xmm0
mov dword [ebp - 0x160], 0
push str.remove_sleeves
movups xmmword [ebp - 0x170], xmm0
mov dword [ebp - 0x15c], 0
call fcn.10022110
push str.remove_feet_shadow
lea ecx, [ebp - 0x158]
mov byte [ebp - 4], 0x3b
call fcn.100217e0
push str.remove_shadows
lea ecx, [ebp - 0x140]
mov byte [ebp - 4], 0x3c
call fcn.100217e0
mov byte [ebp - 4], 0x3d
push str.disable_post_processing
lea ecx, [ebp - 0x128]
call fcn.100217e0
lea ecx, [ebp - 0x200]
mov dword [ebp - 4], 0x3e
push ecx
lea eax, [ebp - 0x110]
push eax
push ecx
lea ecx, [ebp - 0x64]
call fcn.10070f60
push str.removals
lea ecx, [ebp - 0x50]
mov byte [ebp - 4], 0x3f
call fcn.100217e0
push str.removals
lea ecx, [ebp - 0x38]
mov byte [ebp - 4], 0x40
call fcn.100217e0
mov dword [ebp - 0x80], 0
mov dword [ebp - 0x7c], 0
mov dword [ebp - 0x78], 0
lea eax, [ebp - 0x50]
mov byte [ebp - 4], 0x42
push eax
lea ecx, [edi + 0xc24]
call fcn.1003e270
lea eax, [ebp - 0x38]
mov byte [edi + 0xc55], 1
push eax
lea ecx, [edi + 0xc5c]
call fcn.1003e270
xor eax, eax
mov ecx, 0xf
cmp byte [edi + 0xc55], al
cmovne eax, ecx
mov ecx, dword [ebp - 0x60]
mov dword [edi + 0xc90], eax
add eax, 0x14
mov dword [edi + 0xbfc], eax
mov dword [edi + 0xc00], eax
mov eax, dword [ebp - 0x64]
mov dword [ebp - 0x20], eax
cmp eax, ecx
je 0x10059348
mov esi, dword [ebp - 0x20]
lea eax, [edi + 0xc74]
mov dword [ebp - 0x18], eax
mov edi, ecx
push esi
mov ecx, eax
call fcn.10043f50
mov eax, dword [ebp - 0x18]
add esi, 0x18
cmp esi, edi
jne 0x10059330
mov edi, dword [ebp - 0x54]
lea esi, [edi + 0x18]
lea ecx, [ebp - 0x80]
call fcn.10020cb0
lea ecx, [ebp - 0x38]
call fcn.10021790
lea ecx, [ebp - 0x50]
call fcn.10021790
lea ecx, [ebp - 0x64]
call fcn.10044200
push fcn.10021790
push 0xa
push 0x18
lea eax, [ebp - 0x200]
mov dword [ebp - 4], 0xffffffff
push eax
call fcn.1009c712
mov dword [edi + 0xc04], 1
lea eax, [edi + 0xbec]
mov dword [edi + 0xbf0], 0xff
mov ecx, esi
mov dword [ebp - 0x18], eax
mov dword [edi + 0xbf8], 0xaf
mov eax, dword [edi + 0x2c]
mov dword [edi + 0xc08], eax
lea eax, [ebp - 0x18]
push eax
call fcn.10070f30
push str.spectators
lea ecx, [ebp - 0x50]
lea esi, [edi + 0xc94]
call fcn.100217e0
push str.show_spectator_list
lea ecx, [ebp - 0x38]
mov dword [ebp - 4], 0x43
call fcn.100217e0
lea eax, [ebp - 0x50]
mov byte [ebp - 4], 0x44
push eax
lea ecx, [edi + 0xccc]
call fcn.1003e270
lea eax, [ebp - 0x38]
mov byte [edi + 0xcfd], 1
push eax
lea ecx, [edi + 0xd04]
call fcn.1003e270
lea ecx, [ebp - 0x38]
mov byte [edi + 0xd00], 0
call fcn.10021790
lea ecx, [ebp - 0x50]
mov dword [ebp - 4], 0xffffffff
call fcn.10021790
mov dword [esi + 0x18], 1
lea ecx, [edi + 0x18]
mov dword [esi + 4], 0xff
mov dword [esi + 0xc], 0xaf
mov eax, dword [edi + 0x2c]
mov dword [esi + 0x1c], eax
lea eax, [ebp - 0x18]
push eax
mov dword [ebp - 0x18], esi
call fcn.10070f30
push str.force_xhair
lea ecx, [ebp - 0x50]
lea esi, [edi + 0xd1c]
call fcn.100217e0
push str.force_crosshair
lea ecx, [ebp - 0x38]
mov dword [ebp - 4], 0x45
call fcn.100217e0
lea eax, [ebp - 0x50]
mov byte [ebp - 4], 0x46
push eax
lea ecx, [edi + 0xd54]
call fcn.1003e270
lea eax, [ebp - 0x38]
mov byte [edi + 0xd85], 1
push eax
lea ecx, [edi + 0xd8c]
call fcn.1003e270
lea ecx, [ebp - 0x38]
mov byte [edi + 0xd88], 0
call fcn.10021790
lea ecx, [ebp - 0x50]
mov dword [ebp - 4], 0xffffffff
call fcn.10021790
mov dword [esi + 0x18], 1
lea ecx, [edi + 0x18]
mov dword [esi + 4], 0xff
mov dword [esi + 0xc], 0xaf
mov eax, dword [edi + 0x2c]
mov dword [esi + 0x1c], eax
lea eax, [ebp - 0x18]
push eax
mov dword [ebp - 0x18], esi
call fcn.10070f30
push str.pen_xhair
lea ecx, [ebp - 0x50]
lea esi, [edi + 0xda4]
call fcn.100217e0
push str.penetration_crosshair
lea ecx, [ebp - 0x38]
mov dword [ebp - 4], 0x47
call fcn.100217e0
lea eax, [ebp - 0x50]
mov byte [ebp - 4], 0x48
push eax
lea ecx, [edi + 0xddc]
call fcn.1003e270
lea eax, [ebp - 0x38]
mov byte [edi + 0xe0d], 1
push eax
lea ecx, [edi + 0xe14]
call fcn.1003e270
lea ecx, [ebp - 0x38]
mov byte [edi + 0xe10], 0
call fcn.10021790
lea ecx, [ebp - 0x50]
mov dword [ebp - 4], 0xffffffff
call fcn.10021790
mov dword [esi + 0x18], 1
mov dword [esi + 4], 0xff
mov dword [esi + 0xc], 0xaf
mov eax, dword [edi + 0x2c]
mov dword [esi + 0x1c], eax
lea eax, [ebp - 0x18]
mov dword [ebp - 0x18], esi
lea esi, [edi + 0x18]
push eax
mov ecx, esi
call fcn.10070f30
push str.rectangle_filled
lea ecx, [ebp - 0xc8]
call fcn.100217e0
push str.rectangle_outline
lea ecx, [ebp - 0xb0]
mov dword [ebp - 4], 0x49
call fcn.100217e0
push str.gamesense_style
lea ecx, [ebp - 0x98]
mov byte [ebp - 4], 0x4a
call fcn.100217e0
lea ecx, [ebp - 0xc8]
mov dword [ebp - 4], 0x4b
push ecx
lea eax, [ebp - 0x80]
push eax
push ecx
lea ecx, [ebp - 0x64]
call fcn.10070f60
push str.pen_crosshair_style
lea ecx, [ebp - 0x38]
mov byte [ebp - 4], 0x4c
call fcn.100217e0
push 0x100a9d80
lea ecx, [ebp - 0x50]
mov byte [ebp - 4], 0x4d
call fcn.100217e0
lea eax, [ebp - 0x38]
mov byte [ebp - 4], 0x4e
push eax
lea ecx, [edi + 0xe64]
call fcn.1003e270
mov edx, dword [ebp - 0x60]
lea ecx, [edi + 0xeb4]
mov eax, dword [ebp - 0x64]
mov byte [edi + 0xe95], 0
mov dword [edi + 0xec8], 0
mov dword [edi + 0xe3c], 0x14
mov dword [edi + 0xe40], 0x14
mov dword [ebp - 0x20], edx
mov dword [ebp - 0x1c], ecx
cmp eax, edx
je 0x1005966c
mov esi, eax
mov edi, ecx
push esi
mov ecx, edi
call fcn.10043f50
add esi, 0x18
cmp esi, dword [ebp - 0x20]
jne 0x10059653
mov edi, dword [ebp - 0x54]
mov ecx, dword [ebp - 0x1c]
lea esi, [edi + 0x18]
call fcn.10026e40
test eax, eax
je 0x1005967f
mov dword [edi + 0xec4], 0
lea ecx, [ebp - 0x50]
call fcn.10021790
lea ecx, [ebp - 0x38]
call fcn.10021790
lea ecx, [ebp - 0x64]
call fcn.10044200
push fcn.10021790
push 3
push 0x18
lea eax, [ebp - 0xc8]
mov dword [ebp - 4], 0xffffffff
push eax
call fcn.1009c712
lea eax, [ebp - 0x18]
mov dword [ebp - 0x18], 0x100247b0
lea ecx, [edi + 0xe84]
push eax
call fcn.10070f30
mov dword [edi + 0xe44], 1
lea eax, [edi + 0xe2c]
mov dword [edi + 0xe30], 0xff
mov ecx, esi
mov dword [ebp - 0x18], eax
mov dword [edi + 0xe38], 0xaf
mov eax, dword [edi + 0x2c]
mov dword [edi + 0xe48], eax
lea eax, [ebp - 0x18]
push eax
call fcn.10070f30
mov esi, dword [0x100aa75c]
lea ecx, [ebp - 0x50]
push str.pen_can_hit
add edi, 0xf88
call fcn.100217e0
push str.penetration_crosshair_can_hit
lea ecx, [ebp - 0x38]
mov dword [ebp - 4], 0x4f
call fcn.100217e0
mov ecx, dword [ebp - 0x54]
lea eax, [ebp - 0x38]
push eax
add ecx, 0xff8
mov byte [ebp - 4], 0x50
call fcn.1003e270
mov ecx, dword [ebp - 0x54]
lea eax, [ebp - 0x50]
push eax
lea ecx, [ecx + 0xfc0]
call fcn.1003e270
mov eax, dword [ebp - 0x54]
lea ecx, [ebp - 0x38]
mov dword [eax + 0x1010], esi
mov esi, eax
mov dword [esi + 0x1028], 0
call fcn.10021790
lea ecx, [ebp - 0x50]
mov dword [ebp - 4], 0xffffffff
call fcn.10021790
lea eax, [ebp - 0x18]
mov dword [ebp - 0x18], 0x100247b0
lea ecx, [edi + 0x58]
push eax
call fcn.10070f30
mov dword [esi + 0xfa0], 1
lea ecx, [esi + 0x18]
mov dword [esi + 0xf8c], 0xff
mov dword [esi + 0xf94], 0xaf
mov eax, dword [esi + 0x2c]
mov dword [esi + 0xfa4], eax
lea eax, [ebp - 0x18]
push eax
mov dword [ebp - 0x18], edi
call fcn.10070f30
lea edi, [esi + 0xecc]
mov esi, dword [0x100aa76c]
push str.pen_cant_hit
lea ecx, [ebp - 0x50]
call fcn.100217e0
push str.penetration_crosshair_cant_hit
lea ecx, [ebp - 0x38]
mov dword [ebp - 4], 0x51
call fcn.100217e0
mov ecx, dword [ebp - 0x54]
lea eax, [ebp - 0x38]
push eax
mov byte [ebp - 4], 0x52
lea ecx, [ecx + 0xf3c]
call fcn.1003e270
mov ecx, dword [ebp - 0x54]
lea eax, [ebp - 0x50]
push eax
lea ecx, [ecx + 0xf04]
call fcn.1003e270
mov eax, dword [ebp - 0x54]
lea ecx, [ebp - 0x38]
mov dword [eax + 0xf54], esi
mov dword [eax + 0xf6c], 0
call fcn.10021790
lea ecx, [ebp - 0x50]
mov dword [ebp - 4], 0xffffffff
call fcn.10021790
lea eax, [ebp - 0x18]
mov dword [ebp - 0x18], 0x100247b0
lea ecx, [edi + 0x58]
push eax
call fcn.10070f30
mov dword [ebp - 0x18], edi
mov edi, dword [ebp - 0x54]
mov dword [edi + 0xee4], 1
lea ecx, [edi + 0x18]
mov dword [edi + 0xed0], 0xff
mov dword [edi + 0xed8], 0xaf
mov eax, dword [edi + 0x2c]
mov dword [edi + 0xee8], eax
lea eax, [ebp - 0x18]
push eax
call fcn.10070f30
push str.tracers
lea ecx, [ebp - 0x50]
lea esi, [edi + 0x1044]
call fcn.100217e0
push str.grenade_trajectory
lea ecx, [ebp - 0x38]
mov dword [ebp - 4], 0x53
call fcn.100217e0
lea eax, [ebp - 0x50]
mov byte [ebp - 4], 0x54
push eax
lea ecx, [edi + 0x107c]
call fcn.1003e270
lea eax, [ebp - 0x38]
mov byte [edi + 0x10ad], 1
push eax
lea ecx, [edi + 0x10b4]
call fcn.1003e270
lea ecx, [ebp - 0x38]
mov byte [edi + 0x10b0], 0
call fcn.10021790
lea ecx, [ebp - 0x50]
mov dword [ebp - 4], 0xffffffff
call fcn.10021790
mov dword [esi + 0x18], 1
lea ecx, [edi + 0x18]
mov dword [esi + 4], 0xff
mov dword [esi + 0xc], 0xaf
mov eax, dword [edi + 0x2c]
mov dword [esi + 0x1c], eax
lea eax, [ebp - 0x18]
push eax
mov dword [ebp - 0x18], esi
call fcn.10070f30
push 0x100ae954
lea ecx, [ebp - 0x50]
lea esi, [edi + 0x10cc]
call fcn.100217e0
push str.grenade_range
lea ecx, [ebp - 0x38]
mov dword [ebp - 4], 0x55
call fcn.100217e0
lea eax, [ebp - 0x50]
mov byte [ebp - 4], 0x56
push eax
lea ecx, [edi + 0x1104]
call fcn.1003e270
lea eax, [ebp - 0x38]
mov byte [edi + 0x1135], 1
push eax
lea ecx, [edi + 0x113c]
call fcn.1003e270
lea ecx, [ebp - 0x38]
mov byte [edi + 0x1138], 0
call fcn.10021790
lea ecx, [ebp - 0x50]
mov dword [ebp - 4], 0xffffffff
call fcn.10021790
lea eax, [ebp - 0x18]
mov dword [ebp - 0x18], 0x10024780
lea ecx, [esi + 0x58]
push eax
call fcn.10070f30
mov dword [edi + 0x10e4], 1
lea ecx, [edi + 0x18]
mov dword [edi + 0x10d0], 0xff
mov dword [edi + 0x10d8], 0xaf
mov eax, dword [edi + 0x2c]
mov dword [edi + 0x10e8], eax
lea eax, [ebp - 0x18]
push eax
mov dword [ebp - 0x18], esi
call fcn.10070f30
mov esi, dword [0x100aa754]
lea ecx, [ebp - 0x50]
push 0x100ae91c
add edi, 0x1210
call fcn.100217e0
push str.grenade_trajectory_color
lea ecx, [ebp - 0x38]
mov dword [ebp - 4], 0x57
call fcn.100217e0
mov ecx, dword [ebp - 0x54]
lea eax, [ebp - 0x38]
push eax
mov byte [ebp - 4], 0x58
lea ecx, [ecx + 0x1280]
call fcn.1003e270
mov ecx, dword [ebp - 0x54]
lea eax, [ebp - 0x50]
push eax
lea ecx, [ecx + 0x1248]
call fcn.1003e270
mov eax, dword [ebp - 0x54]
lea ecx, [ebp - 0x38]
mov dword [eax + 0x1298], esi
mov dword [eax + 0x12b0], 0
call fcn.10021790
lea ecx, [ebp - 0x50]
mov dword [ebp - 4], 0xffffffff
call fcn.10021790
lea eax, [ebp - 0x18]
mov dword [ebp - 0x18], 0x10024780
lea ecx, [edi + 0x58]
push eax
call fcn.10070f30
mov dword [ebp - 0x18], edi
mov edi, dword [ebp - 0x54]
mov dword [edi + 0x1228], 1
lea ecx, [edi + 0x18]
mov dword [edi + 0x1214], 0xff
mov dword [edi + 0x121c], 0xaf
mov eax, dword [edi + 0x2c]
mov dword [edi + 0x122c], eax
lea eax, [ebp - 0x18]
push eax
call fcn.10070f30
push 0x100ae99c
lea ecx, [ebp - 0x50]
lea esi, [edi + 0x1154]
call fcn.100217e0
push str.grenade_range_color
lea ecx, [ebp - 0x38]
mov dword [ebp - 4], 0x59
call fcn.100217e0
lea eax, [ebp - 0x38]
mov byte [ebp - 4], 0x5a
push eax
lea ecx, [edi + 0x11c4]
mov dword [ebp - 0x1c], 0x238c5023
call fcn.1003e270
lea eax, [ebp - 0x50]
push eax
lea ecx, [edi + 0x118c]
call fcn.1003e270
mov eax, dword [ebp - 0x1c]
lea ecx, [ebp - 0x38]
mov dword [edi + 0x11dc], eax
mov dword [edi + 0x11f4], 0
call fcn.10021790
lea ecx, [ebp - 0x50]
mov dword [ebp - 4], 0xffffffff
call fcn.10021790
lea eax, [ebp - 0x18]
mov dword [ebp - 0x18], 0x10024790
lea ecx, [esi + 0x58]
push eax
call fcn.10070f30
mov dword [edi + 0x116c], 1
lea ecx, [edi + 0x18]
mov dword [edi + 0x1158], 0xff
mov dword [edi + 0x1160], 0xaf
mov eax, dword [edi + 0x2c]
mov dword [edi + 0x1170], eax
lea eax, [ebp - 0x18]
push eax
mov dword [ebp - 0x18], esi
call fcn.10070f30
push str.impact_beams
lea ecx, [ebp - 0x50]
lea esi, [edi + 0x12cc]
call fcn.100217e0
push str.enable_bullet_tracers
lea ecx, [ebp - 0x38]
mov dword [ebp - 4], 0x5b
call fcn.100217e0
lea eax, [ebp - 0x50]
mov byte [ebp - 4], 0x5c
push eax
lea ecx, [edi + 0x1304]
call fcn.1003e270
lea eax, [ebp - 0x38]
mov byte [edi + 0x1335], 1
push eax
lea ecx, [edi + 0x133c]
call fcn.1003e270
lea ecx, [ebp - 0x38]
mov byte [edi + 0x1338], 0
call fcn.10021790
lea ecx, [ebp - 0x50]
mov dword [ebp - 4], 0xffffffff
call fcn.10021790
mov dword [esi + 0x18], 1
lea ecx, [edi + 0x18]
mov dword [esi + 4], 0xff
mov dword [esi + 0xc], 0xaf
mov eax, dword [edi + 0x2c]
mov dword [esi + 0x1c], eax
lea eax, [ebp - 0x18]
push eax
mov dword [ebp - 0x18], esi
call fcn.10070f30
add edi, 0x1354
push str.impact_beams2
lea ecx, [ebp - 0x50]
call fcn.100217e0
push str.enable_local
lea ecx, [ebp - 0x38]
mov dword [ebp - 4], 0x5d
call fcn.100217e0
mov esi, dword [ebp - 0x54]
lea eax, [ebp - 0x50]
push eax
mov byte [ebp - 4], 0x5e
lea ecx, [esi + 0x138c]
call fcn.1003e270
lea eax, [ebp - 0x38]
mov byte [esi + 0x13bd], 1
push eax
lea ecx, [esi + 0x13c4]
call fcn.1003e270
lea ecx, [ebp - 0x38]
mov byte [esi + 0x13c0], 0
call fcn.10021790
lea ecx, [ebp - 0x50]
mov dword [ebp - 4], 0xffffffff
call fcn.10021790
lea eax, [ebp - 0x18]
mov dword [ebp - 0x18], 0x10024820
push eax
lea ecx, [edi + 0x58]
call fcn.10070f30
lea eax, [ebp - 0x18]
mov dword [ebp - 0x18], 0x100247d0
push eax
lea ecx, [edi + 0x58]
call fcn.10070f30
mov dword [esi + 0x136c], 1
lea ecx, [esi + 0x18]
mov dword [esi + 0x1358], 0xff
mov dword [esi + 0x1360], 0xaf
mov eax, dword [esi + 0x2c]
mov dword [esi + 0x1370], eax
lea eax, [ebp - 0x18]
push eax
mov dword [ebp - 0x18], edi
call fcn.10070f30
push str.impact_beams3
lea ecx, [ebp - 0x50]
lea edi, [esi + 0x1750]
call fcn.100217e0
push str.enable_enemy
lea ecx, [ebp - 0x38]
mov dword [ebp - 4], 0x5f
call fcn.100217e0
lea eax, [ebp - 0x50]
mov byte [ebp - 4], 0x60
push eax
lea ecx, [esi + 0x1788]
call fcn.1003e270
lea eax, [ebp - 0x38]
mov byte [esi + 0x17b9], 1
push eax
lea ecx, [esi + 0x17c0]
call fcn.1003e270
lea ecx, [ebp - 0x38]
mov byte [esi + 0x17bc], 0
call fcn.10021790
lea ecx, [ebp - 0x50]
mov dword [ebp - 4], 0xffffffff
call fcn.10021790
lea eax, [ebp - 0x18]
mov dword [ebp - 0x18], 0x10024820
push eax
lea ecx, [edi + 0x58]
call fcn.10070f30
lea eax, [ebp - 0x18]
mov dword [ebp - 0x18], 0x100247a0
push eax
lea ecx, [edi + 0x58]
call fcn.10070f30
mov dword [ebp - 0x18], edi
mov edi, esi
mov dword [edi + 0x1768], 1
lea esi, [edi + 0x18]
mov dword [edi + 0x1754], 0xff
mov ecx, esi
mov dword [edi + 0x175c], 0xaf
mov eax, dword [edi + 0x2c]
mov dword [edi + 0x176c], eax
lea eax, [ebp - 0x18]
push eax
call fcn.10070f30
push str.local
lea ecx, [ebp - 0x110]
call fcn.100217e0
push str.enemy
lea ecx, [ebp - 0xf8]
mov dword [ebp - 4], 0x61
call fcn.100217e0
lea ecx, [ebp - 0x110]
mov dword [ebp - 4], 0x62
push ecx
lea eax, [ebp - 0xe0]
push eax
push ecx
lea ecx, [ebp - 0x64]
call fcn.10070f60
push str.local_or_enemy_impacts
lea ecx, [ebp - 0x38]
mov byte [ebp - 4], 0x63
call fcn.100217e0
push str.bullet_tracers
lea ecx, [ebp - 0x50]
mov byte [ebp - 4], 0x64
call fcn.100217e0
lea eax, [ebp - 0x38]
mov byte [ebp - 4], 0x65
push eax
lea ecx, [edi + 0x1414]
call fcn.1003e270
mov edx, dword [ebp - 0x60]
lea ecx, [edi + 0x1464]
mov eax, dword [ebp - 0x64]
mov byte [edi + 0x1445], 0
mov dword [edi + 0x1478], 0
mov dword [edi + 0x13ec], 0x14
mov dword [edi + 0x13f0], 0x14
mov dword [ebp - 0x20], edx
mov dword [ebp - 0x1c], ecx
cmp eax, edx
je 0x10059e7b
mov esi, eax
mov edi, ecx
push esi
mov ecx, edi
call fcn.10043f50
add esi, 0x18
cmp esi, dword [ebp - 0x20]
jne 0x10059e62
mov edi, dword [ebp - 0x54]
mov ecx, dword [ebp - 0x1c]
lea esi, [edi + 0x18]
call fcn.10026e40
test eax, eax
je 0x10059e8e
mov dword [edi + 0x1474], 0
lea ecx, [ebp - 0x50]
call fcn.10021790
lea ecx, [ebp - 0x38]
call fcn.10021790
lea ecx, [ebp - 0x64]
call fcn.10044200
push fcn.10021790
push 2
push 0x18
lea eax, [ebp - 0x110]
mov dword [ebp - 4], 0xffffffff
push eax
call fcn.1009c712
lea eax, [ebp - 0x18]
mov dword [ebp - 0x18], 0x10024820
lea ecx, [edi + 0x1434]
push eax
call fcn.10070f30
mov dword [edi + 0x13f4], 1
lea eax, [edi + 0x13dc]
mov dword [edi + 0x13e0], 0xff
mov ecx, esi
mov dword [ebp - 0x18], eax
mov dword [edi + 0x13e8], 0xaf
mov eax, dword [edi + 0x2c]
mov dword [edi + 0x13f8], eax
lea eax, [ebp - 0x18]
push eax
call fcn.10070f30
push str.kaaba
lea ecx, [ebp - 0xb0]
call fcn.100217e0
push str.laser
lea ecx, [ebp - 0x98]
mov dword [ebp - 4], 0x66
call fcn.100217e0
lea ecx, [ebp - 0xb0]
mov dword [ebp - 4], 0x67
push ecx
lea eax, [ebp - 0x80]
push eax
push ecx
lea ecx, [ebp - 0x64]
call fcn.10070f60
push str.local_material_type
lea ecx, [ebp - 0x38]
mov byte [ebp - 4], 0x68
call fcn.100217e0
push 0x100a9d80
lea ecx, [ebp - 0x50]
mov byte [ebp - 4], 0x69
call fcn.100217e0
lea eax, [ebp - 0x38]
mov byte [ebp - 4], 0x6a
push eax
lea ecx, [edi + 0x14b4]
call fcn.1003e270
mov eax, dword [ebp - 0x60]
lea ecx, [edi + 0x1504]
mov esi, dword [ebp - 0x64]
mov byte [edi + 0x14e5], 0
mov dword [edi + 0x1518], 0
mov dword [edi + 0x148c], 0x14
mov dword [edi + 0x1490], 0x14
mov dword [ebp - 0x18], eax
mov dword [ebp - 0x1c], ecx
cmp esi, eax
je 0x10059fdd
mov edi, ecx
push esi
mov ecx, edi
call fcn.10043f50
add esi, 0x18
cmp esi, dword [ebp - 0x18]
jne 0x10059fc7
mov edi, dword [ebp - 0x54]
mov ecx, dword [ebp - 0x1c]
call fcn.10026e40
test eax, eax
je 0x10059ff0
mov dword [edi + 0x1514], 0
lea ecx, [ebp - 0x50]
call fcn.10021790
lea ecx, [ebp - 0x38]
call fcn.10021790
lea ecx, [ebp - 0x64]
call fcn.10044200
push fcn.10021790
push 2
push 0x18
lea eax, [ebp - 0xb0]
mov dword [ebp - 4], 0xffffffff
push eax
call fcn.1009c712
lea eax, [ebp - 0x18]
mov dword [ebp - 0x18], 0x10024800
push eax
lea ecx, [edi + 0x14d4]
call fcn.10070f30
lea eax, [ebp - 0x18]
mov dword [ebp - 0x18], 0x100247d0
push eax
lea ecx, [edi + 0x14d4]
call fcn.10070f30
mov dword [edi + 0x1494], 1
lea eax, [edi + 0x147c]
mov dword [edi + 0x1480], 0xff
lea ecx, [edi + 0x18]
mov dword [ebp - 0x18], eax
mov dword [edi + 0x1488], 0xaf
mov eax, dword [edi + 0x2c]
mov dword [edi + 0x1498], eax
lea eax, [ebp - 0x18]
push eax
call fcn.10070f30
mov esi, dword [0x100aa754]
lea ecx, [ebp - 0x50]
push str.impact_beams_color
add edi, 0x151c
call fcn.100217e0
push str.bullet_tracers_local_color
lea ecx, [ebp - 0x38]
mov dword [ebp - 4], 0x6b
call fcn.100217e0
mov ecx, dword [ebp - 0x54]
lea eax, [ebp - 0x38]
push eax
mov byte [ebp - 4], 0x6c
lea ecx, [ecx + 0x158c]
call fcn.1003e270
mov ecx, dword [ebp - 0x54]
lea eax, [ebp - 0x50]
push eax
lea ecx, [ecx + 0x1554]
call fcn.1003e270
mov eax, dword [ebp - 0x54]
lea ecx, [ebp - 0x38]
mov dword [eax + 0x15a4], esi
mov dword [eax + 0x15bc], 0
call fcn.10021790
lea ecx, [ebp - 0x50]
mov dword [ebp - 4], 0xffffffff
call fcn.10021790
lea eax, [ebp - 0x18]
mov dword [ebp - 0x18], 0x10024800
push eax
lea ecx, [edi + 0x58]
call fcn.10070f30
lea eax, [ebp - 0x18]
mov dword [ebp - 0x18], 0x100247d0
push eax
lea ecx, [edi + 0x58]
call fcn.10070f30
mov esi, dword [ebp - 0x54]
mov dword [ebp - 0x18], edi
mov dword [esi + 0x1534], 1
mov dword [esi + 0x1520], 0xff
mov dword [esi + 0x1528], 0xaf
mov eax, dword [esi + 0x2c]
mov dword [esi + 0x1538], eax
lea eax, [ebp - 0x18]
push eax
lea ecx, [esi + 0x18]
call fcn.10070f30
push 0x100ad848
lea ecx, [ebp - 0x70]
lea edi, [esi + 0x15d8]
call fcn.100711b0
push str.impact_beams_time
lea ecx, [ebp - 0x50]
mov dword [ebp - 4], 0x6d
call fcn.100217e0
push str.bullet_tracer_lifetime
lea ecx, [ebp - 0x38]
mov byte [ebp - 4], 0x6e
call fcn.100217e0
lea eax, [ebp - 0x50]
mov byte [ebp - 4], 0x6f
push eax
lea ecx, [esi + 0x1610]
call fcn.1003e270
lea eax, [ebp - 0x38]
mov byte [esi + 0x1641], 1
push eax
lea ecx, [esi + 0x1660]
call fcn.1003e270
xor eax, eax
mov ecx, 0xf
cmp byte [esi + 0x1641], al
cmovne eax, ecx
lea ecx, [esi + 0x1678]
mov dword [esi + 0x1690], eax
add eax, 8
mov dword [esi + 0x15e8], eax
mov dword [esi + 0x15ec], eax
lea eax, [ebp - 0x70]
mov dword [esi + 0x164c], 0x3f800000
mov dword [esi + 0x1650], 0x41200000
mov dword [esi + 0x1648], 0x3f800000
mov dword [esi + 0x165c], 0
push eax
mov dword [esi + 0x1654], 0x3f800000
call fcn.10071180
lea ecx, [ebp - 0x38]
call fcn.10021790
lea ecx, [ebp - 0x50]
call fcn.10021790
lea ecx, [ebp - 0x70]
mov dword [ebp - 4], 0xffffffff
call fcn.100440f0
lea eax, [ebp - 0x18]
mov dword [ebp - 0x18], 0x10024800
push eax
lea ecx, [edi + 0x58]
call fcn.10070f30
lea eax, [ebp - 0x18]
mov dword [ebp - 0x18], 0x100247d0
push eax
lea ecx, [edi + 0x58]
call fcn.10070f30
mov dword [esi + 0x15f0], 1
lea ecx, [esi + 0x18]
mov dword [esi + 0x15dc], 0xff
mov dword [esi + 0x15e4], 0xaf
mov eax, dword [esi + 0x2c]
mov dword [esi + 0x15f4], eax
lea eax, [ebp - 0x18]
push eax
mov dword [ebp - 0x18], edi
call fcn.10070f30
push 0x100ad848
lea ecx, [ebp - 0x70]
lea edi, [esi + 0x1694]
call fcn.100711b0
mov dword [ebp - 4], 0x70
lea ecx, [ebp - 0x50]
push str.impact_beams_speed
call fcn.100217e0
push str.bullet_tracer_speed
lea ecx, [ebp - 0x38]
mov byte [ebp - 4], 0x71
call fcn.100217e0
lea eax, [ebp - 0x50]
mov byte [ebp - 4], 0x72
push eax
lea ecx, [esi + 0x16cc]
call fcn.1003e270
lea eax, [ebp - 0x38]
mov byte [esi + 0x16fd], 1
push eax
lea ecx, [esi + 0x171c]
call fcn.1003e270
xor eax, eax
mov ecx, 0xf
cmp byte [esi + 0x16fd], al
cmovne eax, ecx
lea ecx, [esi + 0x1734]
mov dword [esi + 0x174c], eax
add eax, 8
mov dword [esi + 0x16a4], eax
mov dword [esi + 0x16a8], eax
lea eax, [ebp - 0x70]
mov dword [esi + 0x1708], 0
mov dword [esi + 0x170c], 0x3fc00000
mov dword [esi + 0x1704], 0x3f666666
mov dword [esi + 0x1718], 1
push eax
mov dword [esi + 0x1710], 0x3dcccccd
call fcn.10071180
lea ecx, [ebp - 0x38]
call fcn.10021790
lea ecx, [ebp - 0x50]
call fcn.10021790
lea ecx, [ebp - 0x70]
mov dword [ebp - 4], 0xffffffff
call fcn.100440f0
lea eax, [ebp - 0x18]
mov dword [ebp - 0x18], 0x10024800
push eax
lea ecx, [edi + 0x58]
call fcn.10070f30
lea eax, [ebp - 0x18]
mov dword [ebp - 0x18], 0x100247d0
push eax
lea ecx, [edi + 0x58]
call fcn.10070f30
lea eax, [ebp - 0x18]
mov dword [ebp - 0x18], 0x100247e0
push eax
lea ecx, [edi + 0x58]
call fcn.10070f30
mov dword [ebp - 0x18], edi
mov edi, esi
mov dword [edi + 0x16ac], 1
lea ecx, [edi + 0x18]
mov dword [edi + 0x1698], 0xff
mov dword [edi + 0x16a0], 0xaf
mov eax, dword [edi + 0x2c]
mov dword [edi + 0x16b0], eax
lea eax, [ebp - 0x18]
push eax
call fcn.10070f30
push str.kaaba
lea ecx, [ebp - 0x110]
call fcn.100217e0
push str.laser
lea ecx, [ebp - 0xf8]
mov dword [ebp - 4], 0x73
call fcn.100217e0
lea ecx, [ebp - 0x110]
mov dword [ebp - 4], 0x74
lea eax, [ebp - 0xe0]
push ecx
push eax
push ecx
lea ecx, [ebp - 0x64]
call fcn.10070f60
push str.enemy_material_type
lea ecx, [ebp - 0x38]
mov byte [ebp - 4], 0x75
call fcn.100217e0
push 0x100a9d80
lea ecx, [ebp - 0x50]
mov byte [ebp - 4], 0x76
call fcn.100217e0
lea eax, [ebp - 0x38]
mov byte [ebp - 4], 0x77
push eax
lea ecx, [edi + 0x1810]
call fcn.1003e270
mov eax, dword [ebp - 0x60]
lea ecx, [edi + 0x1860]
mov esi, dword [ebp - 0x64]
mov byte [edi + 0x1841], 0
mov dword [edi + 0x1874], 0
mov dword [edi + 0x17e8], 0x14
mov dword [edi + 0x17ec], 0x14
mov dword [ebp - 0x18], eax
mov dword [ebp - 0x1c], ecx
cmp esi, eax
je 0x1005a4d6
mov edi, ecx
nop word [eax + eax]
push esi
mov ecx, edi
call fcn.10043f50
add esi, 0x18
cmp esi, dword [ebp - 0x18]
jne 0x1005a4c0
mov edi, dword [ebp - 0x54]
mov ecx, dword [ebp - 0x1c]
call fcn.10026e40
test eax, eax
je 0x1005a4e9
mov dword [edi + 0x1870], 0
lea ecx, [ebp - 0x50]
call fcn.10021790
lea ecx, [ebp - 0x38]
call fcn.10021790
lea ecx, [ebp - 0x64]
call fcn.10044200
push fcn.10021790
push 2
push 0x18
lea eax, [ebp - 0x110]
mov dword [ebp - 4], 0xffffffff
push eax
call fcn.1009c712
lea eax, [ebp - 0x18]
mov dword [ebp - 0x18], 0x10024810
push eax
lea ecx, [edi + 0x1830]
call fcn.10070f30
lea eax, [ebp - 0x18]
mov dword [ebp - 0x18], 0x100247a0
push eax
lea ecx, [edi + 0x1830]
call fcn.10070f30
mov dword [edi + 0x17f0], 1
lea eax, [edi + 0x17d8]
mov dword [edi + 0x17dc], 0xff
lea ecx, [edi + 0x18]
mov dword [ebp - 0x18], eax
mov dword [edi + 0x17e4], 0xaf
mov eax, dword [edi + 0x2c]
mov dword [edi + 0x17f4], eax
lea eax, [ebp - 0x18]
push eax
call fcn.10070f30
push str.impact_beams_color2
lea ecx, [ebp - 0x50]
add edi, 0x1918
call fcn.100217e0
push str.bullet_tracers_enemy_color
lea ecx, [ebp - 0x38]
mov dword [ebp - 4], 0x78
call fcn.100217e0
mov esi, dword [ebp - 0x54]
lea eax, [ebp - 0x38]
mov byte [ebp - 4], 0x79
push eax
mov dword [ebp - 0x1c], 0xffff8297
lea ecx, [esi + 0x1988]
call fcn.1003e270
lea eax, [ebp - 0x50]
push eax
lea ecx, [esi + 0x1950]
call fcn.1003e270
mov eax, dword [ebp - 0x1c]
lea ecx, [ebp - 0x38]
mov dword [esi + 0x19a0], eax
mov dword [esi + 0x19b8], 0
call fcn.10021790
lea ecx, [ebp - 0x50]
mov dword [ebp - 4], 0xffffffff
call fcn.10021790
lea eax, [ebp - 0x18]
mov dword [ebp - 0x18], 0x10024810
push eax
lea ecx, [edi + 0x58]
call fcn.10070f30
lea eax, [ebp - 0x18]
mov dword [ebp - 0x18], 0x100247a0
push eax
lea ecx, [edi + 0x58]
call fcn.10070f30
mov dword [esi + 0x1930], 1
mov dword [esi + 0x191c], 0xff
mov dword [esi + 0x1924], 0xaf
mov eax, dword [esi + 0x2c]
mov dword [esi + 0x1934], eax
lea eax, [ebp - 0x18]
mov dword [ebp - 0x18], edi
push eax
lea ecx, [esi + 0x18]
call fcn.10070f30
push 0x100ad848
lea ecx, [ebp - 0x70]
lea edi, [esi + 0x19d4]
call fcn.100711b0
push str.impact_beams_time
lea ecx, [ebp - 0x50]
mov dword [ebp - 4], 0x7a
call fcn.100217e0
push str.bullet_tracer_lifetime
lea ecx, [ebp - 0x38]
mov byte [ebp - 4], 0x7b
call fcn.100217e0
lea eax, [ebp - 0x50]
mov byte [ebp - 4], 0x7c
push eax
lea ecx, [esi + 0x1a0c]
call fcn.1003e270
lea eax, [ebp - 0x38]
mov byte [esi + 0x1a3d], 1
push eax
lea ecx, [esi + 0x1a5c]
call fcn.1003e270
xor eax, eax
mov ecx, 0xf
cmp byte [esi + 0x1a3d], al
cmovne eax, ecx
lea ecx, [esi + 0x1a74]
mov dword [esi + 0x1a8c], eax
add eax, 8
mov dword [esi + 0x19e4], eax
mov dword [esi + 0x19e8], eax
lea eax, [ebp - 0x70]
mov dword [esi + 0x1a48], 0x3f800000
mov dword [esi + 0x1a4c], 0x41200000
mov dword [esi + 0x1a44], 0x40800000
mov dword [esi + 0x1a58], 0
push eax
mov dword [esi + 0x1a50], 0x3f800000
call fcn.10071180
lea ecx, [ebp - 0x38]
call fcn.10021790
lea ecx, [ebp - 0x50]
call fcn.10021790
lea ecx, [ebp - 0x70]
mov dword [ebp - 4], 0xffffffff
call fcn.100440f0
lea eax, [ebp - 0x18]
mov dword [ebp - 0x18], 0x10024810
push eax
lea ecx, [edi + 0x58]
call fcn.10070f30
lea eax, [ebp - 0x18]
mov dword [ebp - 0x18], 0x100247a0
push eax
lea ecx, [edi + 0x58]
call fcn.10070f30
mov dword [esi + 0x19ec], 1
lea ecx, [esi + 0x18]
mov dword [esi + 0x19d8], 0xff
mov dword [esi + 0x19e0], 0xaf
mov eax, dword [esi + 0x2c]
mov dword [esi + 0x19f0], eax
lea eax, [ebp - 0x18]
push eax
mov dword [ebp - 0x18], edi
call fcn.10070f30
push 0x100ad848
lea ecx, [ebp - 0x70]
lea edi, [esi + 0x1a90]
call fcn.100711b0
push str.impact_beams_speed2
lea ecx, [ebp - 0x50]
mov dword [ebp - 4], 0x7d
call fcn.100217e0
push str.bullet_tracer_speed
lea ecx, [ebp - 0x38]
mov byte [ebp - 4], 0x7e
call fcn.100217e0
lea eax, [ebp - 0x50]
mov byte [ebp - 4], 0x7f
push eax
lea ecx, [esi + 0x1ac8]
call fcn.1003e270
lea eax, [ebp - 0x38]
mov byte [esi + 0x1af9], 1
push eax
lea ecx, [esi + 0x1b18]
call fcn.1003e270
xor eax, eax
mov ecx, 0xf
cmp byte [esi + 0x1af9], al
cmovne eax, ecx
lea ecx, [esi + 0x1b30]
mov dword [esi + 0x1b48], eax
add eax, 8
mov dword [esi + 0x1aa0], eax
mov dword [esi + 0x1aa4], eax
lea eax, [ebp - 0x70]
mov dword [esi + 0x1b04], 0
mov dword [esi + 0x1b08], 0x3fc00000
mov dword [esi + 0x1b00], 0x3f666666
mov dword [esi + 0x1b14], 1
push eax
mov dword [esi + 0x1b0c], 0x3dcccccd
call fcn.10071180
lea ecx, [ebp - 0x38]
call fcn.10021790
lea ecx, [ebp - 0x50]
call fcn.10021790
lea ecx, [ebp - 0x70]
mov dword [ebp - 4], 0xffffffff
call fcn.100440f0
lea eax, [ebp - 0x18]
mov dword [ebp - 0x18], 0x10024810
push eax
lea ecx, [edi + 0x58]
call fcn.10070f30
lea eax, [ebp - 0x18]
mov dword [ebp - 0x18], 0x100247a0
push eax
lea ecx, [edi + 0x58]
call fcn.10070f30
lea eax, [ebp - 0x18]
mov dword [ebp - 0x18], 0x100247f0
push eax
lea ecx, [edi + 0x58]
call fcn.10070f30
mov dword [ebp - 0x18], edi
mov edi, esi
mov dword [edi + 0x1aa8], 1
lea ecx, [edi + 0x18]
mov dword [edi + 0x1a94], 0xff
mov dword [edi + 0x1a9c], 0xaf
mov eax, dword [edi + 0x2c]
mov dword [edi + 0x1aac], eax
lea eax, [ebp - 0x18]
push eax
call fcn.10070f30
push str.bullet_impacts
lea ecx, [ebp - 0x50]
lea esi, [edi + 0x1b4c]
call fcn.100217e0
push 0x100abb7c
lea ecx, [ebp - 0x38]
mov dword [ebp - 4], 0x80
call fcn.100217e0
lea eax, [ebp - 0x50]
mov byte [ebp - 4], 0x81
push eax
lea ecx, [edi + 0x1b84]
call fcn.1003e270
mov byte [edi + 0x1bb5], 1
lea eax, [ebp - 0x38]
push eax
lea ecx, [edi + 0x1bbc]
call fcn.1003e270
lea ecx, [ebp - 0x38]
mov byte [edi + 0x1bb8], 0
call fcn.10021790
lea ecx, [ebp - 0x50]
mov dword [ebp - 4], 0xffffffff
call fcn.10021790
mov dword [esi + 0x18], 1
lea ecx, [edi + 0x18]
mov dword [esi + 4], 0xff
mov dword [esi + 0xc], 0xaf
mov eax, dword [edi + 0x2c]
mov dword [esi + 0x1c], eax
lea eax, [ebp - 0x18]
push eax
mov dword [ebp - 0x18], esi
call fcn.10070f30
push 0x100abb8c
lea ecx, [ebp - 0x50]
lea esi, [edi + 0x1bd4]
call fcn.100217e0
push str.bullet_impacts_clientside
lea ecx, [ebp - 0x38]
mov dword [ebp - 4], 0x82
call fcn.100217e0
lea eax, [ebp - 0x38]
mov byte [ebp - 4], 0x83
push eax
lea ecx, [edi + 0x1c44]
mov dword [ebp - 0x1c], 0x7d0000ff
call fcn.1003e270
lea eax, [ebp - 0x50]
push eax
lea ecx, [edi + 0x1c0c]
call fcn.1003e270
mov eax, dword [ebp - 0x1c]
lea ecx, [ebp - 0x38]
mov dword [edi + 0x1c5c], eax
mov dword [edi + 0x1c74], 0
call fcn.10021790
lea ecx, [ebp - 0x50]
mov dword [ebp - 4], 0xffffffff
call fcn.10021790
lea eax, [ebp - 0x18]
mov dword [ebp - 0x18], 0x100247c0
lea ecx, [esi + 0x58]
push eax
call fcn.10070f30
mov dword [edi + 0x1bec], 1
lea ecx, [edi + 0x18]
mov dword [edi + 0x1bd8], 0xff
mov dword [edi + 0x1be0], 0xaf
mov eax, dword [edi + 0x2c]
mov dword [edi + 0x1bf0], eax
lea eax, [ebp - 0x18]
push eax
mov dword [ebp - 0x18], esi
call fcn.10070f30
push str.bullet_impacts_serverside
lea ecx, [ebp - 0x50]
lea esi, [edi + 0x1c90]
call fcn.100217e0
push 0x100abbcc
lea ecx, [ebp - 0x38]
mov dword [ebp - 4], 0x84
call fcn.100217e0
lea eax, [ebp - 0x38]
mov byte [ebp - 4], 0x85
push eax
lea ecx, [edi + 0x1d00]
mov dword [ebp - 0x1c], 0x7dff0000
call fcn.1003e270
lea eax, [ebp - 0x50]
push eax
lea ecx, [edi + 0x1cc8]
call fcn.1003e270
mov eax, dword [ebp - 0x1c]
lea ecx, [ebp - 0x38]
mov dword [edi + 0x1d18], eax
mov dword [edi + 0x1d30], 0
call fcn.10021790
lea ecx, [ebp - 0x50]
mov dword [ebp - 4], 0xffffffff
call fcn.10021790
lea eax, [ebp - 0x18]
mov dword [ebp - 0x18], 0x100247c0
lea ecx, [esi + 0x58]
push eax
call fcn.10070f30
mov dword [edi + 0x1ca8], 1
lea ecx, [edi + 0x18]
mov dword [edi + 0x1c94], 0xff
mov dword [edi + 0x1c9c], 0xaf
mov eax, dword [edi + 0x2c]
mov dword [edi + 0x1cac], eax
lea eax, [ebp - 0x18]
push eax
mov dword [ebp - 0x18], esi
call fcn.10070f30
push 0x100ad848
lea ecx, [ebp - 0x70]
lea esi, [edi + 0x1d4c]
call fcn.100711b0
push 0x100abbe8
lea ecx, [ebp - 0x50]
mov dword [ebp - 4], 0x86
call fcn.100217e0
push str.bullet_impact_time
lea ecx, [ebp - 0x38]
mov byte [ebp - 4], 0x87
call fcn.100217e0
lea eax, [ebp - 0x50]
mov byte [ebp - 4], 0x88
push eax
lea ecx, [edi + 0x1d84]
call fcn.1003e270
lea eax, [ebp - 0x38]
mov byte [edi + 0x1db5], 1
push eax
lea ecx, [edi + 0x1dd4]
call fcn.1003e270
xor eax, eax
mov ecx, 0xf
cmp byte [edi + 0x1db5], al
cmovne eax, ecx
lea ecx, [edi + 0x1dec]
mov dword [edi + 0x1e04], eax
add eax, 8
mov dword [edi + 0x1d5c], eax
mov dword [edi + 0x1d60], eax
lea eax, [ebp - 0x70]
mov dword [edi + 0x1dc0], 0x3f800000
mov dword [edi + 0x1dc4], 0x41a00000
mov dword [edi + 0x1dbc], 0x40800000
mov dword [edi + 0x1dd0], 0
push eax
mov dword [edi + 0x1dc8], 0x3f800000
call fcn.10071180
lea ecx, [ebp - 0x38]
call fcn.10021790
lea ecx, [ebp - 0x50]
call fcn.10021790
lea ecx, [ebp - 0x70]
mov dword [ebp - 4], 0xffffffff
call fcn.100440f0
lea eax, [ebp - 0x18]
mov dword [ebp - 0x18], 0x100247c0
lea ecx, [esi + 0x58]
push eax
call fcn.10070f30
mov dword [ebp - 0x18], esi
mov dword [edi + 0x1d64], 1
mov dword [edi + 0x1d50], 0xff
lea ecx, [edi + 0x18]
mov dword [edi + 0x1d58], 0xaf
mov eax, dword [edi + 0x2c]
mov dword [edi + 0x1d68], eax
lea eax, [ebp - 0x18]
push eax
call fcn.10070f30
push str.thirdperson
lea ecx, [ebp - 0x50]
lea esi, [edi + 0x1e08]
call fcn.100217e0
push str.thirdperson
lea ecx, [ebp - 0x38]
mov dword [ebp - 4], 0x89
call fcn.100217e0
lea eax, [ebp - 0x38]
mov byte [ebp - 4], 0x8a
push eax
lea ecx, [edi + 0x1e78]
call fcn.1003e270
lea eax, [ebp - 0x50]
push eax
lea ecx, [edi + 0x1e40]
call fcn.1003e270
lea ecx, [ebp - 0x38]
mov dword [edi + 0x1e74], 0xffffffff
call fcn.10021790
lea ecx, [ebp - 0x50]
mov dword [ebp - 4], 0xffffffff
call fcn.10021790
mov dword [edi + 0x1e94], 0x100246f0
lea ecx, [edi + 0x18]
mov dword [esi + 0x18], 1
mov dword [esi + 4], 0xff
mov dword [esi + 0xc], 0xaf
mov eax, dword [edi + 0x2c]
mov dword [esi + 0x1c], eax
lea eax, [ebp - 0x18]
push eax
mov dword [ebp - 0x18], esi
call fcn.10070f30
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.1009c6c6
mov esp, ebp
pop ebp
mov esp, ebx
pop ebx
ret