Function at 0x100617a0
Capabilities:
Contain obfuscated stackstrings

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 0x100b5159
mov eax, dword fs:[0]
push eax
push ebx
sub esp, 0x598
mov eax, dword [0x100cc040]
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 - 0x20], edi
push 7
xorps xmm0, xmm0
mov dword [ebp - 0x418], 0
push str.visuals
lea ecx, [ebp - 0x428]
mov dword [ebp - 0x414], 0
movups xmmword [ebp - 0x428], xmm0
call fcn.1002ce60
lea eax, [ebp - 0x428]
mov dword [ebp - 4], 0
cmp edi, eax
je 0x10061843
cmp dword [ebp - 0x414], 0xf
mov ecx, edi
push dword [ebp - 0x418]
cmova eax, dword [ebp - 0x428]
push eax
call fcn.1002c940
mov dword [ebp - 4], 0xffffffff
mov ecx, dword [ebp - 0x414]
cmp ecx, 0xf
jbe 0x10061884
mov edx, dword [ebp - 0x428]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x1006187a
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x10063a73
push ecx
push edx
call fcn.100af195
add esp, 8
push 4
xorps xmm0, xmm0
mov dword [ebp - 0x4a8], 0
push str.text
lea ecx, [ebp - 0x4b8]
mov dword [ebp - 0x4a4], 0
movups xmmword [ebp - 0x4b8], xmm0
call fcn.1002ce60
mov dword [ebp - 4], 1
lea ecx, [ebp - 0x4a0]
push 4
xorps xmm0, xmm0
mov dword [ebp - 0x490], 0
push str.ammo
movups xmmword [ebp - 0x4a0], xmm0
mov dword [ebp - 0x48c], 0
call fcn.1002ce60
mov byte [ebp - 4], 2
lea ecx, [ebp - 0x488]
push 8
xorps xmm0, xmm0
mov dword [ebp - 0x478], 0
push str.distance
movups xmmword [ebp - 0x488], xmm0
mov dword [ebp - 0x474], 0
call fcn.1002ce60
mov byte [ebp - 4], 3
lea ecx, [ebp - 0x470]
push 4
xorps xmm0, xmm0
mov dword [ebp - 0x460], 0
push str.glow
movups xmmword [ebp - 0x470], xmm0
mov dword [ebp - 0x45c], 0
call fcn.1002ce60
lea ecx, [ebp - 0x4b8]
mov dword [ebp - 4], 4
push ecx
lea eax, [ebp - 0x458]
push eax
push ecx
lea ecx, [ebp - 0xa4]
call fcn.10080ce0
mov byte [ebp - 4], 5
lea ecx, [ebp - 0xc8]
push 0x10
xorps xmm0, xmm0
mov dword [ebp - 0xb8], 0
push str.weapon_selection
movups xmmword [ebp - 0xc8], xmm0
mov dword [ebp - 0xb4], 0
call fcn.1002ce60
mov byte [ebp - 4], 6
lea ecx, [ebp - 0x440]
push 0xf
xorps xmm0, xmm0
mov dword [ebp - 0x430], 0
push str.dropped_weapons
movups xmmword [ebp - 0x440], xmm0
mov dword [ebp - 0x42c], 0
call fcn.1002ce60
mov dword [ebp - 0x48], 0
mov dword [ebp - 0x44], 0
mov dword [ebp - 0x40], 0
lea ecx, [edi + 0x68]
mov byte [ebp - 4], 8
lea eax, [ebp - 0xc8]
cmp ecx, eax
je 0x10061a1c
cmp dword [ebp - 0xb4], 0xf
push dword [ebp - 0xb8]
cmova eax, dword [ebp - 0xc8]
push eax
call fcn.1002c940
lea ecx, [edi + 0xa0]
mov byte [edi + 0x99], 1
lea eax, [ebp - 0x440]
cmp ecx, eax
je 0x10061a4d
cmp dword [ebp - 0x42c], 0xf
push dword [ebp - 0x430]
cmova eax, dword [ebp - 0x440]
push eax
call fcn.1002c940
mov esi, dword [ebp - 0xa4]
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 - 0xa0]
mov dword [ebp - 0x18], eax
cmp esi, eax
je 0x10061ac3
lea ecx, [edi + 0xb8]
nop word [eax + eax]
mov eax, dword [edi + 0xbc]
push esi
cmp eax, dword [edi + 0xc0]
je 0x10061aaf
mov ecx, eax
call fcn.10031320
add dword [edi + 0xbc], 0x18
jmp 0x10061ab5
push eax
call fcn.1004f120
add esi, 0x18
lea ecx, [edi + 0xb8]
cmp esi, dword [ebp - 0x18]
jne 0x10061a90
mov byte [ebp - 4], 6
mov ecx, dword [ebp - 0x42c]
cmp ecx, 0xf
jbe 0x10061afd
mov edx, dword [ebp - 0x440]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x10061af3
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x10061b2d
push ecx
push edx
call fcn.100af195
add esp, 8
mov byte [ebp - 4], 5
mov ecx, dword [ebp - 0xb4]
cmp ecx, 0xf
jbe 0x10061b3d
mov edx, dword [ebp - 0xc8]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x10061b33
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
jbe 0x10061b33
call dword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
push ecx
push edx
call fcn.100af195
add esp, 8
lea ecx, [ebp - 0xa4]
call fcn.1004ea10
push fcn.1002c5e0
push 4
push 0x18
lea eax, [ebp - 0x4b8]
mov dword [ebp - 4], 0xffffffff
push eax
call fcn.100aed66
mov dword [edi + 0x48], 0
lea ecx, [edi + 0x30]
mov dword [edi + 0x34], 0x14
mov dword [edi + 0x3c], 0xaf
mov eax, dword [edi + 0x2c]
mov dword [edi + 0x4c], eax
mov eax, dword [edi + 0x1c]
mov dword [ebp - 0x18], ecx
cmp eax, dword [edi + 0x20]
je 0x10061b95
mov dword [eax], ecx
add dword [edi + 0x1c], 4
jmp 0x10061ba2
lea ecx, [ebp - 0x18]
push ecx
push eax
lea ecx, [edi + 0x18]
call fcn.1002d4f0
push 0xc
xorps xmm0, xmm0
mov dword [ebp - 0xe8], 0
push str.weapon_color
lea ecx, [ebp - 0xf8]
mov dword [ebp - 0xe4], 0
movups xmmword [ebp - 0xf8], xmm0
call fcn.1002ce60
mov dword [ebp - 4], 9
lea ecx, [ebp - 0xe0]
push 0x15
xorps xmm0, xmm0
mov dword [ebp - 0xd0], 0
push str.dropped_weapons_color
movups xmmword [ebp - 0xe0], xmm0
mov dword [ebp - 0xcc], 0
call fcn.1002ce60
lea ecx, [edi + 0x148]
mov byte [ebp - 4], 0xa
lea eax, [ebp - 0xe0]
cmp ecx, eax
je 0x10061c37
cmp dword [ebp - 0xcc], 0xf
push dword [ebp - 0xd0]
cmova eax, dword [ebp - 0xe0]
push eax
call fcn.1002c940
lea ecx, [edi + 0x110]
lea eax, [ebp - 0xf8]
cmp ecx, eax
je 0x10061c61
cmp dword [ebp - 0xe4], 0xf
push dword [ebp - 0xe8]
cmova eax, dword [ebp - 0xf8]
push eax
call fcn.1002c940
mov byte [ebp - 4], 9
mov ecx, dword [ebp - 0xcc]
mov dword [edi + 0x160], 0xd2ffffff
mov dword [edi + 0x178], 0
cmp ecx, 0xf
jbe 0x10061cb3
mov edx, dword [ebp - 0xe0]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x10061ca9
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x10063a73
push ecx
push edx
call fcn.100af195
add esp, 8
mov dword [ebp - 4], 0xffffffff
mov ecx, dword [ebp - 0xe4]
cmp ecx, 0xf
jbe 0x10061cf4
mov edx, dword [ebp - 0xf8]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x10061cea
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x10063a73
push ecx
push edx
call fcn.100af195
add esp, 8
mov eax, dword [edi + 0x134]
lea ecx, [edi + 0x130]
mov dword [ebp - 0x18], 0x1002ec80
cmp eax, dword [ecx + 8]
je 0x10061d18
mov dword [eax], 0x1002ec80
add dword [ecx + 4], 4
jmp 0x10061d22
lea edx, [ebp - 0x18]
push edx
push eax
call fcn.1002d4f0
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 [edi + 0x1c]
mov dword [ebp - 0x18], ecx
cmp eax, dword [edi + 0x20]
je 0x10061d62
mov dword [eax], ecx
add dword [edi + 0x1c], 4
jmp 0x10061d6f
lea ecx, [ebp - 0x18]
push ecx
push eax
lea ecx, [edi + 0x18]
call fcn.1002d4f0
push 0xb
xorps xmm0, xmm0
mov dword [ebp - 0x118], 0
push str.enemy_radar
lea ecx, [ebp - 0x128]
mov dword [ebp - 0x114], 0
movups xmmword [ebp - 0x128], xmm0
call fcn.1002ce60
mov dword [ebp - 4], 0xb
lea ecx, [ebp - 0x110]
push 5
xorps xmm0, xmm0
mov dword [ebp - 0x100], 0
push str.radar
movups xmmword [ebp - 0x110], xmm0
mov dword [ebp - 0xfc], 0
call fcn.1002ce60
lea ecx, [edi + 0xce0]
mov byte [ebp - 4], 0xc
lea eax, [ebp - 0x128]
cmp ecx, eax
je 0x10061e04
cmp dword [ebp - 0x114], 0xf
push dword [ebp - 0x118]
cmova eax, dword [ebp - 0x128]
push eax
call fcn.1002c940
lea ecx, [edi + 0xd18]
mov byte [edi + 0xd11], 1
lea eax, [ebp - 0x110]
cmp ecx, eax
je 0x10061e35
cmp dword [ebp - 0xfc], 0xf
push dword [ebp - 0x100]
cmova eax, dword [ebp - 0x110]
push eax
call fcn.1002c940
mov byte [ebp - 4], 0xb
mov ecx, dword [ebp - 0xfc]
mov byte [edi + 0xd14], 0
cmp ecx, 0xf
jbe 0x10061e7a
mov edx, dword [ebp - 0x110]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x10061e70
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x10063a73
push ecx
push edx
call fcn.100af195
add esp, 8
mov dword [ebp - 4], 0xffffffff
mov ecx, dword [ebp - 0x114]
cmp ecx, 0xf
jbe 0x10061ebb
mov edx, dword [ebp - 0x128]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x10061eb1
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x10063a73
push ecx
push edx
call fcn.100af195
add esp, 8
mov dword [edi + 0xcc0], 0
lea ecx, [edi + 0xca8]
mov dword [edi + 0xcac], 0x14
mov dword [edi + 0xcb4], 0xaf
mov eax, dword [edi + 0x2c]
mov dword [edi + 0xcc4], eax
mov eax, dword [edi + 0x1c]
mov dword [ebp - 0x18], ecx
cmp eax, dword [edi + 0x20]
je 0x10061efb
mov dword [eax], ecx
add dword [edi + 0x1c], 4
jmp 0x10061f08
lea ecx, [ebp - 0x18]
push ecx
push eax
lea ecx, [edi + 0x18]
call fcn.1002d4f0
push 5
xorps xmm0, xmm0
mov dword [ebp - 0x148], 0
push str.proj2
lea ecx, [ebp - 0x158]
mov dword [ebp - 0x144], 0
movups xmmword [ebp - 0x158], xmm0
call fcn.1002ce60
mov dword [ebp - 4], 0xd
lea ecx, [ebp - 0x140]
push 0xc
xorps xmm0, xmm0
mov dword [ebp - 0x130], 0
push str.projectitles
movups xmmword [ebp - 0x140], xmm0
mov dword [ebp - 0x12c], 0
call fcn.1002ce60
lea ecx, [edi + 0x310]
mov byte [ebp - 4], 0xe
lea eax, [ebp - 0x158]
cmp ecx, eax
je 0x10061f9d
cmp dword [ebp - 0x144], 0xf
push dword [ebp - 0x148]
cmova eax, dword [ebp - 0x158]
push eax
call fcn.1002c940
lea ecx, [edi + 0x348]
mov byte [edi + 0x341], 1
lea eax, [ebp - 0x140]
cmp ecx, eax
je 0x10061fce
cmp dword [ebp - 0x12c], 0xf
push dword [ebp - 0x130]
cmova eax, dword [ebp - 0x140]
push eax
call fcn.1002c940
mov byte [ebp - 4], 0xd
mov ecx, dword [ebp - 0x12c]
mov byte [edi + 0x344], 0
cmp ecx, 0xf
jbe 0x10062013
mov edx, dword [ebp - 0x140]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x10062009
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x10063a73
push ecx
push edx
call fcn.100af195
add esp, 8
mov dword [ebp - 4], 0xffffffff
mov ecx, dword [ebp - 0x144]
cmp ecx, 0xf
jbe 0x10062054
mov edx, dword [ebp - 0x158]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x1006204a
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x10063a73
push ecx
push edx
call fcn.100af195
add esp, 8
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 [edi + 0x1c]
mov dword [ebp - 0x18], ecx
cmp eax, dword [edi + 0x20]
je 0x10062094
mov dword [eax], ecx
add dword [edi + 0x1c], 4
jmp 0x100620a1
lea ecx, [ebp - 0x18]
push ecx
push eax
lea ecx, [edi + 0x18]
call fcn.1002d4f0
push 8
xorps xmm0, xmm0
mov dword [ebp - 0x178], 0
push str.proj2col
lea ecx, [ebp - 0x188]
mov dword [ebp - 0x174], 0
movups xmmword [ebp - 0x188], xmm0
call fcn.1002ce60
mov dword [ebp - 4], 0xf
lea ecx, [ebp - 0x170]
push 0x12
xorps xmm0, xmm0
mov dword [ebp - 0x160], 0
push str.projectitles_color
movups xmmword [ebp - 0x170], xmm0
mov dword [ebp - 0x15c], 0
call fcn.1002ce60
lea ecx, [edi + 0x3d0]
mov byte [ebp - 4], 0x10
lea eax, [ebp - 0x170]
cmp ecx, eax
je 0x10062136
cmp dword [ebp - 0x15c], 0xf
push dword [ebp - 0x160]
cmova eax, dword [ebp - 0x170]
push eax
call fcn.1002c940
lea ecx, [edi + 0x398]
lea eax, [ebp - 0x188]
cmp ecx, eax
je 0x10062160
cmp dword [ebp - 0x174], 0xf
push dword [ebp - 0x178]
cmova eax, dword [ebp - 0x188]
push eax
call fcn.1002c940
mov byte [ebp - 4], 0xf
mov ecx, dword [ebp - 0x15c]
mov dword [edi + 0x3e8], 0xb4ffffff
mov dword [edi + 0x400], 0
cmp ecx, 0xf
jbe 0x100621b2
mov edx, dword [ebp - 0x170]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x100621a8
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x10063a73
push ecx
push edx
call fcn.100af195
add esp, 8
mov dword [ebp - 4], 0xffffffff
mov ecx, dword [ebp - 0x174]
cmp ecx, 0xf
jbe 0x100621f3
mov edx, dword [ebp - 0x188]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x100621e9
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x10063a73
push ecx
push edx
call fcn.100af195
add esp, 8
mov eax, dword [edi + 0x278]
lea ecx, [edi + 0x274]
mov dword [ebp - 0x18], 0x1002ebe0
cmp eax, dword [ecx + 8]
je 0x10062217
mov dword [eax], 0x1002ebe0
add dword [ecx + 4], 4
jmp 0x10062221
lea edx, [ebp - 0x18]
push edx
push eax
call fcn.1002d4f0
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 [edi + 0x1c]
mov dword [ebp - 0x18], ecx
cmp eax, dword [edi + 0x20]
je 0x10062261
mov dword [eax], ecx
add dword [edi + 0x1c], 4
jmp 0x1006226e
lea ecx, [ebp - 0x18]
push ecx
push eax
lea ecx, [edi + 0x18]
call fcn.1002d4f0
push 4
xorps xmm0, xmm0
mov dword [ebp - 0x1a8], 0
push str.proj
lea ecx, [ebp - 0x1b8]
mov dword [ebp - 0x1a4], 0
movups xmmword [ebp - 0x1b8], xmm0
call fcn.1002ce60
mov dword [ebp - 4], 0x11
lea ecx, [ebp - 0x1a0]
push 8
xorps xmm0, xmm0
mov dword [ebp - 0x190], 0
push str.grenades
movups xmmword [ebp - 0x1a0], xmm0
mov dword [ebp - 0x18c], 0
call fcn.1002ce60
lea ecx, [edi + 0x1cc]
mov byte [ebp - 4], 0x12
lea eax, [ebp - 0x1b8]
cmp ecx, eax
je 0x10062303
cmp dword [ebp - 0x1a4], 0xf
push dword [ebp - 0x1a8]
cmova eax, dword [ebp - 0x1b8]
push eax
call fcn.1002c940
lea ecx, [edi + 0x204]
mov byte [edi + 0x1fd], 1
lea eax, [ebp - 0x1a0]
cmp ecx, eax
je 0x10062334
cmp dword [ebp - 0x18c], 0xf
push dword [ebp - 0x190]
cmova eax, dword [ebp - 0x1a0]
push eax
call fcn.1002c940
mov byte [ebp - 4], 0x11
mov ecx, dword [ebp - 0x18c]
mov byte [edi + 0x200], 0
cmp ecx, 0xf
jbe 0x10062379
mov edx, dword [ebp - 0x1a0]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x1006236f
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x10063a73
push ecx
push edx
call fcn.100af195
add esp, 8
mov dword [ebp - 4], 0xffffffff
mov ecx, dword [ebp - 0x1a4]
cmp ecx, 0xf
jbe 0x100623ba
mov edx, dword [ebp - 0x1b8]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x100623b0
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x10063a73
push ecx
push edx
call fcn.100af195
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 [edi + 0x1c]
mov dword [ebp - 0x18], ecx
cmp eax, dword [edi + 0x20]
je 0x100623fa
mov dword [eax], ecx
add dword [edi + 0x1c], 4
jmp 0x10062407
lea ecx, [ebp - 0x18]
push ecx
push eax
lea ecx, [edi + 0x18]
call fcn.1002d4f0
push 0xf
xorps xmm0, xmm0
mov dword [ebp - 0x1d8], 0
push str.proj_color_text
lea ecx, [ebp - 0x1e8]
mov dword [ebp - 0x1d4], 0
movups xmmword [ebp - 0x1e8], xmm0
call fcn.1002ce60
mov dword [ebp - 4], 0x13
lea ecx, [ebp - 0x1d0]
push 0x13
xorps xmm0, xmm0
mov dword [ebp - 0x1c0], 0
push str.text_grenades_color
movups xmmword [ebp - 0x1d0], xmm0
mov dword [ebp - 0x1bc], 0
call fcn.1002ce60
lea ecx, [edi + 0x28c]
mov byte [ebp - 4], 0x14
lea eax, [ebp - 0x1d0]
cmp ecx, eax
je 0x1006249c
cmp dword [ebp - 0x1bc], 0xf
push dword [ebp - 0x1c0]
cmova eax, dword [ebp - 0x1d0]
push eax
call fcn.1002c940
lea ecx, [edi + 0x254]
lea eax, [ebp - 0x1e8]
cmp ecx, eax
je 0x100624c6
cmp dword [ebp - 0x1d4], 0xf
push dword [ebp - 0x1d8]
cmova eax, dword [ebp - 0x1e8]
push eax
call fcn.1002c940
mov byte [ebp - 4], 0x13
mov ecx, dword [ebp - 0x1bc]
mov dword [edi + 0x2a4], 0xb4ffffff
mov dword [edi + 0x2bc], 0
cmp ecx, 0xf
jbe 0x10062518
mov edx, dword [ebp - 0x1d0]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x1006250e
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x10063a73
push ecx
push edx
call fcn.100af195
add esp, 8
mov dword [ebp - 4], 0xffffffff
mov ecx, dword [ebp - 0x1d4]
cmp ecx, 0xf
jbe 0x10062559
mov edx, dword [ebp - 0x1e8]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x1006254f
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x10063a73
push ecx
push edx
call fcn.100af195
add esp, 8
mov eax, dword [edi + 0x278]
lea ecx, [edi + 0x274]
mov dword [ebp - 0x18], 0x1002ebd0
cmp eax, dword [ecx + 8]
je 0x1006257d
mov dword [eax], 0x1002ebd0
add dword [ecx + 4], 4
jmp 0x10062587
lea edx, [ebp - 0x18]
push edx
push eax
call fcn.1002d4f0
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 [edi + 0x1c]
mov dword [ebp - 0x18], ecx
cmp eax, dword [edi + 0x20]
je 0x100625c7
mov dword [eax], ecx
add dword [edi + 0x1c], 4
jmp 0x100625d4
lea ecx, [ebp - 0x18]
push ecx
push eax
lea ecx, [edi + 0x18]
call fcn.1002d4f0
push 0xb
xorps xmm0, xmm0
mov dword [ebp - 0x208], 0
push str.should_Glow
lea ecx, [ebp - 0x218]
mov dword [ebp - 0x204], 0
movups xmmword [ebp - 0x218], xmm0
call fcn.1002ce60
mov dword [ebp - 4], 0x15
lea ecx, [ebp - 0x200]
push 4
xorps xmm0, xmm0
mov dword [ebp - 0x1f0], 0
push str.glow
movups xmmword [ebp - 0x200], xmm0
mov dword [ebp - 0x1ec], 0
call fcn.1002ce60
lea ecx, [edi + 0x454]
mov byte [ebp - 4], 0x16
lea eax, [ebp - 0x218]
cmp ecx, eax
je 0x10062669
cmp dword [ebp - 0x204], 0xf
push dword [ebp - 0x208]
cmova eax, dword [ebp - 0x218]
push eax
call fcn.1002c940
lea ecx, [edi + 0x48c]
mov byte [edi + 0x485], 1
lea eax, [ebp - 0x200]
cmp ecx, eax
je 0x1006269a
cmp dword [ebp - 0x1ec], 0xf
push dword [ebp - 0x1f0]
cmova eax, dword [ebp - 0x200]
push eax
call fcn.1002c940
mov byte [ebp - 4], 0x15
mov ecx, dword [ebp - 0x1ec]
mov byte [edi + 0x488], 0
cmp ecx, 0xf
jbe 0x100626df
mov edx, dword [ebp - 0x200]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x100626d5
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x10063a73
push ecx
push edx
call fcn.100af195
add esp, 8
mov dword [ebp - 4], 0xffffffff
mov ecx, dword [ebp - 0x204]
cmp ecx, 0xf
jbe 0x10062720
mov edx, dword [ebp - 0x218]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x10062716
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x10063a73
push ecx
push edx
call fcn.100af195
add esp, 8
mov eax, dword [edi + 0x478]
lea ecx, [edi + 0x474]
mov dword [ebp - 0x18], 0x1002ebd0
cmp eax, dword [ecx + 8]
je 0x10062744
mov dword [eax], 0x1002ebd0
add dword [ecx + 4], 4
jmp 0x1006274e
lea edx, [ebp - 0x18]
push edx
push eax
call fcn.1002d4f0
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 [edi + 0x1c]
mov dword [ebp - 0x18], ecx
cmp eax, dword [edi + 0x20]
je 0x1006278e
mov dword [eax], ecx
add dword [edi + 0x1c], 4
jmp 0x1006279b
lea ecx, [ebp - 0x18]
push ecx
push eax
lea ecx, [edi + 0x18]
call fcn.1002d4f0
push 0xa
xorps xmm0, xmm0
mov dword [ebp - 0x238], 0
push str.proj_color
lea ecx, [ebp - 0x248]
mov dword [ebp - 0x234], 0
movups xmmword [ebp - 0x248], xmm0
call fcn.1002ce60
mov dword [ebp - 4], 0x17
lea ecx, [ebp - 0x230]
push 0x13
xorps xmm0, xmm0
mov dword [ebp - 0x220], 0
push str.glow_grenades_color
movups xmmword [ebp - 0x230], xmm0
mov dword [ebp - 0x21c], 0
call fcn.1002ce60
lea ecx, [edi + 0x514]
mov byte [ebp - 4], 0x18
lea eax, [ebp - 0x230]
cmp ecx, eax
je 0x10062830
cmp dword [ebp - 0x21c], 0xf
push dword [ebp - 0x220]
cmova eax, dword [ebp - 0x230]
push eax
call fcn.1002c940
lea ecx, [edi + 0x4dc]
lea eax, [ebp - 0x248]
cmp ecx, eax
je 0x1006285a
cmp dword [ebp - 0x234], 0xf
push dword [ebp - 0x238]
cmova eax, dword [ebp - 0x248]
push eax
call fcn.1002c940
mov byte [ebp - 4], 0x17
mov ecx, dword [ebp - 0x21c]
mov dword [edi + 0x52c], 0xff0000ff
mov dword [edi + 0x544], 0
cmp ecx, 0xf
jbe 0x100628ac
mov edx, dword [ebp - 0x230]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x100628a2
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x10063a73
push ecx
push edx
call fcn.100af195
add esp, 8
mov dword [ebp - 4], 0xffffffff
mov ecx, dword [ebp - 0x234]
cmp ecx, 0xf
jbe 0x100628ed
mov edx, dword [ebp - 0x248]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x100628e3
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x10063a73
push ecx
push edx
call fcn.100af195
add esp, 8
mov eax, dword [edi + 0x500]
lea ecx, [edi + 0x4fc]
mov dword [ebp - 0x18], 0x1002ebf0
cmp eax, dword [ecx + 8]
je 0x10062911
mov dword [eax], 0x1002ebf0
add dword [ecx + 4], 4
jmp 0x1006291b
lea edx, [ebp - 0x18]
push edx
push eax
call fcn.1002d4f0
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 [edi + 0x1c]
mov dword [ebp - 0x18], ecx
cmp eax, dword [edi + 0x20]
je 0x1006295b
mov dword [eax], ecx
add dword [edi + 0x1c], 4
jmp 0x10062968
lea ecx, [ebp - 0x18]
push ecx
push eax
lea ecx, [edi + 0x18]
call fcn.1002d4f0
push 6
xorps xmm0, xmm0
mov dword [ebp - 0x268], 0
push str.tracer
lea ecx, [ebp - 0x278]
mov dword [ebp - 0x264], 0
movups xmmword [ebp - 0x278], xmm0
call fcn.1002ce60
mov dword [ebp - 4], 0x19
lea ecx, [ebp - 0x260]
push 6
xorps xmm0, xmm0
mov dword [ebp - 0x250], 0
push str.tracer
movups xmmword [ebp - 0x260], xmm0
mov dword [ebp - 0x24c], 0
call fcn.1002ce60
lea ecx, [edi + 0x598]
mov byte [ebp - 4], 0x1a
lea eax, [ebp - 0x278]
cmp ecx, eax
je 0x100629fd
cmp dword [ebp - 0x264], 0xf
push dword [ebp - 0x268]
cmova eax, dword [ebp - 0x278]
push eax
call fcn.1002c940
lea ecx, [edi + 0x5d0]
mov byte [edi + 0x5c9], 1
lea eax, [ebp - 0x260]
cmp ecx, eax
je 0x10062a2e
cmp dword [ebp - 0x24c], 0xf
push dword [ebp - 0x250]
cmova eax, dword [ebp - 0x260]
push eax
call fcn.1002c940
mov byte [ebp - 4], 0x19
mov ecx, dword [ebp - 0x24c]
mov byte [edi + 0x5cc], 0
cmp ecx, 0xf
jbe 0x10062a73
mov edx, dword [ebp - 0x260]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x10062a69
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x10063a73
push ecx
push edx
call fcn.100af195
add esp, 8
mov dword [ebp - 4], 0xffffffff
mov ecx, dword [ebp - 0x264]
cmp ecx, 0xf
jbe 0x10062ab4
mov edx, dword [ebp - 0x278]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x10062aaa
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x10063a73
push ecx
push edx
call fcn.100af195
add esp, 8
mov eax, dword [edi + 0x5bc]
lea ecx, [edi + 0x5b8]
mov dword [ebp - 0x18], 0x1002ebd0
cmp eax, dword [ecx + 8]
je 0x10062ad8
mov dword [eax], 0x1002ebd0
add dword [ecx + 4], 4
jmp 0x10062ae2
lea edx, [ebp - 0x18]
push edx
push eax
call fcn.1002d4f0
mov dword [edi + 0x578], 0
lea ecx, [edi + 0x560]
mov dword [edi + 0x564], 0x14
mov dword [edi + 0x56c], 0xaf
mov eax, dword [edi + 0x2c]
mov dword [edi + 0x57c], eax
mov eax, dword [edi + 0x1c]
mov dword [ebp - 0x18], ecx
cmp eax, dword [edi + 0x20]
je 0x10062b22
mov dword [eax], ecx
add dword [edi + 0x1c], 4
jmp 0x10062b2f
lea ecx, [ebp - 0x18]
push ecx
push eax
lea ecx, [edi + 0x18]
call fcn.1002d4f0
push 4
xorps xmm0, xmm0
mov dword [ebp - 0x88], 0
push str.beam
lea ecx, [ebp - 0x98]
mov dword [ebp - 0x84], 0
movups xmmword [ebp - 0x98], xmm0
call fcn.1002ce60
mov dword [ebp - 4], 0x1b
lea ecx, [ebp - 0x80]
push 7
xorps xmm0, xmm0
mov dword [ebp - 0x70], 0
push str.glowbox
movups xmmword [ebp - 0x80], xmm0
mov dword [ebp - 0x6c], 0
call fcn.1002ce60
mov byte [ebp - 4], 0x1c
lea ecx, [ebp - 0x68]
push 4
xorps xmm0, xmm0
mov dword [ebp - 0x58], 0
push str.line
movups xmmword [ebp - 0x68], xmm0
mov dword [ebp - 0x54], 0
call fcn.1002ce60
lea ecx, [ebp - 0x98]
mov dword [ebp - 4], 0x1d
push ecx
lea eax, [ebp - 0x50]
push eax
push ecx
lea ecx, [ebp - 0xa4]
call fcn.10080ce0
mov byte [ebp - 4], 0x1e
lea ecx, [ebp - 0x290]
push 0xb
xorps xmm0, xmm0
mov dword [ebp - 0x280], 0
push str.tracer_type
movups xmmword [ebp - 0x290], xmm0
mov dword [ebp - 0x27c], 0
call fcn.1002ce60
mov byte [ebp - 4], 0x1f
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.1002ce60
lea ecx, [edi + 0x620]
mov byte [ebp - 4], 0x20
lea eax, [ebp - 0x290]
cmp ecx, eax
je 0x10062c5a
cmp dword [ebp - 0x27c], 0xf
push dword [ebp - 0x280]
cmova eax, dword [ebp - 0x290]
push eax
call fcn.1002c940
mov eax, dword [ebp - 0xa0]
mov esi, dword [ebp - 0xa4]
mov byte [edi + 0x651], 0
mov dword [edi + 0x684], 0
mov dword [edi + 0x5f8], 0x14
mov dword [edi + 0x5fc], 0x14
mov dword [ebp - 0x18], eax
cmp esi, eax
je 0x10062cd3
lea ecx, [edi + 0x670]
nop dword [eax + eax]
mov eax, dword [edi + 0x674]
push esi
cmp eax, dword [edi + 0x678]
je 0x10062cbf
mov ecx, eax
call fcn.10031320
add dword [edi + 0x674], 0x18
jmp 0x10062cc5
push eax
call fcn.1004f120
add esi, 0x18
lea ecx, [edi + 0x670]
cmp esi, dword [ebp - 0x18]
jne 0x10062ca0
mov ecx, dword [edi + 0x674]
mov eax, 0x2aaaaaab
sub ecx, dword [edi + 0x670]
imul ecx
sar edx, 2
mov eax, edx
shr eax, 0x1f
add eax, edx
je 0x10062cfc
mov dword [edi + 0x680], 0
mov byte [ebp - 4], 0x1f
mov ecx, dword [ebp - 0x3c]
cmp ecx, 0xf
jbe 0x10062d30
mov edx, dword [ebp - 0x50]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x10062d26
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x10062d60
push ecx
push edx
call fcn.100af195
add esp, 8
mov byte [ebp - 4], 0x1e
mov ecx, dword [ebp - 0x27c]
cmp ecx, 0xf
jbe 0x10062d70
mov edx, dword [ebp - 0x290]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x10062d66
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
jbe 0x10062d66
call dword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
push ecx
push edx
call fcn.100af195
add esp, 8
lea ecx, [ebp - 0xa4]
call fcn.1004ea10
push fcn.1002c5e0
push 3
push 0x18
lea eax, [ebp - 0x98]
mov dword [ebp - 4], 0xffffffff
push eax
call fcn.100aed66
mov eax, dword [edi + 0x644]
lea ecx, [edi + 0x640]
mov dword [ebp - 0x18], 0x1002ec00
cmp eax, dword [ecx + 8]
je 0x10062dbb
mov dword [eax], 0x1002ec00
add dword [ecx + 4], 4
jmp 0x10062dc5
lea edx, [ebp - 0x18]
push edx
push eax
call fcn.1002d4f0
mov dword [edi + 0x600], 0
lea ecx, [edi + 0x18]
mov dword [edi + 0x5ec], 0x14
lea edx, [edi + 0x5e8]
mov dword [edi + 0x5f4], 0xaf
mov eax, dword [edi + 0x2c]
mov dword [edi + 0x604], eax
mov eax, dword [ecx + 4]
mov dword [ebp - 0x18], edx
cmp eax, dword [ecx + 8]
je 0x10062e08
mov dword [eax], edx
add dword [ecx + 4], 4
jmp 0x10062e12
lea edx, [ebp - 0x18]
push edx
push eax
call fcn.1002d4f0
push 2
xorps xmm0, xmm0
mov dword [ebp - 0x2c8], 0
push 0x100bdec4
lea ecx, [ebp - 0x2d8]
mov dword [ebp - 0x2c4], 0
lea esi, [edi + 0x688]
movups xmmword [ebp - 0x2d8], xmm0
call fcn.1004ee40
mov dword [ebp - 4], 0x21
lea ecx, [ebp - 0x2c0]
push 9
xorps xmm0, xmm0
mov dword [ebp - 0x2b0], 0
push str.thickness
movups xmmword [ebp - 0x2c0], xmm0
mov dword [ebp - 0x2ac], 0
call fcn.1002ce60
mov byte [ebp - 4], 0x22
lea ecx, [ebp - 0x2a8]
push 0x12
xorps xmm0, xmm0
mov dword [ebp - 0x298], 0
push str.glow_box_thickness
movups xmmword [ebp - 0x2a8], xmm0
mov dword [ebp - 0x294], 0
call fcn.1002ce60
lea ecx, [edi + 0x6c0]
mov byte [ebp - 4], 0x23
lea eax, [ebp - 0x2c0]
cmp ecx, eax
je 0x10062ee1
cmp dword [ebp - 0x2ac], 0xf
push dword [ebp - 0x2b0]
cmova eax, dword [ebp - 0x2c0]
push eax
call fcn.1002c940
lea ecx, [edi + 0x710]
mov byte [edi + 0x6f1], 1
lea eax, [ebp - 0x2a8]
cmp ecx, eax
je 0x10062f12
cmp dword [ebp - 0x294], 0xf
push dword [ebp - 0x298]
cmova eax, dword [ebp - 0x2a8]
push eax
call fcn.1002c940
xor eax, eax
mov dword [edi + 0x6fc], 0x3dcccccd
cmp byte [edi + 0x6f1], al
mov ecx, 0xf
mov dword [edi + 0x700], 0x3f800000
cmovne eax, ecx
mov dword [edi + 0x6f8], 0x3e99999a
mov dword [edi + 0x740], eax
lea ecx, [edi + 0x728]
add eax, 8
mov dword [edi + 0x70c], 1
mov dword [edi + 0x698], eax
mov dword [edi + 0x69c], eax
lea eax, [ebp - 0x2d8]
mov dword [edi + 0x704], 0x3dcccccd
cmp ecx, eax
je 0x10062fd3
cmp dword [ebp - 0x2c4], 7
mov esi, dword [ecx + 0x14]
cmova eax, dword [ebp - 0x2d8]
mov edx, dword [ebp - 0x2c8]
cmp edx, esi
ja 0x10062fbf
mov dword [ebp - 0x18], ecx
cmp esi, 7
jbe 0x10062fa1
mov esi, dword [ecx]
mov dword [ebp - 0x18], esi
lea esi, [edx + edx]
mov dword [ecx + 0x10], edx
push esi
push eax
push dword [ebp - 0x18]
call sub.VCRUNTIME140.dll_memmove
mov eax, dword [ebp - 0x18]
add esp, 0xc
xor ecx, ecx
mov word [eax + esi], cx
jmp 0x10062fcd
push eax
mov byte [ebp - 0x18], 0
push dword [ebp - 0x18]
push edx
call fcn.100815a0
lea esi, [edi + 0x688]
mov byte [ebp - 4], 0x22
mov ecx, dword [ebp - 0x294]
cmp ecx, 0xf
jbe 0x10063011
mov edx, dword [ebp - 0x2a8]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x10063007
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x10063a73
push ecx
push edx
call fcn.100af195
add esp, 8
mov byte [ebp - 4], 0x21
mov ecx, dword [ebp - 0x2ac]
cmp ecx, 0xf
jbe 0x1006304f
mov edx, dword [ebp - 0x2c0]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x10063045
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x10063a73
push ecx
push edx
call fcn.100af195
add esp, 8
mov dword [ebp - 4], 0xffffffff
mov eax, dword [ebp - 0x2c4]
cmp eax, 7
jbe 0x10063096
mov edx, dword [ebp - 0x2d8]
lea ecx, [eax*2 + 2]
mov eax, edx
cmp ecx, 0x1000
jb 0x1006308c
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x10063a73
push ecx
push edx
call fcn.100af195
add esp, 8
mov eax, dword [edi + 0x6e4]
lea ecx, [edi + 0x6e0]
mov dword [ebp - 0x18], 0x1002ec10
cmp eax, dword [ecx + 8]
je 0x100630ba
mov dword [eax], 0x1002ec10
add dword [ecx + 4], 4
jmp 0x100630c4
lea edx, [ebp - 0x18]
push edx
push eax
call fcn.1002d4f0
mov dword [edi + 0x6a0], 0
lea ecx, [edi + 0x18]
mov dword [edi + 0x68c], 0x14
mov dword [edi + 0x694], 0xaf
mov eax, dword [edi + 0x2c]
mov dword [edi + 0x6a4], eax
mov eax, dword [ecx + 4]
mov dword [ebp - 0x18], esi
cmp eax, dword [ecx + 8]
je 0x10063101
mov dword [eax], esi
add dword [ecx + 4], 4
jmp 0x1006310b
lea edx, [ebp - 0x18]
push edx
push eax
call fcn.1002d4f0
push 0xc
xorps xmm0, xmm0
mov dword [ebp - 0x2f8], 0
push str.tracer_color
lea ecx, [ebp - 0x308]
mov dword [ebp - 0x2f4], 0
lea esi, [edi + 0x744]
movups xmmword [ebp - 0x308], xmm0
call fcn.1002ce60
mov dword [ebp - 4], 0x24
lea ecx, [ebp - 0x2f0]
push 0x15
xorps xmm0, xmm0
mov dword [ebp - 0x2e0], 0
push str.tracer_grenades_color
movups xmmword [ebp - 0x2f0], xmm0
mov dword [ebp - 0x2dc], 0
call fcn.1002ce60
lea ecx, [edi + 0x7b4]
mov byte [ebp - 4], 0x25
lea eax, [ebp - 0x2f0]
cmp ecx, eax
je 0x100631a6
cmp dword [ebp - 0x2dc], 0xf
push dword [ebp - 0x2e0]
cmova eax, dword [ebp - 0x2f0]
push eax
call fcn.1002c940
lea ecx, [edi + 0x77c]
lea eax, [ebp - 0x308]
cmp ecx, eax
je 0x100631d0
cmp dword [ebp - 0x2f4], 0xf
push dword [ebp - 0x2f8]
cmova eax, dword [ebp - 0x308]
push eax
call fcn.1002c940
mov byte [ebp - 4], 0x24
mov ecx, dword [ebp - 0x2dc]
mov dword [edi + 0x7cc], 0xff732e42
mov dword [edi + 0x7e4], 0
cmp ecx, 0xf
jbe 0x10063222
mov edx, dword [ebp - 0x2f0]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x10063218
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x10063a73
push ecx
push edx
call fcn.100af195
add esp, 8
mov dword [ebp - 4], 0xffffffff
mov ecx, dword [ebp - 0x2f4]
cmp ecx, 0xf
jbe 0x10063263
mov edx, dword [ebp - 0x308]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x10063259
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x10063a73
push ecx
push edx
call fcn.100af195
add esp, 8
mov eax, dword [edi + 0x7a0]
lea ecx, [edi + 0x79c]
mov dword [ebp - 0x18], 0x1002ec00
cmp eax, dword [ecx + 8]
je 0x10063287
mov dword [eax], 0x1002ec00
add dword [ecx + 4], 4
jmp 0x10063291
lea edx, [ebp - 0x18]
push edx
push eax
call fcn.1002d4f0
mov dword [edi + 0x75c], 0
lea ecx, [edi + 0x18]
mov dword [edi + 0x748], 0x14
mov dword [edi + 0x750], 0xaf
mov eax, dword [edi + 0x2c]
mov dword [edi + 0x760], eax
mov eax, dword [ecx + 4]
mov dword [ebp - 0x18], esi
cmp eax, dword [ecx + 8]
je 0x100632ce
mov dword [eax], esi
add dword [ecx + 4], 4
jmp 0x100632d8
lea edx, [ebp - 0x18]
push edx
push eax
call fcn.1002d4f0
push 0x12
xorps xmm0, xmm0
mov dword [ebp - 0x328], 0
push str.tracer_should_Fade
lea ecx, [ebp - 0x338]
mov dword [ebp - 0x324], 0
lea esi, [edi + 0x800]
movups xmmword [ebp - 0x338], xmm0
call fcn.1002ce60
mov dword [ebp - 4], 0x26
lea ecx, [ebp - 0x320]
push 0x22
xorps xmm0, xmm0
mov dword [ebp - 0x310], 0
push str.fade_away_based_on_detonation_time
movups xmmword [ebp - 0x320], xmm0
mov dword [ebp - 0x30c], 0
call fcn.1002ce60
lea ecx, [edi + 0x838]
mov byte [ebp - 4], 0x27
lea eax, [ebp - 0x338]
cmp ecx, eax
je 0x10063373
cmp dword [ebp - 0x324], 0xf
push dword [ebp - 0x328]
cmova eax, dword [ebp - 0x338]
push eax
call fcn.1002c940
lea ecx, [edi + 0x870]
mov byte [edi + 0x869], 1
lea eax, [ebp - 0x320]
cmp ecx, eax
je 0x100633a4
cmp dword [ebp - 0x30c], 0xf
push dword [ebp - 0x310]
cmova eax, dword [ebp - 0x320]
push eax
call fcn.1002c940
mov byte [ebp - 4], 0x26
mov ecx, dword [ebp - 0x30c]
mov byte [edi + 0x86c], 0
cmp ecx, 0xf
jbe 0x100633e9
mov edx, dword [ebp - 0x320]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x100633df
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x10063a73
push ecx
push edx
call fcn.100af195
add esp, 8
mov dword [ebp - 4], 0xffffffff
mov ecx, dword [ebp - 0x324]
cmp ecx, 0xf
jbe 0x1006342a
mov edx, dword [ebp - 0x338]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x10063420
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x10063a73
push ecx
push edx
call fcn.100af195
add esp, 8
mov eax, dword [edi + 0x85c]
lea ecx, [edi + 0x858]
mov dword [ebp - 0x18], 0x1002ec00
cmp eax, dword [ecx + 8]
je 0x1006344e
mov dword [eax], 0x1002ec00
add dword [ecx + 4], 4
jmp 0x10063458
lea edx, [ebp - 0x18]
push edx
push eax
call fcn.1002d4f0
mov dword [edi + 0x818], 0
lea ecx, [edi + 0x18]
mov dword [edi + 0x804], 0x14
mov dword [edi + 0x80c], 0xaf
mov eax, dword [edi + 0x2c]
mov dword [edi + 0x81c], eax
mov eax, dword [ecx + 4]
mov dword [ebp - 0x18], esi
cmp eax, dword [ecx + 8]
je 0x10063495
mov dword [eax], esi
add dword [ecx + 4], 4
jmp 0x1006349f
lea edx, [ebp - 0x18]
push edx
push eax
call fcn.1002d4f0
push 4
xorps xmm0, xmm0
mov dword [ebp - 0x358], 0
push str.Bomb
lea ecx, [ebp - 0x368]
mov dword [ebp - 0x354], 0
lea esi, [edi + 0x888]
movups xmmword [ebp - 0x368], xmm0
call fcn.1002ce60
mov dword [ebp - 4], 0x28
lea ecx, [ebp - 0x350]
push 4
xorps xmm0, xmm0
mov dword [ebp - 0x340], 0
push str.bomb
movups xmmword [ebp - 0x350], xmm0
mov dword [ebp - 0x33c], 0
call fcn.1002ce60
lea ecx, [edi + 0x8c0]
mov byte [ebp - 4], 0x29
lea eax, [ebp - 0x368]
cmp ecx, eax
je 0x1006353a
cmp dword [ebp - 0x354], 0xf
push dword [ebp - 0x358]
cmova eax, dword [ebp - 0x368]
push eax
call fcn.1002c940
lea ecx, [edi + 0x8f8]
mov byte [edi + 0x8f1], 1
lea eax, [ebp - 0x350]
cmp ecx, eax
je 0x1006356b
cmp dword [ebp - 0x33c], 0xf
push dword [ebp - 0x340]
cmova eax, dword [ebp - 0x350]
push eax
call fcn.1002c940
mov byte [ebp - 4], 0x28
mov ecx, dword [ebp - 0x33c]
mov byte [edi + 0x8f4], 0
cmp ecx, 0xf
jbe 0x100635b0
mov edx, dword [ebp - 0x350]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x100635a6
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x10063a73
push ecx
push edx
call fcn.100af195
add esp, 8
mov dword [ebp - 4], 0xffffffff
mov ecx, dword [ebp - 0x354]
cmp ecx, 0xf
jbe 0x100635f1
mov edx, dword [ebp - 0x368]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x100635e7
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x10063a73
push ecx
push edx
call fcn.100af195
add esp, 8
mov dword [edi + 0x8a0], 0
lea ecx, [edi + 0x18]
mov dword [edi + 0x88c], 0x14
mov dword [edi + 0x894], 0xaf
mov eax, dword [edi + 0x2c]
mov dword [edi + 0x8a4], eax
mov eax, dword [ecx + 4]
mov dword [ebp - 0x18], esi
cmp eax, dword [ecx + 8]
je 0x1006362e
mov dword [eax], esi
add dword [ecx + 4], 4
jmp 0x10063638
lea edx, [ebp - 0x18]
push edx
push eax
call fcn.1002d4f0
push 0xa
xorps xmm0, xmm0
mov dword [ebp - 0x388], 0
push str.bomb_color
lea ecx, [ebp - 0x398]
mov dword [ebp - 0x384], 0
lea esi, [edi + 0x910]
movups xmmword [ebp - 0x398], xmm0
call fcn.1002ce60
mov dword [ebp - 4], 0x2a
lea ecx, [ebp - 0x380]
push 0xa
xorps xmm0, xmm0
mov dword [ebp - 0x370], 0
push 0x100be5b8
movups xmmword [ebp - 0x380], xmm0
mov dword [ebp - 0x36c], 0
call fcn.1002ce60
lea ecx, [edi + 0x980]
mov byte [ebp - 4], 0x2b
lea eax, [ebp - 0x380]
cmp ecx, eax
je 0x100636d3
cmp dword [ebp - 0x36c], 0xf
push dword [ebp - 0x370]
cmova eax, dword [ebp - 0x380]
push eax
call fcn.1002c940
lea ecx, [edi + 0x948]
lea eax, [ebp - 0x398]
cmp ecx, eax
je 0x100636fd
cmp dword [ebp - 0x384], 0xf
push dword [ebp - 0x388]
cmova eax, dword [ebp - 0x398]
push eax
call fcn.1002c940
mov byte [ebp - 4], 0x2a
mov ecx, dword [ebp - 0x36c]
mov dword [edi + 0x998], 0xff3cc897
mov dword [edi + 0x9b0], 0
cmp ecx, 0xf
jbe 0x1006374f
mov edx, dword [ebp - 0x380]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x10063745
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x10063a73
push ecx
push edx
call fcn.100af195
add esp, 8
mov dword [ebp - 4], 0xffffffff
mov ecx, dword [ebp - 0x384]
cmp ecx, 0xf
jbe 0x10063790
mov edx, dword [ebp - 0x398]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x10063786
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x10063a73
push ecx
push edx
call fcn.100af195
add esp, 8
mov eax, dword [edi + 0x96c]
lea ecx, [edi + 0x968]
mov dword [ebp - 0x18], 0x1002ec50
cmp eax, dword [ecx + 8]
je 0x100637b4
mov dword [eax], 0x1002ec50
add dword [ecx + 4], 4
jmp 0x100637be
lea edx, [ebp - 0x18]
push edx
push eax
call fcn.1002d4f0
mov dword [edi + 0x928], 0
lea ecx, [edi + 0x18]
mov dword [edi + 0x914], 0x14
mov dword [edi + 0x91c], 0xaf
mov eax, dword [edi + 0x2c]
mov dword [edi + 0x92c], eax
mov eax, dword [ecx + 4]
mov dword [ebp - 0x18], esi
cmp eax, dword [ecx + 8]
je 0x100637fb
mov dword [eax], esi
add dword [ecx + 4], 4
jmp 0x10063805
lea edx, [ebp - 0x18]
push edx
push eax
call fcn.1002d4f0
push 1
xorps xmm0, xmm0
mov dword [ebp - 0x3d0], 0
push 0x100bd408
lea ecx, [ebp - 0x3e0]
mov dword [ebp - 0x3cc], 0
lea esi, [edi + 0x9cc]
movups xmmword [ebp - 0x3e0], xmm0
call fcn.1004ee40
mov dword [ebp - 4], 0x2c
lea ecx, [ebp - 0x3c8]
push 0x15
xorps xmm0, xmm0
mov dword [ebp - 0x3b8], 0
push str.transparent_props_amt
movups xmmword [ebp - 0x3c8], xmm0
mov dword [ebp - 0x3b4], 0
call fcn.1002ce60
mov byte [ebp - 4], 0x2d
lea ecx, [ebp - 0x3b0]
push 0x11
xorps xmm0, xmm0
mov dword [ebp - 0x3a0], 0
push str.transparent_props
movups xmmword [ebp - 0x3b0], xmm0
mov dword [ebp - 0x39c], 0
call fcn.1002ce60
lea ecx, [edi + 0xa04]
mov byte [ebp - 4], 0x2e
lea eax, [ebp - 0x3c8]
cmp ecx, eax
je 0x100638d4
cmp dword [ebp - 0x3b4], 0xf
push dword [ebp - 0x3b8]
cmova eax, dword [ebp - 0x3c8]
push eax
call fcn.1002c940
lea ecx, [edi + 0xa54]
mov byte [edi + 0xa35], 1
lea eax, [ebp - 0x3b0]
cmp ecx, eax
je 0x10063905
cmp dword [ebp - 0x39c], 0xf
push dword [ebp - 0x3a0]
cmova eax, dword [ebp - 0x3b0]
push eax
call fcn.1002c940
xor eax, eax
mov dword [edi + 0xa40], 0
cmp byte [edi + 0xa35], al
mov ecx, 0xf
mov dword [edi + 0xa44], 0x42c80000
cmovne eax, ecx
mov dword [edi + 0xa3c], 0x42960000
mov dword [edi + 0xa84], eax
lea ecx, [edi + 0xa6c]
add eax, 8
mov dword [edi + 0xa50], 0
mov dword [edi + 0x9dc], eax
mov dword [edi + 0x9e0], eax
lea eax, [ebp - 0x3e0]
mov dword [edi + 0xa48], 0x3f800000
cmp ecx, eax
je 0x100639c6
cmp dword [ebp - 0x3cc], 7
mov esi, dword [ecx + 0x14]
cmova eax, dword [ebp - 0x3e0]
mov edx, dword [ebp - 0x3d0]
cmp edx, esi
ja 0x100639b2
mov dword [ebp - 0x18], ecx
cmp esi, 7
jbe 0x10063994
mov esi, dword [ecx]
mov dword [ebp - 0x18], esi
lea esi, [edx + edx]
mov dword [ecx + 0x10], edx
push esi
push eax
push dword [ebp - 0x18]
call sub.VCRUNTIME140.dll_memmove
mov eax, dword [ebp - 0x18]
add esp, 0xc
xor ecx, ecx
mov word [esi + eax], cx
jmp 0x100639c0
push eax
mov byte [ebp - 0x18], 0
push dword [ebp - 0x18]
push edx
call fcn.100815a0
lea esi, [edi + 0x9cc]
mov byte [ebp - 4], 0x2d
mov ecx, dword [ebp - 0x39c]
cmp ecx, 0xf
jbe 0x10063a00
mov edx, dword [ebp - 0x3b0]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x100639f6
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x10063a73
push ecx
push edx
call fcn.100af195
add esp, 8
mov byte [ebp - 4], 0x2c
mov ecx, dword [ebp - 0x3b4]
cmp ecx, 0xf
jbe 0x10063a3a
mov edx, dword [ebp - 0x3c8]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x10063a30
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x10063a73
push ecx
push edx
call fcn.100af195
add esp, 8
mov dword [ebp - 4], 0xffffffff
mov eax, dword [ebp - 0x3cc]
cmp eax, 7
jbe 0x10063a83
mov edx, dword [ebp - 0x3e0]
lea ecx, [eax*2 + 2]
mov eax, edx
cmp ecx, 0x1000
jb 0x10063a79
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
jbe 0x10063a79
call dword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
push ecx
push edx
call fcn.100af195
add esp, 8
mov dword [edi + 0xa30], fcn.100a18a0
lea ecx, [edi + 0x18]
mov dword [edi + 0x9e4], 0
mov dword [edi + 0x9d0], 0x14
mov dword [edi + 0x9d8], 0xaf
mov eax, dword [edi + 0x2c]
mov dword [edi + 0x9e8], eax
mov eax, dword [ecx + 4]
mov dword [ebp - 0x18], esi
cmp eax, dword [ecx + 8]
je 0x10063aca
mov dword [eax], esi
add dword [ecx + 4], 4
jmp 0x10063ad4
lea edx, [ebp - 0x18]
push edx
push eax
call fcn.1002d4f0
push 5
xorps xmm0, xmm0
mov dword [ebp - 0x70], 0
push str.night
lea ecx, [ebp - 0x80]
mov dword [ebp - 0x6c], 0
movups xmmword [ebp - 0x80], xmm0
call fcn.1002ce60
mov dword [ebp - 4], 0x2f
lea ecx, [ebp - 0x68]
push 0xa
xorps xmm0, xmm0
mov dword [ebp - 0x58], 0
push str.fullbright
movups xmmword [ebp - 0x68], xmm0
mov dword [ebp - 0x54], 0
call fcn.1002ce60
lea ecx, [ebp - 0x80]
mov dword [ebp - 4], 0x30
push ecx
lea eax, [ebp - 0x50]
push eax
push ecx
lea ecx, [ebp - 0xa4]
call fcn.10080ce0
mov byte [ebp - 4], 0x31
lea ecx, [ebp - 0x410]
push 5
xorps xmm0, xmm0
mov dword [ebp - 0x400], 0
push str.world
movups xmmword [ebp - 0x410], xmm0
mov dword [ebp - 0x3fc], 0
call fcn.1002ce60
mov byte [ebp - 4], 0x32
lea ecx, [ebp - 0x3f8]
push 0x15
xorps xmm0, xmm0
mov dword [ebp - 0x3e8], 0
push str.brightness_adjustment
movups xmmword [ebp - 0x3f8], xmm0
mov dword [ebp - 0x3e4], 0
call fcn.1002ce60
mov dword [ebp - 0x48], 0
mov dword [ebp - 0x44], 0
mov dword [ebp - 0x40], 0
lea ecx, [edi + 0xac0]
mov byte [ebp - 4], 0x34
lea eax, [ebp - 0x410]
cmp ecx, eax
je 0x10063be9
cmp dword [ebp - 0x3fc], 0xf
push dword [ebp - 0x400]
cmova eax, dword [ebp - 0x410]
push eax
call fcn.1002c940
lea ecx, [edi + 0xaf8]
mov byte [edi + 0xaf1], 1
lea eax, [ebp - 0x3f8]
cmp ecx, eax
je 0x10063c1a
cmp dword [ebp - 0x3e4], 0xf
push dword [ebp - 0x3e8]
cmova eax, dword [ebp - 0x3f8]
push eax
call fcn.1002c940
mov esi, dword [ebp - 0xa4]
xor eax, eax
cmp byte [edi + 0xaf1], al
mov ecx, 0xf
cmovne eax, ecx
mov dword [edi + 0xb2c], eax
add eax, 0x14
mov dword [edi + 0xa98], eax
mov dword [edi + 0xa9c], eax
mov eax, dword [ebp - 0xa0]
mov dword [ebp - 0x18], eax
cmp esi, eax
je 0x10063c99
lea ecx, [edi + 0xb10]
nop dword [eax + eax]
mov eax, dword [edi + 0xb14]
push esi
cmp eax, dword [edi + 0xb18]
je 0x10063c85
mov ecx, eax
call fcn.10031320
add dword [edi + 0xb14], 0x18
lea ecx, [edi + 0xb10]
jmp 0x10063c91
push eax
call fcn.1004f120
lea ecx, [edi + 0xb10]
add esi, 0x18
cmp esi, dword [ebp - 0x18]
jne 0x10063c60
mov byte [ebp - 4], 0x32
mov ecx, dword [ebp - 0x3e4]
cmp ecx, 0xf
jbe 0x10063cd3
mov edx, dword [ebp - 0x3f8]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x10063cc9
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x10063d03
push ecx
push edx
call fcn.100af195
add esp, 8
mov byte [ebp - 4], 0x31
mov ecx, dword [ebp - 0x3fc]
cmp ecx, 0xf
jbe 0x10063d13
mov edx, dword [ebp - 0x410]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x10063d09
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
jbe 0x10063d09
call dword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
push ecx
push edx
call fcn.100af195
add esp, 8
lea ecx, [ebp - 0xa4]
call fcn.1004ea10
push fcn.1002c5e0
push 2
push 0x18
lea eax, [ebp - 0x80]
mov dword [ebp - 4], 0xffffffff
push eax
call fcn.100aed66
mov dword [edi + 0xaec], 0x100a18a0
lea ecx, [edi + 0x18]
mov dword [edi + 0xaa0], 0
lea edx, [edi + 0xa88]
mov dword [edi + 0xa8c], 0x14
mov dword [edi + 0xa94], 0xaf
mov eax, dword [edi + 0x2c]
mov dword [edi + 0xaa4], eax
mov eax, dword [ecx + 4]
mov dword [ebp - 0x18], edx
cmp eax, dword [ecx + 8]
je 0x10063d84
mov dword [eax], edx
add dword [ecx + 4], 4
jmp 0x10063d8e
lea edx, [ebp - 0x18]
push edx
push eax
call fcn.1002d4f0
push 0xa
xorps xmm0, xmm0
mov dword [ebp - 0x40], 0
push str.nightcolor
lea ecx, [ebp - 0x50]
mov dword [ebp - 0x3c], 0
lea esi, [edi + 0xb30]
movups xmmword [ebp - 0x50], xmm0
call fcn.1002ce60
mov dword [ebp - 4], 0x35
lea ecx, [ebp - 0x458]
push 0xb
xorps xmm0, xmm0
mov dword [ebp - 0x448], 0
push str.world_color
movups xmmword [ebp - 0x458], xmm0
mov dword [ebp - 0x444], 0
call fcn.1002ce60
lea edx, [edi + 0xba0]
mov byte [ebp - 4], 0x36
lea eax, [ebp - 0x458]
cmp edx, eax
je 0x10063e18
mov ecx, eax
call fcn.1002ca70
push dword [ebp - 0x448]
mov ecx, edx
push eax
call fcn.1002c940
lea eax, [ebp - 0x50]
push eax
lea ecx, [edi + 0xb68]
call fcn.100492c0
lea ecx, [ebp - 0x458]
mov dword [edi + 0xbb8], 0xff2e292b
mov dword [edi + 0xbd0], 0
call fcn.1002c5e0
lea ecx, [ebp - 0x50]
mov dword [ebp - 4], 0xffffffff
call fcn.1002c5e0
lea eax, [ebp - 0x18]
mov dword [edi + 0xb94], 0x100a18a0
lea ecx, [esi + 0x58]
mov dword [ebp - 0x18], 0x1002ec60
push eax
call fcn.10040cb0
mov dword [edi + 0xb48], 0
lea ecx, [edi + 0x18]
mov dword [edi + 0xb34], 0x14
mov dword [edi + 0xb3c], 0xaf
mov eax, dword [edi + 0x2c]
mov dword [edi + 0xb4c], eax
lea eax, [ebp - 0x18]
push eax
mov dword [ebp - 0x18], esi
call fcn.10040cb0
push str.propscolor
lea ecx, [ebp - 0xb0]
lea esi, [edi + 0xbec]
call fcn.1002c630
push str.props_color
lea ecx, [ebp - 0x50]
mov dword [ebp - 4], 0x37
call fcn.1002c630
lea eax, [ebp - 0x50]
mov byte [ebp - 4], 0x38
push eax
lea ecx, [edi + 0xc5c]
call fcn.100492c0
lea eax, [ebp - 0xb0]
push eax
lea ecx, [edi + 0xc24]
call fcn.100492c0
lea ecx, [ebp - 0x50]
mov dword [edi + 0xc74], 0xff808080
mov dword [edi + 0xc8c], 0
call fcn.1002c5e0
lea ecx, [ebp - 0xb0]
mov dword [ebp - 4], 0xffffffff
call fcn.1002c5e0
mov dword [edi + 0xc50], 0x100a18a0
lea ecx, [edi + 0x18]
mov dword [esi + 0x18], 0
mov dword [esi + 4], 0x14
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.10040cb0
push str.remove_visual_recoil
lea ecx, [ebp - 0x5a8]
call fcn.1002c630
push str.remove_smoke
lea ecx, [ebp - 0x590]
mov dword [ebp - 4], 0x39
call fcn.1002c630
push str.remove_fog
lea ecx, [ebp - 0x578]
mov byte [ebp - 4], 0x3a
call fcn.1002c630
mov byte [ebp - 4], 0x3b
lea ecx, [ebp - 0x560]
push str.remove_flashbang
call fcn.1002c630
push str.remove_scope_overlay
lea ecx, [ebp - 0x548]
mov byte [ebp - 4], 0x3c
call fcn.1002c630
push str.remove_teammate_render
lea ecx, [ebp - 0x530]
mov byte [ebp - 4], 0x3d
call fcn.1002c630
push str.remove_sleeves
lea ecx, [ebp - 0x518]
mov byte [ebp - 4], 0x3e
call fcn.1002c630
push str.remove_feet_shadow
lea ecx, [ebp - 0x500]
mov byte [ebp - 4], 0x3f
call fcn.1002c630
push str.remove_shadows
lea ecx, [ebp - 0x4e8]
mov byte [ebp - 4], 0x40
call fcn.1002c630
push str.disable_post_processing
lea ecx, [ebp - 0x4d0]
mov byte [ebp - 4], 0x41
call fcn.1002c630
lea ecx, [ebp - 0x5a8]
mov dword [ebp - 4], 0x42
push ecx
lea eax, [ebp - 0x4b8]
push eax
push ecx
lea ecx, [ebp - 0x44]
call fcn.10080ce0
push str.removals
lea ecx, [ebp - 0x68]
mov byte [ebp - 4], 0x43
call fcn.1002c630
push str.removals
lea ecx, [ebp - 0x38]
mov byte [ebp - 4], 0x44
call fcn.1002c630
mov dword [ebp - 0xa8], 0
mov dword [ebp - 0xa4], 0
mov dword [ebp - 0xa0], 0
lea eax, [ebp - 0x68]
mov byte [ebp - 4], 0x46
push eax
lea ecx, [edi + 0xd68]
call fcn.100492c0
lea eax, [ebp - 0x38]
mov byte [edi + 0xd99], 1
push eax
lea ecx, [edi + 0xda0]
call fcn.100492c0
mov esi, dword [ebp - 0x44]
xor eax, eax
cmp byte [edi + 0xd99], al
mov ecx, 0xf
cmovne eax, ecx
mov dword [edi + 0xdd4], eax
add eax, 0x14
mov dword [edi + 0xd40], eax
mov dword [edi + 0xd44], eax
mov eax, dword [ebp - 0x40]
mov dword [ebp - 0x18], eax
cmp esi, eax
je 0x100640fa
lea eax, [edi + 0xdb8]
mov edi, dword [ebp - 0x18]
mov dword [ebp - 0x1c], eax
push esi
mov ecx, eax
call fcn.1004e720
mov eax, dword [ebp - 0x1c]
add esi, 0x18
cmp esi, edi
jne 0x100640e5
mov edi, dword [ebp - 0x20]
lea ecx, [ebp - 0xa8]
call fcn.1002bad0
lea ecx, [ebp - 0x38]
call fcn.1002c5e0
lea ecx, [ebp - 0x68]
call fcn.1002c5e0
lea ecx, [ebp - 0x44]
call fcn.1004ea10
push fcn.1002c5e0
push 0xa
push 0x18
lea eax, [ebp - 0x5a8]
mov dword [ebp - 4], 0xffffffff
push eax
call fcn.100aed66
mov dword [edi + 0xd48], 1
lea eax, [edi + 0xd30]
mov dword [edi + 0xd34], 0xff
lea ecx, [edi + 0x18]
mov dword [ebp - 0x1c], eax
mov dword [edi + 0xd3c], 0xaf
mov eax, dword [edi + 0x2c]
mov dword [edi + 0xd4c], eax
lea eax, [ebp - 0x1c]
push eax
call fcn.10040cb0
push str.spectators
lea ecx, [ebp - 0x38]
lea esi, [edi + 0xdd8]
call fcn.1002c630
push str.show_spectator_list
lea ecx, [ebp - 0x68]
mov dword [ebp - 4], 0x47
call fcn.1002c630
lea eax, [ebp - 0x38]
mov byte [ebp - 4], 0x48
push eax
lea ecx, [edi + 0xe10]
call fcn.100492c0
lea eax, [ebp - 0x68]
mov byte [edi + 0xe41], 1
push eax
lea ecx, [edi + 0xe48]
call fcn.100492c0
lea ecx, [ebp - 0x68]
mov byte [edi + 0xe44], 0
call fcn.1002c5e0
lea ecx, [ebp - 0x38]
mov dword [ebp - 4], 0xffffffff
call fcn.1002c5e0
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 - 0x1c]
push eax
mov dword [ebp - 0x1c], esi
call fcn.10040cb0
push str.force_xhair
lea ecx, [ebp - 0x38]
lea esi, [edi + 0xe60]
call fcn.1002c630
push str.force_crosshair
lea ecx, [ebp - 0x68]
mov dword [ebp - 4], 0x49
call fcn.1002c630
lea eax, [ebp - 0x38]
mov byte [ebp - 4], 0x4a
push eax
lea ecx, [edi + 0xe98]
call fcn.100492c0
lea eax, [ebp - 0x68]
mov byte [edi + 0xec9], 1
push eax
lea ecx, [edi + 0xed0]
call fcn.100492c0
lea ecx, [ebp - 0x68]
mov byte [edi + 0xecc], 0
call fcn.1002c5e0
lea ecx, [ebp - 0x38]
mov dword [ebp - 4], 0xffffffff
call fcn.1002c5e0
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 - 0x1c]
push eax
mov dword [ebp - 0x1c], esi
call fcn.10040cb0
push str.pen_xhair
lea ecx, [ebp - 0x38]
lea esi, [edi + 0xee8]
call fcn.1002c630
push str.penetration_crosshair
lea ecx, [ebp - 0x68]
mov dword [ebp - 4], 0x4b
call fcn.1002c630
lea eax, [ebp - 0x38]
mov byte [ebp - 4], 0x4c
push eax
lea ecx, [edi + 0xf20]
call fcn.100492c0
lea eax, [ebp - 0x68]
mov byte [edi + 0xf51], 1
push eax
lea ecx, [edi + 0xf58]
call fcn.100492c0
lea ecx, [ebp - 0x68]
mov byte [edi + 0xf54], 0
call fcn.1002c5e0
lea ecx, [ebp - 0x38]
mov dword [ebp - 4], 0xffffffff
call fcn.1002c5e0
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 - 0x1c]
push eax
mov dword [ebp - 0x1c], esi
call fcn.10040cb0
push str.rectangle_filled
lea ecx, [ebp - 0x4a0]
call fcn.1002c630
push str.rectangle_outline
lea ecx, [ebp - 0x488]
mov dword [ebp - 4], 0x4d
call fcn.1002c630
push str.gamesense_style
lea ecx, [ebp - 0x470]
mov byte [ebp - 4], 0x4e
call fcn.1002c630
lea ecx, [ebp - 0x4a0]
mov dword [ebp - 4], 0x4f
push ecx
lea eax, [ebp - 0x458]
push eax
push ecx
lea ecx, [ebp - 0x44]
call fcn.10080ce0
push str.pen_crosshair_style
lea ecx, [ebp - 0x68]
mov byte [ebp - 4], 0x50
call fcn.1002c630
push 0x100bb67c
lea ecx, [ebp - 0x38]
mov byte [ebp - 4], 0x51
call fcn.1002c630
lea eax, [ebp - 0x68]
mov byte [ebp - 4], 0x52
push eax
lea ecx, [edi + 0xfa8]
call fcn.100492c0
mov eax, dword [ebp - 0x40]
mov esi, dword [ebp - 0x44]
mov byte [edi + 0xfd9], 0
mov dword [edi + 0x100c], 0
mov dword [edi + 0xf80], 0x14
mov dword [edi + 0xf84], 0x14
mov dword [ebp - 0x1c], eax
cmp esi, eax
je 0x10064425
lea eax, [edi + 0xff8]
mov edi, dword [ebp - 0x1c]
mov dword [ebp - 0x18], eax
nop dword [eax]
push esi
mov ecx, eax
call fcn.1004e720
mov eax, dword [ebp - 0x18]
add esi, 0x18
cmp esi, edi
jne 0x10064410
mov edi, dword [ebp - 0x20]
lea ecx, [edi + 0xff8]
call fcn.10031240
test eax, eax
je 0x1006443e
mov dword [edi + 0x1008], 0
lea ecx, [ebp - 0x38]
call fcn.1002c5e0
lea ecx, [ebp - 0x68]
call fcn.1002c5e0
lea ecx, [ebp - 0x44]
call fcn.1004ea10
push fcn.1002c5e0
push 3
push 0x18
lea eax, [ebp - 0x4a0]
mov dword [ebp - 4], 0xffffffff
push eax
call fcn.100aed66
lea eax, [ebp - 0x1c]
mov dword [ebp - 0x1c], 0x1002ec30
lea ecx, [edi + 0xfc8]
push eax
call fcn.10040cb0
mov dword [edi + 0xf88], 1
lea eax, [edi + 0xf70]
mov dword [edi + 0xf74], 0xff
lea ecx, [edi + 0x18]
mov dword [ebp - 0x1c], eax
mov dword [edi + 0xf7c], 0xaf
mov eax, dword [edi + 0x2c]
mov dword [edi + 0xf8c], eax
lea eax, [ebp - 0x1c]
push eax
call fcn.10040cb0
mov esi, dword [0x100bc4a8]
lea ecx, [ebp - 0x38]
push str.pen_can_hit
add edi, 0x10cc
call fcn.1002c630
push str.penetration_crosshair_can_hit
lea ecx, [ebp - 0x68]
mov dword [ebp - 4], 0x53
call fcn.1002c630
mov ecx, dword [ebp - 0x20]
lea eax, [ebp - 0x68]
push eax
add ecx, 0x113c
mov byte [ebp - 4], 0x54
call fcn.100492c0
mov ecx, dword [ebp - 0x20]
lea eax, [ebp - 0x38]
push eax
lea ecx, [ecx + 0x1104]
call fcn.100492c0
mov eax, dword [ebp - 0x20]
lea ecx, [ebp - 0x68]
mov dword [eax + 0x1154], esi
mov esi, eax
mov dword [esi + 0x116c], 0
call fcn.1002c5e0
lea ecx, [ebp - 0x38]
mov dword [ebp - 4], 0xffffffff
call fcn.1002c5e0
lea eax, [ebp - 0x1c]
mov dword [ebp - 0x1c], 0x1002ec30
lea ecx, [edi + 0x58]
push eax
call fcn.10040cb0
mov dword [esi + 0x10e4], 1
lea ecx, [esi + 0x18]
mov dword [esi + 0x10d0], 0xff
mov dword [esi + 0x10d8], 0xaf
mov eax, dword [esi + 0x2c]
mov dword [esi + 0x10e8], eax
lea eax, [ebp - 0x1c]
push eax
mov dword [ebp - 0x1c], edi
call fcn.10040cb0
lea edi, [esi + 0x1010]
mov esi, dword [0x100bc4b8]
push str.pen_cant_hit
lea ecx, [ebp - 0x38]
call fcn.1002c630
push str.penetration_crosshair_cant_hit
lea ecx, [ebp - 0x68]
mov dword [ebp - 4], 0x55
call fcn.1002c630
mov ecx, dword [ebp - 0x20]
lea eax, [ebp - 0x68]
push eax
mov byte [ebp - 4], 0x56
lea ecx, [ecx + 0x1080]
call fcn.100492c0
mov ecx, dword [ebp - 0x20]
lea eax, [ebp - 0x38]
push eax
lea ecx, [ecx + 0x1048]
call fcn.100492c0
mov eax, dword [ebp - 0x20]
lea ecx, [ebp - 0x68]
mov dword [eax + 0x1098], esi
mov dword [eax + 0x10b0], 0
call fcn.1002c5e0
lea ecx, [ebp - 0x38]
mov dword [ebp - 4], 0xffffffff
call fcn.1002c5e0
lea eax, [ebp - 0x1c]
mov dword [ebp - 0x1c], 0x1002ec30
lea ecx, [edi + 0x58]
push eax
call fcn.10040cb0
mov dword [ebp - 0x1c], edi
mov edi, dword [ebp - 0x20]
mov dword [edi + 0x1028], 1
lea ecx, [edi + 0x18]
mov dword [edi + 0x1014], 0xff
mov dword [edi + 0x101c], 0xaf
mov eax, dword [edi + 0x2c]
mov dword [edi + 0x102c], eax
lea eax, [ebp - 0x1c]
push eax
call fcn.10040cb0
push str.tracers
lea ecx, [ebp - 0x38]
lea esi, [edi + 0x1188]
call fcn.1002c630
push str.grenade_trajectory
lea ecx, [ebp - 0x68]
mov dword [ebp - 4], 0x57
call fcn.1002c630
lea eax, [ebp - 0x38]
mov byte [ebp - 4], 0x58
push eax
lea ecx, [edi + 0x11c0]
call fcn.100492c0
lea eax, [ebp - 0x68]
mov byte [edi + 0x11f1], 1
push eax
lea ecx, [edi + 0x11f8]
call fcn.100492c0
lea ecx, [ebp - 0x68]
mov byte [edi + 0x11f4], 0
call fcn.1002c5e0
lea ecx, [ebp - 0x38]
mov dword [ebp - 4], 0xffffffff
call fcn.1002c5e0
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 - 0x1c]
push eax
mov dword [ebp - 0x1c], esi
call fcn.10040cb0
mov esi, dword [0x100bc4a0]
lea ecx, [ebp - 0x38]
push 0x100be87c
add edi, 0x1210
call fcn.1002c630
push str.grenade_trajectory_color
lea ecx, [ebp - 0x68]
mov dword [ebp - 4], 0x59
call fcn.1002c630
mov ecx, dword [ebp - 0x20]
lea eax, [ebp - 0x68]
push eax
mov byte [ebp - 4], 0x5a
lea ecx, [ecx + 0x1280]
call fcn.100492c0
mov ecx, dword [ebp - 0x20]
lea eax, [ebp - 0x38]
push eax
lea ecx, [ecx + 0x1248]
call fcn.100492c0
mov eax, dword [ebp - 0x20]
lea ecx, [ebp - 0x68]
mov dword [eax + 0x1298], esi
mov dword [eax + 0x12b0], 0
call fcn.1002c5e0
lea ecx, [ebp - 0x38]
mov dword [ebp - 4], 0xffffffff
call fcn.1002c5e0
lea eax, [ebp - 0x1c]
mov dword [ebp - 0x1c], 0x1002ec20
lea ecx, [edi + 0x58]
push eax
call fcn.10040cb0
mov dword [ebp - 0x1c], edi
mov edi, dword [ebp - 0x20]
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 - 0x1c]
push eax
call fcn.10040cb0
push 0x100be85c
lea ecx, [ebp - 0x38]
lea esi, [edi + 0x12cc]
call fcn.1002c630
push str.bullet_impacts
lea ecx, [ebp - 0x68]
mov dword [ebp - 4], 0x5b
call fcn.1002c630
lea eax, [ebp - 0x38]
mov byte [ebp - 4], 0x5c
push eax
lea ecx, [edi + 0x1304]
call fcn.100492c0
lea eax, [ebp - 0x68]
mov byte [edi + 0x1335], 1
push eax
lea ecx, [edi + 0x133c]
call fcn.100492c0
lea ecx, [ebp - 0x68]
mov byte [edi + 0x1338], 0
call fcn.1002c5e0
lea ecx, [ebp - 0x38]
mov dword [ebp - 4], 0xffffffff
call fcn.1002c5e0
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 - 0x1c]
push eax
mov dword [ebp - 0x1c], esi
call fcn.10040cb0
push 0x100be8ec
lea ecx, [ebp - 0x38]
lea esi, [edi + 0x1354]
call fcn.1002c630
push str.bullet_impacts_clientside
lea ecx, [ebp - 0x68]
mov dword [ebp - 4], 0x5d
call fcn.1002c630
lea eax, [ebp - 0x68]
mov byte [ebp - 4], 0x5e
push eax
lea ecx, [edi + 0x13c4]
call fcn.100492c0
lea eax, [ebp - 0x38]
push eax
lea ecx, [edi + 0x138c]
call fcn.100492c0
lea ecx, [ebp - 0x68]
mov dword [edi + 0x13dc], 0x7d0000ff
mov dword [edi + 0x13f4], 0
call fcn.1002c5e0
lea ecx, [ebp - 0x38]
mov dword [ebp - 4], 0xffffffff
call fcn.1002c5e0
lea eax, [ebp - 0x1c]
mov dword [ebp - 0x1c], 0x1002ec40
lea ecx, [esi + 0x58]
push eax
call fcn.10040cb0
mov dword [edi + 0x136c], 1
lea ecx, [edi + 0x18]
mov dword [edi + 0x1358], 0xff
mov dword [edi + 0x1360], 0xaf
mov eax, dword [edi + 0x2c]
mov dword [edi + 0x1370], eax
lea eax, [ebp - 0x1c]
push eax
mov dword [ebp - 0x1c], esi
call fcn.10040cb0
push 0x100be8b4
lea ecx, [ebp - 0x38]
lea esi, [edi + 0x1410]
call fcn.1002c630
push str.bullet_impacts_serverside
lea ecx, [ebp - 0x68]
mov dword [ebp - 4], 0x5f
call fcn.1002c630
lea eax, [ebp - 0x68]
mov byte [ebp - 4], 0x60
push eax
lea ecx, [edi + 0x1480]
call fcn.100492c0
lea eax, [ebp - 0x38]
push eax
lea ecx, [edi + 0x1448]
call fcn.100492c0
lea ecx, [ebp - 0x68]
mov dword [edi + 0x1498], 0x7dff0000
mov dword [edi + 0x14b0], 0
call fcn.1002c5e0
lea ecx, [ebp - 0x38]
mov dword [ebp - 4], 0xffffffff
call fcn.1002c5e0
lea eax, [ebp - 0x1c]
mov dword [ebp - 0x1c], 0x1002ec40
lea ecx, [esi + 0x58]
push eax
call fcn.10040cb0
mov dword [edi + 0x1428], 1
lea ecx, [edi + 0x18]
mov dword [edi + 0x1414], 0xff
mov dword [edi + 0x141c], 0xaf
mov eax, dword [edi + 0x2c]
mov dword [edi + 0x142c], eax
lea eax, [ebp - 0x1c]
push eax
mov dword [ebp - 0x1c], esi
call fcn.10040cb0
lea esi, [edi + 0x14cc]
push 0x100bd7a8
lea ecx, [ebp - 0x50]
call fcn.10081060
push 0x100be93c
lea ecx, [ebp - 0x38]
mov dword [ebp - 4], 0x61
call fcn.1002c630
push str.bullet_impact_time
lea ecx, [ebp - 0x68]
mov byte [ebp - 4], 0x62
call fcn.1002c630
lea eax, [ebp - 0x38]
mov byte [ebp - 4], 0x63
push eax
lea ecx, [edi + 0x1504]
call fcn.100492c0
lea eax, [ebp - 0x68]
mov byte [edi + 0x1535], 1
push eax
lea ecx, [edi + 0x1554]
call fcn.100492c0
xor eax, eax
mov dword [edi + 0x1540], 0x3f800000
cmp byte [edi + 0x1535], al
mov ecx, 0xf
mov dword [edi + 0x1544], 0x41a00000
cmovne eax, ecx
mov dword [edi + 0x153c], 0x40800000
mov dword [edi + 0x1584], eax
lea ecx, [edi + 0x156c]
add eax, 8
mov dword [edi + 0x1550], 0
mov dword [edi + 0x14dc], eax
mov dword [edi + 0x14e0], eax
lea eax, [ebp - 0x50]
push eax
mov dword [edi + 0x1548], 0x3f800000
call fcn.10080ff0
lea ecx, [ebp - 0x68]
call fcn.1002c5e0
lea ecx, [ebp - 0x38]
call fcn.1002c5e0
lea ecx, [ebp - 0x50]
mov dword [ebp - 4], 0xffffffff
call fcn.1004e8c0
lea eax, [ebp - 0x1c]
mov dword [ebp - 0x1c], 0x1002ec40
lea ecx, [esi + 0x58]
push eax
call fcn.10040cb0
mov dword [edi + 0x14e4], 1
lea ecx, [edi + 0x18]
mov dword [edi + 0x14d0], 0xff
mov dword [edi + 0x14d8], 0xaf
mov eax, dword [edi + 0x2c]
mov dword [edi + 0x14e8], eax
lea eax, [ebp - 0x1c]
push eax
mov dword [ebp - 0x1c], esi
call fcn.10040cb0
push str.thirdperson
lea ecx, [ebp - 0x38]
lea esi, [edi + 0x1588]
call fcn.1002c630
push str.thirdperson
lea ecx, [ebp - 0x68]
mov dword [ebp - 4], 0x64
call fcn.1002c630
lea eax, [ebp - 0x68]
mov byte [ebp - 4], 0x65
push eax
lea ecx, [edi + 0x15f8]
call fcn.100492c0
lea eax, [ebp - 0x38]
push eax
lea ecx, [edi + 0x15c0]
call fcn.100492c0
mov dword [edi + 0x15f4], 0xffffffff
lea ecx, [ebp - 0x68]
call fcn.1002c5e0
lea ecx, [ebp - 0x38]
mov dword [ebp - 4], 0xffffffff
call fcn.1002c5e0
mov dword [edi + 0x1614], 0x1002eb80
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 - 0x1c]
push eax
mov dword [ebp - 0x1c], esi
call fcn.10040cb0
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.100aed1a
mov esp, ebp
pop ebp
mov esp, ebx
pop ebx
ret