Function at 0x10050220
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 0x1009daf6
mov eax, dword fs:[0]
push eax
push ebx
sub esp, 0x528
mov eax, dword [0x100b3380]
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 - 0x5c], 0
push str.visuals
lea ecx, [ebp - 0x6c]
mov dword [ebp - 0x58], 0
movups xmmword [ebp - 0x6c], xmm0
call fcn.1001f110
lea eax, [ebp - 0x6c]
mov dword [ebp - 4], 0
cmp edi, eax
je 0x100502ab
cmp dword [ebp - 0x58], 0xf
mov ecx, edi
push dword [ebp - 0x5c]
cmova eax, dword [ebp - 0x6c]
push eax
call fcn.1001e8e0
mov dword [ebp - 4], 0xffffffff
mov ecx, dword [ebp - 0x58]
cmp ecx, 0xf
jbe 0x100502e6
mov edx, dword [ebp - 0x6c]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x100502dc
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x100528ea
push ecx
push edx
call fcn.10096b77
add esp, 8
push 4
xorps xmm0, xmm0
mov dword [ebp - 0x408], 0
push str.text
lea ecx, [ebp - 0x418]
mov dword [ebp - 0x404], 0
movups xmmword [ebp - 0x418], xmm0
call fcn.1001f110
mov dword [ebp - 4], 1
lea ecx, [ebp - 0x400]
push 5
xorps xmm0, xmm0
mov dword [ebp - 0x3f0], 0
push str.ammo
movups xmmword [ebp - 0x400], xmm0
mov dword [ebp - 0x3ec], 0
call fcn.1001f110
lea ecx, [ebp - 0x418]
mov dword [ebp - 4], 2
push ecx
lea eax, [ebp - 0x3e8]
push eax
push ecx
lea ecx, [ebp - 0x44]
call fcn.1006a4e0
mov byte [ebp - 4], 3
lea ecx, [ebp - 0x9c]
push 5
xorps xmm0, xmm0
mov dword [ebp - 0x8c], 0
push str.items
movups xmmword [ebp - 0x9c], xmm0
mov dword [ebp - 0x88], 0
call fcn.1001f110
mov byte [ebp - 4], 4
lea ecx, [ebp - 0x84]
push 0xf
xorps xmm0, xmm0
mov dword [ebp - 0x74], 0
push str.dropped_weapons
movups xmmword [ebp - 0x84], xmm0
mov dword [ebp - 0x70], 0
call fcn.1001f110
mov dword [ebp - 0x30], 0
mov dword [ebp - 0x2c], 0
mov dword [ebp - 0x28], 0
lea ecx, [edi + 0x68]
mov byte [ebp - 4], 6
lea eax, [ebp - 0x9c]
cmp ecx, eax
je 0x1005040d
cmp dword [ebp - 0x88], 0xf
push dword [ebp - 0x8c]
cmova eax, dword [ebp - 0x9c]
push eax
call fcn.1001e8e0
lea ecx, [edi + 0xa0]
mov byte [edi + 0x99], 1
lea eax, [ebp - 0x84]
cmp ecx, eax
je 0x10050438
cmp dword [ebp - 0x70], 0xf
push dword [ebp - 0x74]
cmova eax, dword [ebp - 0x84]
push eax
call fcn.1001e8e0
mov esi, dword [ebp - 0x44]
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 - 0x40]
mov dword [ebp - 0x1c], eax
cmp esi, eax
je 0x100504a3
lea ecx, [edi + 0xb8]
nop word [eax + eax]
mov eax, dword [edi + 0xbc]
push esi
cmp eax, dword [edi + 0xc0]
je 0x1005048f
mov ecx, eax
call fcn.10023860
add dword [edi + 0xbc], 0x18
jmp 0x10050495
push eax
call fcn.1003f950
add esi, 0x18
lea ecx, [edi + 0xb8]
cmp esi, dword [ebp - 0x1c]
jne 0x10050470
mov byte [ebp - 4], 4
mov ecx, dword [ebp - 0x70]
cmp ecx, 0xf
jbe 0x100504da
mov edx, dword [ebp - 0x84]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x100504d0
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x1005050a
push ecx
push edx
call fcn.10096b77
add esp, 8
mov byte [ebp - 4], 3
mov ecx, dword [ebp - 0x88]
cmp ecx, 0xf
jbe 0x1005051a
mov edx, dword [ebp - 0x9c]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x10050510
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
jbe 0x10050510
call dword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
push ecx
push edx
call fcn.10096b77
add esp, 8
lea ecx, [ebp - 0x44]
call fcn.1003f540
push fcn.1001e520
push 2
push 0x18
lea eax, [ebp - 0x418]
mov dword [ebp - 4], 0xffffffff
push eax
call fcn.10096748
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 0x10050572
mov dword [eax], ecx
add dword [esi + 4], 4
jmp 0x1005057e
lea ecx, [ebp - 0x1c]
push ecx
push eax
mov ecx, esi
call fcn.1001f890
push 0xa
xorps xmm0, xmm0
mov dword [ebp - 0xbc], 0
push str.item_color
lea ecx, [ebp - 0xcc]
mov dword [ebp - 0xb8], 0
movups xmmword [ebp - 0xcc], xmm0
call fcn.1001f110
mov dword [ebp - 4], 7
lea ecx, [ebp - 0xb4]
push 0x15
xorps xmm0, xmm0
mov dword [ebp - 0xa4], 0
push str.dropped_weapons_color
movups xmmword [ebp - 0xb4], xmm0
mov dword [ebp - 0xa0], 0
call fcn.1001f110
lea ecx, [edi + 0x148]
mov byte [ebp - 4], 8
lea eax, [ebp - 0xb4]
cmp ecx, eax
je 0x10050613
cmp dword [ebp - 0xa0], 0xf
push dword [ebp - 0xa4]
cmova eax, dword [ebp - 0xb4]
push eax
call fcn.1001e8e0
lea ecx, [edi + 0x110]
lea eax, [ebp - 0xcc]
cmp ecx, eax
je 0x1005063d
cmp dword [ebp - 0xb8], 0xf
push dword [ebp - 0xbc]
cmova eax, dword [ebp - 0xcc]
push eax
call fcn.1001e8e0
mov byte [ebp - 4], 7
mov ecx, dword [ebp - 0xa0]
mov dword [edi + 0x160], 0xb4ffffff
mov dword [edi + 0x178], 0
cmp ecx, 0xf
jbe 0x1005068f
mov edx, dword [ebp - 0xb4]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x10050685
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x100528ea
push ecx
push edx
call fcn.10096b77
add esp, 8
mov dword [ebp - 4], 0xffffffff
mov ecx, dword [ebp - 0xb8]
cmp ecx, 0xf
jbe 0x100506d0
mov edx, dword [ebp - 0xcc]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x100506c6
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x100528ea
push ecx
push edx
call fcn.10096b77
add esp, 8
mov eax, dword [edi + 0x134]
lea ecx, [edi + 0x130]
mov dword [ebp - 0x1c], 0x10022e90
cmp eax, dword [ecx + 8]
je 0x100506f4
mov dword [eax], 0x10022e90
add dword [ecx + 4], 4
jmp 0x100506fe
lea edx, [ebp - 0x1c]
push edx
push eax
call fcn.1001f890
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 0x1005073e
mov dword [eax], ecx
add dword [esi + 4], 4
jmp 0x1005074a
lea ecx, [ebp - 0x1c]
push ecx
push eax
mov ecx, esi
call fcn.1001f890
push 4
xorps xmm0, xmm0
mov dword [ebp - 0xec], 0
push str.proj
lea ecx, [ebp - 0xfc]
mov dword [ebp - 0xe8], 0
movups xmmword [ebp - 0xfc], xmm0
call fcn.1001f110
mov dword [ebp - 4], 9
lea ecx, [ebp - 0xe4]
push 0xb
xorps xmm0, xmm0
mov dword [ebp - 0xd4], 0
push str.projectiles
movups xmmword [ebp - 0xe4], xmm0
mov dword [ebp - 0xd0], 0
call fcn.1001f110
lea ecx, [edi + 0x1cc]
mov byte [ebp - 4], 0xa
lea eax, [ebp - 0xfc]
cmp ecx, eax
je 0x100507df
cmp dword [ebp - 0xe8], 0xf
push dword [ebp - 0xec]
cmova eax, dword [ebp - 0xfc]
push eax
call fcn.1001e8e0
lea ecx, [edi + 0x204]
mov byte [edi + 0x1fd], 1
lea eax, [ebp - 0xe4]
cmp ecx, eax
je 0x10050810
cmp dword [ebp - 0xd0], 0xf
push dword [ebp - 0xd4]
cmova eax, dword [ebp - 0xe4]
push eax
call fcn.1001e8e0
mov byte [ebp - 4], 9
mov ecx, dword [ebp - 0xd0]
mov byte [edi + 0x200], 0
cmp ecx, 0xf
jbe 0x10050855
mov edx, dword [ebp - 0xe4]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x1005084b
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x100528ea
push ecx
push edx
call fcn.10096b77
add esp, 8
mov dword [ebp - 4], 0xffffffff
mov ecx, dword [ebp - 0xe8]
cmp ecx, 0xf
jbe 0x10050896
mov edx, dword [ebp - 0xfc]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x1005088c
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x100528ea
push ecx
push edx
call fcn.10096b77
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 0x100508d6
mov dword [eax], ecx
add dword [esi + 4], 4
jmp 0x100508e2
lea ecx, [ebp - 0x1c]
push ecx
push eax
mov ecx, esi
call fcn.1001f890
push 0xa
xorps xmm0, xmm0
mov dword [ebp - 0x11c], 0
push str.proj_color
lea ecx, [ebp - 0x12c]
mov dword [ebp - 0x118], 0
movups xmmword [ebp - 0x12c], xmm0
call fcn.1001f110
mov dword [ebp - 4], 0xb
lea ecx, [ebp - 0x114]
push 0x11
xorps xmm0, xmm0
mov dword [ebp - 0x104], 0
push str.projectiles_color
movups xmmword [ebp - 0x114], xmm0
mov dword [ebp - 0x100], 0
call fcn.1001f110
lea ecx, [edi + 0x28c]
mov byte [ebp - 4], 0xc
lea eax, [ebp - 0x114]
cmp ecx, eax
je 0x10050977
cmp dword [ebp - 0x100], 0xf
push dword [ebp - 0x104]
cmova eax, dword [ebp - 0x114]
push eax
call fcn.1001e8e0
lea ecx, [edi + 0x254]
lea eax, [ebp - 0x12c]
cmp ecx, eax
je 0x100509a1
cmp dword [ebp - 0x118], 0xf
push dword [ebp - 0x11c]
cmova eax, dword [ebp - 0x12c]
push eax
call fcn.1001e8e0
mov byte [ebp - 4], 0xb
mov ecx, dword [ebp - 0x100]
mov dword [edi + 0x2a4], 0xb4ffffff
mov dword [edi + 0x2bc], 0
cmp ecx, 0xf
jbe 0x100509f3
mov edx, dword [ebp - 0x114]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x100509e9
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x100528ea
push ecx
push edx
call fcn.10096b77
add esp, 8
mov dword [ebp - 4], 0xffffffff
mov ecx, dword [ebp - 0x118]
cmp ecx, 0xf
jbe 0x10050a34
mov edx, dword [ebp - 0x12c]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x10050a2a
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x100528ea
push ecx
push edx
call fcn.10096b77
add esp, 8
mov eax, dword [edi + 0x278]
lea ecx, [edi + 0x274]
mov dword [ebp - 0x1c], 0x10022ed0
cmp eax, dword [ecx + 8]
je 0x10050a58
mov dword [eax], 0x10022ed0
add dword [ecx + 4], 4
jmp 0x10050a62
lea edx, [ebp - 0x1c]
push edx
push eax
call fcn.1001f890
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 0x10050aa2
mov dword [eax], ecx
add dword [esi + 4], 4
jmp 0x10050aae
lea ecx, [ebp - 0x1c]
push ecx
push eax
mov ecx, esi
call fcn.1001f890
push 0xa
xorps xmm0, xmm0
mov dword [ebp - 0x14c], 0
push 0x100a6564
lea ecx, [ebp - 0x15c]
mov dword [ebp - 0x148], 0
movups xmmword [ebp - 0x15c], xmm0
call fcn.1001f110
mov dword [ebp - 4], 0xd
lea ecx, [ebp - 0x144]
push 0xa
xorps xmm0, xmm0
mov dword [ebp - 0x134], 0
push str.planted_c4
movups xmmword [ebp - 0x144], xmm0
mov dword [ebp - 0x130], 0
call fcn.1001f110
lea ecx, [edi + 0x310]
mov byte [ebp - 4], 0xe
lea eax, [ebp - 0x15c]
cmp ecx, eax
je 0x10050b43
cmp dword [ebp - 0x148], 0xf
push dword [ebp - 0x14c]
cmova eax, dword [ebp - 0x15c]
push eax
call fcn.1001e8e0
lea ecx, [edi + 0x348]
mov byte [edi + 0x341], 1
lea eax, [ebp - 0x144]
cmp ecx, eax
je 0x10050b74
cmp dword [ebp - 0x130], 0xf
push dword [ebp - 0x134]
cmova eax, dword [ebp - 0x144]
push eax
call fcn.1001e8e0
mov byte [ebp - 4], 0xd
mov ecx, dword [ebp - 0x130]
mov byte [edi + 0x344], 0
cmp ecx, 0xf
jbe 0x10050bb9
mov edx, dword [ebp - 0x144]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x10050baf
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x100528ea
push ecx
push edx
call fcn.10096b77
add esp, 8
mov dword [ebp - 4], 0xffffffff
mov ecx, dword [ebp - 0x148]
cmp ecx, 0xf
jbe 0x10050bfa
mov edx, dword [ebp - 0x15c]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x10050bf0
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x100528ea
push ecx
push edx
call fcn.10096b77
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 [esi + 4]
mov dword [ebp - 0x1c], ecx
cmp eax, dword [esi + 8]
je 0x10050c3a
mov dword [eax], ecx
add dword [esi + 4], 4
jmp 0x10050c46
lea ecx, [ebp - 0x1c]
push ecx
push eax
mov ecx, esi
call fcn.1001f890
push 5
xorps xmm0, xmm0
mov dword [ebp - 0x438], 0
push str.world
lea ecx, [ebp - 0x448]
mov dword [ebp - 0x434], 0
movups xmmword [ebp - 0x448], xmm0
call fcn.1001f110
mov dword [ebp - 4], 0xf
lea ecx, [ebp - 0x430]
push 5
xorps xmm0, xmm0
mov dword [ebp - 0x420], 0
push str.props
movups xmmword [ebp - 0x430], xmm0
mov dword [ebp - 0x41c], 0
call fcn.1001f110
mov byte [ebp - 4], 0x10
lea ecx, [ebp - 0x418]
push 0xa
xorps xmm0, xmm0
mov dword [ebp - 0x408], 0
push str.fullbright
movups xmmword [ebp - 0x418], xmm0
mov dword [ebp - 0x404], 0
call fcn.1001f110
mov byte [ebp - 4], 0x11
lea ecx, [ebp - 0x400]
push 7
xorps xmm0, xmm0
mov dword [ebp - 0x3f0], 0
push str.ambient
movups xmmword [ebp - 0x400], xmm0
mov dword [ebp - 0x3ec], 0
call fcn.1001f110
lea ecx, [ebp - 0x448]
mov dword [ebp - 4], 0x12
push ecx
lea eax, [ebp - 0x3e8]
push eax
push ecx
lea ecx, [ebp - 0x44]
call fcn.1006a4e0
mov byte [ebp - 4], 0x13
lea ecx, [ebp - 0x18c]
push 5
xorps xmm0, xmm0
mov dword [ebp - 0x17c], 0
push str.world
movups xmmword [ebp - 0x18c], xmm0
mov dword [ebp - 0x178], 0
call fcn.1001f110
mov byte [ebp - 4], 0x14
lea ecx, [ebp - 0x174]
push 5
xorps xmm0, xmm0
mov dword [ebp - 0x164], 0
push str.world
movups xmmword [ebp - 0x174], xmm0
mov dword [ebp - 0x160], 0
call fcn.1001f110
mov dword [ebp - 0x30], 0
mov dword [ebp - 0x2c], 0
mov dword [ebp - 0x28], 0
lea ecx, [edi + 0x398]
mov byte [ebp - 4], 0x16
lea eax, [ebp - 0x18c]
cmp ecx, eax
je 0x10050dde
cmp dword [ebp - 0x178], 0xf
push dword [ebp - 0x17c]
cmova eax, dword [ebp - 0x18c]
push eax
call fcn.1001e8e0
lea ecx, [edi + 0x3d0]
mov byte [edi + 0x3c9], 1
lea eax, [ebp - 0x174]
cmp ecx, eax
je 0x10050e0f
cmp dword [ebp - 0x160], 0xf
push dword [ebp - 0x164]
cmova eax, dword [ebp - 0x174]
push eax
call fcn.1001e8e0
xor eax, eax
mov ecx, 0xf
cmp byte [edi + 0x3c9], al
cmovne eax, ecx
mov ecx, dword [ebp - 0x40]
mov dword [edi + 0x404], eax
add eax, 0x14
mov dword [edi + 0x370], eax
mov dword [edi + 0x374], eax
mov eax, dword [ebp - 0x44]
mov dword [ebp - 0x18], ecx
cmp eax, ecx
je 0x10050e86
lea ecx, [edi + 0x3e8]
mov esi, eax
nop dword [eax]
mov eax, dword [edi + 0x3ec]
push esi
cmp eax, dword [edi + 0x3f0]
je 0x10050e6f
mov ecx, eax
call fcn.10023860
add dword [edi + 0x3ec], 0x18
jmp 0x10050e75
push eax
call fcn.1003f950
add esi, 0x18
lea ecx, [edi + 0x3e8]
cmp esi, dword [ebp - 0x18]
jne 0x10050e50
lea esi, [edi + 0x18]
mov byte [ebp - 4], 0x14
mov ecx, dword [ebp - 0x160]
cmp ecx, 0xf
jbe 0x10050ec0
mov edx, dword [ebp - 0x174]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x10050eb6
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x10050ef0
push ecx
push edx
call fcn.10096b77
add esp, 8
mov byte [ebp - 4], 0x13
mov ecx, dword [ebp - 0x178]
cmp ecx, 0xf
jbe 0x10050f00
mov edx, dword [ebp - 0x18c]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x10050ef6
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
jbe 0x10050ef6
call dword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
push ecx
push edx
call fcn.10096b77
add esp, 8
lea ecx, [ebp - 0x44]
call fcn.1003f540
push fcn.1001e520
push 4
push 0x18
lea eax, [ebp - 0x448]
mov dword [ebp - 4], 0xffffffff
push eax
call fcn.10096748
mov dword [edi + 0x3c4], fcn.1008ac60
lea ecx, [edi + 0x360]
mov dword [edi + 0x378], 0
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 - 0x18], ecx
cmp eax, dword [esi + 8]
je 0x10050f6e
mov dword [eax], ecx
add dword [esi + 4], 4
jmp 0x10050f7a
lea ecx, [ebp - 0x18]
push ecx
push eax
mov ecx, esi
call fcn.1001f890
push 0xb
xorps xmm0, xmm0
mov dword [ebp - 0x1ac], 0
push 0x100a65ac
lea ecx, [ebp - 0x1bc]
mov dword [ebp - 0x1a8], 0
movups xmmword [ebp - 0x1bc], xmm0
call fcn.1001f110
mov dword [ebp - 4], 0x17
lea ecx, [ebp - 0x1a4]
push 0xb
xorps xmm0, xmm0
mov dword [ebp - 0x194], 0
push str.world_color
movups xmmword [ebp - 0x1a4], xmm0
mov dword [ebp - 0x190], 0
call fcn.1001f110
lea ecx, [edi + 0x478]
mov byte [ebp - 4], 0x18
lea eax, [ebp - 0x1a4]
cmp ecx, eax
je 0x1005100f
cmp dword [ebp - 0x190], 0xf
push dword [ebp - 0x194]
cmova eax, dword [ebp - 0x1a4]
push eax
call fcn.1001e8e0
lea ecx, [edi + 0x440]
lea eax, [ebp - 0x1bc]
cmp ecx, eax
je 0x10051039
cmp dword [ebp - 0x1a8], 0xf
push dword [ebp - 0x1ac]
cmova eax, dword [ebp - 0x1bc]
push eax
call fcn.1001e8e0
mov byte [ebp - 4], 0x17
mov ecx, dword [ebp - 0x190]
mov dword [edi + 0x490], 0xff2e292b
mov dword [edi + 0x4a8], 0
cmp ecx, 0xf
jbe 0x1005108b
mov edx, dword [ebp - 0x1a4]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x10051081
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x100528ea
push ecx
push edx
call fcn.10096b77
add esp, 8
mov dword [ebp - 4], 0xffffffff
mov ecx, dword [ebp - 0x1a8]
cmp ecx, 0xf
jbe 0x100510cc
mov edx, dword [ebp - 0x1bc]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x100510c2
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x100528ea
push ecx
push edx
call fcn.10096b77
add esp, 8
mov eax, dword [edi + 0x464]
lea ecx, [edi + 0x460]
mov dword [ebp - 0x18], 0x10022ee0
cmp eax, dword [ecx + 8]
je 0x100510f0
mov dword [eax], 0x10022ee0
add dword [ecx + 4], 4
jmp 0x100510fa
lea edx, [ebp - 0x18]
push edx
push eax
call fcn.1001f890
mov dword [edi + 0x46c], fcn.1008ac60
lea ecx, [edi + 0x408]
mov dword [edi + 0x420], 0
mov dword [edi + 0x40c], 0x14
mov dword [edi + 0x414], 0xaf
mov eax, dword [edi + 0x2c]
mov dword [edi + 0x424], eax
mov eax, dword [esi + 4]
mov dword [ebp - 0x18], ecx
cmp eax, dword [esi + 8]
je 0x10051144
mov dword [eax], ecx
add dword [esi + 4], 4
jmp 0x10051150
lea ecx, [ebp - 0x18]
push ecx
push eax
mov ecx, esi
call fcn.1001f890
push 0xa
xorps xmm0, xmm0
mov dword [ebp - 0x1dc], 0
push str.prop_color
lea ecx, [ebp - 0x1ec]
mov dword [ebp - 0x1d8], 0
movups xmmword [ebp - 0x1ec], xmm0
call fcn.1001f110
mov dword [ebp - 4], 0x19
lea ecx, [ebp - 0x1d4]
push 0xb
xorps xmm0, xmm0
mov dword [ebp - 0x1c4], 0
push str.props_color
movups xmmword [ebp - 0x1d4], xmm0
mov dword [ebp - 0x1c0], 0
call fcn.1001f110
lea ecx, [edi + 0x534]
mov byte [ebp - 4], 0x1a
lea eax, [ebp - 0x1d4]
cmp ecx, eax
je 0x100511e5
cmp dword [ebp - 0x1c0], 0xf
push dword [ebp - 0x1c4]
cmova eax, dword [ebp - 0x1d4]
push eax
call fcn.1001e8e0
lea ecx, [edi + 0x4fc]
lea eax, [ebp - 0x1ec]
cmp ecx, eax
je 0x1005120f
cmp dword [ebp - 0x1d8], 0xf
push dword [ebp - 0x1dc]
cmova eax, dword [ebp - 0x1ec]
push eax
call fcn.1001e8e0
mov byte [ebp - 4], 0x19
mov ecx, dword [ebp - 0x1c0]
mov dword [edi + 0x54c], 0xff787878
mov dword [edi + 0x564], 0
cmp ecx, 0xf
jbe 0x10051261
mov edx, dword [ebp - 0x1d4]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x10051257
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x100528ea
push ecx
push edx
call fcn.10096b77
add esp, 8
mov dword [ebp - 4], 0xffffffff
mov ecx, dword [ebp - 0x1d8]
cmp ecx, 0xf
jbe 0x100512a2
mov edx, dword [ebp - 0x1ec]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x10051298
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x100528ea
push ecx
push edx
call fcn.10096b77
add esp, 8
mov eax, dword [edi + 0x520]
lea ecx, [edi + 0x51c]
mov dword [ebp - 0x18], 0x10022f00
cmp eax, dword [ecx + 8]
je 0x100512c6
mov dword [eax], 0x10022f00
add dword [ecx + 4], 4
jmp 0x100512d0
lea edx, [ebp - 0x18]
push edx
push eax
call fcn.1001f890
mov dword [edi + 0x528], fcn.1008ac60
lea ecx, [edi + 0x4c4]
mov dword [edi + 0x4dc], 0
mov dword [edi + 0x4c8], 0x14
mov dword [edi + 0x4d0], 0xaf
mov eax, dword [edi + 0x2c]
mov dword [edi + 0x4e0], eax
mov eax, dword [esi + 4]
mov dword [ebp - 0x18], ecx
cmp eax, dword [esi + 8]
je 0x1005131a
mov dword [eax], ecx
add dword [esi + 4], 4
jmp 0x10051326
lea ecx, [ebp - 0x18]
push ecx
push eax
mov ecx, esi
call fcn.1001f890
push 0xd
xorps xmm0, xmm0
mov dword [ebp - 0x20c], 0
push 0x100a65d8
lea ecx, [ebp - 0x21c]
mov dword [ebp - 0x208], 0
movups xmmword [ebp - 0x21c], xmm0
call fcn.1001f110
mov dword [ebp - 4], 0x1b
lea ecx, [ebp - 0x204]
push 0xd
xorps xmm0, xmm0
mov dword [ebp - 0x1f4], 0
push str.ambient_color
movups xmmword [ebp - 0x204], xmm0
mov dword [ebp - 0x1f0], 0
call fcn.1001f110
lea ecx, [edi + 0x5f0]
mov byte [ebp - 4], 0x1c
lea eax, [ebp - 0x204]
cmp ecx, eax
je 0x100513bb
cmp dword [ebp - 0x1f0], 0xf
push dword [ebp - 0x1f4]
cmova eax, dword [ebp - 0x204]
push eax
call fcn.1001e8e0
lea ecx, [edi + 0x5b8]
lea eax, [ebp - 0x21c]
cmp ecx, eax
je 0x100513e5
cmp dword [ebp - 0x208], 0xf
push dword [ebp - 0x20c]
cmova eax, dword [ebp - 0x21c]
push eax
call fcn.1001e8e0
mov byte [ebp - 4], 0x1b
mov ecx, dword [ebp - 0x1f0]
mov dword [edi + 0x608], 0xff141414
mov dword [edi + 0x620], 0
cmp ecx, 0xf
jbe 0x10051437
mov edx, dword [ebp - 0x204]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x1005142d
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x100528ea
push ecx
push edx
call fcn.10096b77
add esp, 8
mov dword [ebp - 4], 0xffffffff
mov ecx, dword [ebp - 0x208]
cmp ecx, 0xf
jbe 0x10051478
mov edx, dword [ebp - 0x21c]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x1005146e
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x100528ea
push ecx
push edx
call fcn.10096b77
add esp, 8
mov eax, dword [edi + 0x5dc]
lea ecx, [edi + 0x5d8]
mov dword [ebp - 0x18], 0x10022f20
cmp eax, dword [ecx + 8]
je 0x1005149c
mov dword [eax], 0x10022f20
add dword [ecx + 4], 4
jmp 0x100514a6
lea edx, [ebp - 0x18]
push edx
push eax
call fcn.1001f890
mov dword [edi + 0x598], 0
lea ecx, [edi + 0x580]
mov dword [edi + 0x584], 0x14
mov dword [edi + 0x58c], 0xaf
mov eax, dword [edi + 0x2c]
mov dword [edi + 0x59c], eax
mov eax, dword [esi + 4]
mov dword [ebp - 0x18], ecx
cmp eax, dword [esi + 8]
je 0x100514e6
mov dword [eax], ecx
add dword [esi + 4], 4
jmp 0x100514f2
lea ecx, [ebp - 0x18]
push ecx
push eax
mov ecx, esi
call fcn.1001f890
push 1
xorps xmm0, xmm0
mov dword [ebp - 0x254], 0
push 0x100a58b0
lea ecx, [ebp - 0x264]
mov dword [ebp - 0x250], 0
movups xmmword [ebp - 0x264], xmm0
call fcn.1003f730
mov dword [ebp - 4], 0x1d
lea ecx, [ebp - 0x24c]
push 0x11
xorps xmm0, xmm0
mov dword [ebp - 0x23c], 0
push str.transparent_walls
movups xmmword [ebp - 0x24c], xmm0
mov dword [ebp - 0x238], 0
call fcn.1001f110
mov byte [ebp - 4], 0x1e
lea ecx, [ebp - 0x234]
push 0xb
xorps xmm0, xmm0
mov dword [ebp - 0x224], 0
push str.world_alpha
movups xmmword [ebp - 0x234], xmm0
mov dword [ebp - 0x220], 0
call fcn.1001f110
lea ecx, [edi + 0x674]
mov byte [ebp - 4], 0x1f
lea eax, [ebp - 0x24c]
cmp ecx, eax
je 0x100515bb
cmp dword [ebp - 0x238], 0xf
push dword [ebp - 0x23c]
cmova eax, dword [ebp - 0x24c]
push eax
call fcn.1001e8e0
lea ecx, [edi + 0x6c4]
mov byte [edi + 0x6a5], 1
lea eax, [ebp - 0x234]
cmp ecx, eax
je 0x100515ec
cmp dword [ebp - 0x220], 0xf
push dword [ebp - 0x224]
cmova eax, dword [ebp - 0x234]
push eax
call fcn.1001e8e0
xor eax, eax
mov dword [edi + 0x6b0], 0
cmp byte [edi + 0x6a5], al
mov ecx, 0xf
mov dword [edi + 0x6b4], 0x42c80000
cmovne eax, ecx
mov dword [edi + 0x6ac], 0x42c80000
mov dword [edi + 0x6f4], eax
lea ecx, [edi + 0x6dc]
add eax, 8
mov dword [edi + 0x6c0], 0
mov dword [edi + 0x64c], eax
mov dword [edi + 0x650], eax
lea eax, [ebp - 0x264]
mov dword [edi + 0x6b8], 0x3f800000
cmp ecx, eax
je 0x100516a9
cmp dword [ebp - 0x250], 7
mov edx, dword [ebp - 0x254]
cmova eax, dword [ebp - 0x264]
cmp edx, dword [ecx + 0x14]
ja 0x1005169b
cmp dword [ecx + 0x14], 7
mov dword [ebp - 0x1c], ecx
jbe 0x1005167a
mov esi, dword [ecx]
mov dword [ebp - 0x1c], esi
lea esi, [edx + edx]
mov dword [ecx + 0x10], edx
push esi
push eax
push dword [ebp - 0x1c]
call sub.VCRUNTIME140.dll_memmove
mov eax, dword [ebp - 0x1c]
add esp, 0xc
xor ecx, ecx
mov word [esi + eax], cx
lea esi, [edi + 0x18]
jmp 0x100516a9
push eax
mov byte [ebp - 0x18], 0
push dword [ebp - 0x18]
push edx
call fcn.1006ad10
mov byte [ebp - 4], 0x1e
mov ecx, dword [ebp - 0x220]
cmp ecx, 0xf
jbe 0x100516e7
mov edx, dword [ebp - 0x234]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x100516dd
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x100528ea
push ecx
push edx
call fcn.10096b77
add esp, 8
mov byte [ebp - 4], 0x1d
mov ecx, dword [ebp - 0x238]
cmp ecx, 0xf
jbe 0x10051725
mov edx, dword [ebp - 0x24c]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x1005171b
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x100528ea
push ecx
push edx
call fcn.10096b77
add esp, 8
mov dword [ebp - 4], 0xffffffff
mov eax, dword [ebp - 0x250]
cmp eax, 7
jbe 0x1005176c
mov edx, dword [ebp - 0x264]
lea ecx, [eax*2 + 2]
mov eax, edx
cmp ecx, 0x1000
jb 0x10051762
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x100528ea
push ecx
push edx
call fcn.10096b77
add esp, 8
mov eax, dword [edi + 0x698]
lea ecx, [edi + 0x694]
mov dword [ebp - 0x18], 0x10022ee0
cmp eax, dword [ecx + 8]
je 0x10051790
mov dword [eax], 0x10022ee0
add dword [ecx + 4], 4
jmp 0x1005179a
lea edx, [ebp - 0x18]
push edx
push eax
call fcn.1001f890
mov dword [edi + 0x6a0], fcn.1008ac60
lea ecx, [edi + 0x63c]
mov dword [edi + 0x654], 0
mov dword [edi + 0x640], 0x14
mov dword [edi + 0x648], 0xaf
mov eax, dword [edi + 0x2c]
mov dword [edi + 0x658], eax
mov eax, dword [esi + 4]
mov dword [ebp - 0x18], ecx
cmp eax, dword [esi + 8]
je 0x100517e4
mov dword [eax], ecx
add dword [esi + 4], 4
jmp 0x100517f0
lea ecx, [ebp - 0x18]
push ecx
push eax
mov ecx, esi
call fcn.1001f890
push 1
xorps xmm0, xmm0
mov dword [ebp - 0x29c], 0
push 0x100a58b0
lea ecx, [ebp - 0x2ac]
mov dword [ebp - 0x298], 0
movups xmmword [ebp - 0x2ac], xmm0
call fcn.1003f730
mov dword [ebp - 4], 0x20
lea ecx, [ebp - 0x294]
push 0x11
xorps xmm0, xmm0
mov dword [ebp - 0x284], 0
push str.transparent_props
movups xmmword [ebp - 0x294], xmm0
mov dword [ebp - 0x280], 0
call fcn.1001f110
mov byte [ebp - 4], 0x21
lea ecx, [ebp - 0x27c]
push 0xb
xorps xmm0, xmm0
mov dword [ebp - 0x26c], 0
push str.props_alpha
movups xmmword [ebp - 0x27c], xmm0
mov dword [ebp - 0x268], 0
call fcn.1001f110
lea ecx, [edi + 0x730]
mov byte [ebp - 4], 0x22
lea eax, [ebp - 0x294]
cmp ecx, eax
je 0x100518b9
cmp dword [ebp - 0x280], 0xf
push dword [ebp - 0x284]
cmova eax, dword [ebp - 0x294]
push eax
call fcn.1001e8e0
lea ecx, [edi + 0x780]
mov byte [edi + 0x761], 1
lea eax, [ebp - 0x27c]
cmp ecx, eax
je 0x100518ea
cmp dword [ebp - 0x268], 0xf
push dword [ebp - 0x26c]
cmova eax, dword [ebp - 0x27c]
push eax
call fcn.1001e8e0
xor eax, eax
mov dword [edi + 0x76c], 0
cmp byte [edi + 0x761], al
mov ecx, 0xf
mov dword [edi + 0x770], 0x42c80000
cmovne eax, ecx
mov dword [edi + 0x768], 0x42c80000
mov dword [edi + 0x7b0], eax
lea ecx, [edi + 0x798]
add eax, 8
mov dword [edi + 0x77c], 0
mov dword [edi + 0x708], eax
mov dword [edi + 0x70c], eax
lea eax, [ebp - 0x2ac]
mov dword [edi + 0x774], 0x3f800000
cmp ecx, eax
je 0x100519a7
cmp dword [ebp - 0x298], 7
mov edx, dword [ebp - 0x29c]
cmova eax, dword [ebp - 0x2ac]
cmp edx, dword [ecx + 0x14]
ja 0x10051999
cmp dword [ecx + 0x14], 7
mov dword [ebp - 0x1c], ecx
jbe 0x10051978
mov esi, dword [ecx]
mov dword [ebp - 0x1c], esi
lea esi, [edx + edx]
mov dword [ecx + 0x10], edx
push esi
push eax
push dword [ebp - 0x1c]
call sub.VCRUNTIME140.dll_memmove
mov eax, dword [ebp - 0x1c]
add esp, 0xc
xor ecx, ecx
mov word [esi + eax], cx
lea esi, [edi + 0x18]
jmp 0x100519a7
push eax
mov byte [ebp - 0x18], 0
push dword [ebp - 0x18]
push edx
call fcn.1006ad10
mov byte [ebp - 4], 0x21
mov ecx, dword [ebp - 0x268]
cmp ecx, 0xf
jbe 0x100519e5
mov edx, dword [ebp - 0x27c]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x100519db
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x100528ea
push ecx
push edx
call fcn.10096b77
add esp, 8
mov byte [ebp - 4], 0x20
mov ecx, dword [ebp - 0x280]
cmp ecx, 0xf
jbe 0x10051a23
mov edx, dword [ebp - 0x294]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x10051a19
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x100528ea
push ecx
push edx
call fcn.10096b77
add esp, 8
mov dword [ebp - 4], 0xffffffff
mov eax, dword [ebp - 0x298]
cmp eax, 7
jbe 0x10051a6a
mov edx, dword [ebp - 0x2ac]
lea ecx, [eax*2 + 2]
mov eax, edx
cmp ecx, 0x1000
jb 0x10051a60
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x100528ea
push ecx
push edx
call fcn.10096b77
add esp, 8
mov eax, dword [edi + 0x754]
lea ecx, [edi + 0x750]
mov dword [ebp - 0x18], 0x10022f00
cmp eax, dword [ecx + 8]
je 0x10051a8e
mov dword [eax], 0x10022f00
add dword [ecx + 4], 4
jmp 0x10051a98
lea edx, [ebp - 0x18]
push edx
push eax
call fcn.1001f890
mov dword [edi + 0x75c], fcn.1008ac60
lea ecx, [edi + 0x6f8]
mov dword [edi + 0x710], 0
mov dword [edi + 0x6fc], 0x14
mov dword [edi + 0x704], 0xaf
mov eax, dword [edi + 0x2c]
mov dword [edi + 0x714], eax
mov eax, dword [esi + 4]
mov dword [ebp - 0x18], ecx
cmp eax, dword [esi + 8]
je 0x10051ae2
mov dword [eax], ecx
add dword [esi + 4], 4
jmp 0x10051aee
lea ecx, [ebp - 0x18]
push ecx
push eax
mov ecx, esi
call fcn.1001f890
push 0xb
xorps xmm0, xmm0
mov dword [ebp - 0x2cc], 0
push str.enemy_radar
lea ecx, [ebp - 0x2dc]
mov dword [ebp - 0x2c8], 0
movups xmmword [ebp - 0x2dc], xmm0
call fcn.1001f110
mov dword [ebp - 4], 0x23
lea ecx, [ebp - 0x2c4]
push 0x16
xorps xmm0, xmm0
mov dword [ebp - 0x2b4], 0
push str.force_enemies_on_radar
movups xmmword [ebp - 0x2c4], xmm0
mov dword [ebp - 0x2b0], 0
call fcn.1001f110
lea ecx, [edi + 0x7ec]
mov byte [ebp - 4], 0x24
lea eax, [ebp - 0x2dc]
cmp ecx, eax
je 0x10051b83
cmp dword [ebp - 0x2c8], 0xf
push dword [ebp - 0x2cc]
cmova eax, dword [ebp - 0x2dc]
push eax
call fcn.1001e8e0
lea ecx, [edi + 0x824]
mov byte [edi + 0x81d], 1
lea eax, [ebp - 0x2c4]
cmp ecx, eax
je 0x10051bb4
cmp dword [ebp - 0x2b0], 0xf
push dword [ebp - 0x2b4]
cmova eax, dword [ebp - 0x2c4]
push eax
call fcn.1001e8e0
mov byte [ebp - 4], 0x23
mov ecx, dword [ebp - 0x2b0]
mov byte [edi + 0x820], 0
cmp ecx, 0xf
jbe 0x10051bf9
mov edx, dword [ebp - 0x2c4]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x10051bef
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x100528ea
push ecx
push edx
call fcn.10096b77
add esp, 8
mov dword [ebp - 4], 0xffffffff
mov ecx, dword [ebp - 0x2c8]
cmp ecx, 0xf
jbe 0x10051c3a
mov edx, dword [ebp - 0x2dc]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x10051c30
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x100528ea
push ecx
push edx
call fcn.10096b77
add esp, 8
mov dword [edi + 0x7cc], 0
lea ecx, [edi + 0x7b4]
mov dword [edi + 0x7b8], 0x14
mov dword [edi + 0x7c0], 0xaf
mov eax, dword [edi + 0x2c]
mov dword [edi + 0x7d0], eax
mov eax, dword [esi + 4]
mov dword [ebp - 0x18], ecx
cmp eax, dword [esi + 8]
je 0x10051c7a
mov dword [eax], ecx
add dword [esi + 4], 4
jmp 0x10051c86
lea ecx, [ebp - 0x18]
push ecx
push eax
mov ecx, esi
call fcn.1001f890
push 0xd
xorps xmm0, xmm0
mov dword [ebp - 0x528], 0
push str.visual_recoil
lea ecx, [ebp - 0x538]
mov dword [ebp - 0x524], 0
movups xmmword [ebp - 0x538], xmm0
call fcn.1001f110
mov dword [ebp - 4], 0x25
lea ecx, [ebp - 0x520]
push 0xe
xorps xmm0, xmm0
mov dword [ebp - 0x510], 0
push str.smoke_grenades
movups xmmword [ebp - 0x520], xmm0
mov dword [ebp - 0x50c], 0
call fcn.1001f110
mov byte [ebp - 4], 0x26
lea ecx, [ebp - 0x508]
push 3
xorps xmm0, xmm0
mov dword [ebp - 0x4f8], 0
push 0x100a6678
movups xmmword [ebp - 0x508], xmm0
mov dword [ebp - 0x4f4], 0
call fcn.1001f110
mov byte [ebp - 4], 0x27
lea ecx, [ebp - 0x4f0]
push 0xa
xorps xmm0, xmm0
mov dword [ebp - 0x4e0], 0
push str.flashbangs
movups xmmword [ebp - 0x4f0], xmm0
mov dword [ebp - 0x4dc], 0
call fcn.1001f110
mov byte [ebp - 4], 0x28
lea ecx, [ebp - 0x4d8]
push 5
xorps xmm0, xmm0
mov dword [ebp - 0x4c8], 0
push str.scope
movups xmmword [ebp - 0x4d8], xmm0
mov dword [ebp - 0x4c4], 0
call fcn.1001f110
mov byte [ebp - 4], 0x29
lea ecx, [ebp - 0x4c0]
push 0xf
xorps xmm0, xmm0
mov dword [ebp - 0x4b0], 0
push str.post_processing
movups xmmword [ebp - 0x4c0], xmm0
mov dword [ebp - 0x4ac], 0
call fcn.1001f110
mov byte [ebp - 4], 0x2a
lea ecx, [ebp - 0x4a8]
push 0xd
xorps xmm0, xmm0
mov dword [ebp - 0x498], 0
push str.blurred_scope
movups xmmword [ebp - 0x4a8], xmm0
mov dword [ebp - 0x494], 0
call fcn.1001f110
mov byte [ebp - 4], 0x2b
lea ecx, [ebp - 0x490]
push 7
xorps xmm0, xmm0
mov dword [ebp - 0x480], 0
push str.shadows
movups xmmword [ebp - 0x490], xmm0
mov dword [ebp - 0x47c], 0
call fcn.1001f110
mov byte [ebp - 4], 0x2c
xorps xmm0, xmm0
push 9
push str.teammates
lea ecx, [ebp - 0x478]
mov dword [ebp - 0x468], 0
movups xmmword [ebp - 0x478], xmm0
mov dword [ebp - 0x464], 0
call fcn.1001f110
lea ecx, [ebp - 0x538]
mov dword [ebp - 4], 0x2d
push ecx
lea eax, [ebp - 0x460]
push eax
push ecx
lea ecx, [ebp - 0x44]
call fcn.1006a4e0
mov byte [ebp - 4], 0x2e
lea ecx, [ebp - 0x30c]
push 8
xorps xmm0, xmm0
mov dword [ebp - 0x2fc], 0
push str.removals
movups xmmword [ebp - 0x30c], xmm0
mov dword [ebp - 0x2f8], 0
call fcn.1001f110
mov byte [ebp - 4], 0x2f
lea ecx, [ebp - 0x2f4]
push 6
xorps xmm0, xmm0
mov dword [ebp - 0x2e4], 0
push str.remove
movups xmmword [ebp - 0x2f4], xmm0
mov dword [ebp - 0x2e0], 0
call fcn.1001f110
mov dword [ebp - 0x30], 0
mov dword [ebp - 0x2c], 0
mov dword [ebp - 0x28], 0
lea ecx, [edi + 0x874]
mov byte [ebp - 4], 0x31
lea eax, [ebp - 0x30c]
cmp ecx, eax
je 0x10051f22
cmp dword [ebp - 0x2f8], 0xf
push dword [ebp - 0x2fc]
cmova eax, dword [ebp - 0x30c]
push eax
call fcn.1001e8e0
lea ecx, [edi + 0x8ac]
mov byte [edi + 0x8a5], 1
lea eax, [ebp - 0x2f4]
cmp ecx, eax
je 0x10051f53
cmp dword [ebp - 0x2e0], 0xf
push dword [ebp - 0x2e4]
cmova eax, dword [ebp - 0x2f4]
push eax
call fcn.1001e8e0
xor eax, eax
mov ecx, 0xf
cmp byte [edi + 0x8a5], al
cmovne eax, ecx
mov ecx, dword [ebp - 0x40]
mov dword [edi + 0x8e0], eax
add eax, 0x14
mov dword [edi + 0x84c], eax
mov dword [edi + 0x850], eax
mov eax, dword [ebp - 0x44]
mov dword [ebp - 0x1c], ecx
cmp eax, ecx
je 0x10051fc6
lea ecx, [edi + 0x8c4]
mov esi, eax
nop dword [eax]
mov eax, dword [edi + 0x8c8]
push esi
cmp eax, dword [edi + 0x8cc]
je 0x10051faf
mov ecx, eax
call fcn.10023860
add dword [edi + 0x8c8], 0x18
jmp 0x10051fb5
push eax
call fcn.1003f950
add esi, 0x18
lea ecx, [edi + 0x8c4]
cmp esi, dword [ebp - 0x1c]
jne 0x10051f90
lea esi, [edi + 0x18]
mov byte [ebp - 4], 0x2f
mov ecx, dword [ebp - 0x2e0]
cmp ecx, 0xf
jbe 0x10052000
mov edx, dword [ebp - 0x2f4]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x10051ff6
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x10052030
push ecx
push edx
call fcn.10096b77
add esp, 8
mov byte [ebp - 4], 0x2e
mov ecx, dword [ebp - 0x2f8]
cmp ecx, 0xf
jbe 0x10052040
mov edx, dword [ebp - 0x30c]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x10052036
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
jbe 0x10052036
call dword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
push ecx
push edx
call fcn.10096b77
add esp, 8
lea ecx, [ebp - 0x44]
call fcn.1003f540
push fcn.1001e520
push 9
push 0x18
lea eax, [ebp - 0x538]
mov dword [ebp - 4], 0xffffffff
push eax
call fcn.10096748
mov dword [edi + 0x854], 1
lea ecx, [edi + 0x83c]
mov dword [edi + 0x840], 0xff
mov dword [edi + 0x848], 0xaf
mov eax, dword [edi + 0x2c]
mov dword [edi + 0x858], eax
mov eax, dword [esi + 4]
mov dword [ebp - 0x18], ecx
cmp eax, dword [esi + 8]
je 0x100520a4
mov dword [eax], ecx
add dword [esi + 4], 4
jmp 0x100520b0
lea ecx, [ebp - 0x18]
push ecx
push eax
mov ecx, esi
call fcn.1001f890
push 3
xorps xmm0, xmm0
mov dword [ebp - 0x32c], 0
push 0x100a66d4
lea ecx, [ebp - 0x33c]
mov dword [ebp - 0x328], 0
movups xmmword [ebp - 0x33c], xmm0
call fcn.1001f110
mov dword [ebp - 4], 0x32
lea ecx, [ebp - 0x324]
push 0xc
xorps xmm0, xmm0
mov dword [ebp - 0x314], 0
push str.override_fov
movups xmmword [ebp - 0x324], xmm0
mov dword [ebp - 0x310], 0
call fcn.1001f110
lea ecx, [edi + 0x91c]
mov byte [ebp - 4], 0x33
lea eax, [ebp - 0x33c]
cmp ecx, eax
je 0x10052145
cmp dword [ebp - 0x328], 0xf
push dword [ebp - 0x32c]
cmova eax, dword [ebp - 0x33c]
push eax
call fcn.1001e8e0
lea ecx, [edi + 0x954]
mov byte [edi + 0x94d], 1
lea eax, [ebp - 0x324]
cmp ecx, eax
je 0x10052176
cmp dword [ebp - 0x310], 0xf
push dword [ebp - 0x314]
cmova eax, dword [ebp - 0x324]
push eax
call fcn.1001e8e0
mov byte [ebp - 4], 0x32
mov ecx, dword [ebp - 0x310]
mov byte [edi + 0x950], 0
cmp ecx, 0xf
jbe 0x100521bb
mov edx, dword [ebp - 0x324]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x100521b1
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x100528ea
push ecx
push edx
call fcn.10096b77
add esp, 8
mov dword [ebp - 4], 0xffffffff
mov ecx, dword [ebp - 0x328]
cmp ecx, 0xf
jbe 0x100521fc
mov edx, dword [ebp - 0x33c]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x100521f2
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x100528ea
push ecx
push edx
call fcn.10096b77
add esp, 8
mov dword [edi + 0x8fc], 1
lea ecx, [edi + 0x8e4]
mov dword [edi + 0x8e8], 0xff
mov dword [edi + 0x8f0], 0xaf
mov eax, dword [edi + 0x2c]
mov dword [edi + 0x900], eax
mov eax, dword [esi + 4]
mov dword [ebp - 0x18], ecx
cmp eax, dword [esi + 8]
je 0x1005223c
mov dword [eax], ecx
add dword [esi + 4], 4
jmp 0x10052248
lea ecx, [ebp - 0x18]
push ecx
push eax
mov ecx, esi
call fcn.1001f890
push 1
xorps xmm0, xmm0
mov dword [ebp - 0x35c], 0
push 0x100a5bb0
lea ecx, [ebp - 0x36c]
mov dword [ebp - 0x358], 0
movups xmmword [ebp - 0x36c], xmm0
call fcn.1003f730
mov dword [ebp - 4], 0x34
lea ecx, [ebp - 0x354]
push 7
xorps xmm0, xmm0
mov dword [ebp - 0x344], 0
push str.fov_amt
movups xmmword [ebp - 0x354], xmm0
mov dword [ebp - 0x340], 0
call fcn.1001f110
mov byte [ebp - 4], 0x35
lea ecx, [ebp - 0x38]
push 0
xorps xmm0, xmm0
mov dword [ebp - 0x28], 0
push 0x100a3d80
movups xmmword [ebp - 0x38], xmm0
mov dword [ebp - 0x24], 0
call fcn.1001f110
lea ecx, [edi + 0x9a4]
mov byte [ebp - 4], 0x36
lea eax, [ebp - 0x354]
cmp ecx, eax
je 0x10052305
cmp dword [ebp - 0x340], 0xf
push dword [ebp - 0x344]
cmova eax, dword [ebp - 0x354]
push eax
call fcn.1001e8e0
lea ecx, [edi + 0xa0c]
mov byte [edi + 0x9d5], 0
lea eax, [ebp - 0x36c]
mov dword [edi + 0xa24], 0
mov dword [edi + 0x97c], 8
mov dword [edi + 0x980], 8
mov dword [edi + 0x9e0], 0x42700000
mov dword [edi + 0x9e4], 0x430c0000
mov dword [edi + 0x9dc], 0x42b40000
mov dword [edi + 0x9f0], 0
mov dword [edi + 0x9e8], 0x3f800000
cmp ecx, eax
je 0x100523c2
cmp dword [ebp - 0x358], 7
mov edx, dword [ebp - 0x35c]
cmova eax, dword [ebp - 0x36c]
cmp edx, dword [ecx + 0x14]
ja 0x100523b4
cmp dword [ecx + 0x14], 7
mov dword [ebp - 0x1c], ecx
jbe 0x10052393
mov esi, dword [ecx]
mov dword [ebp - 0x1c], esi
lea esi, [edx + edx]
mov dword [ecx + 0x10], edx
push esi
push eax
push dword [ebp - 0x1c]
call sub.VCRUNTIME140.dll_memmove
mov eax, dword [ebp - 0x1c]
add esp, 0xc
xor ecx, ecx
mov word [eax + esi], cx
lea esi, [edi + 0x18]
jmp 0x100523c2
push eax
mov byte [ebp - 0x18], 0
push dword [ebp - 0x18]
push edx
call fcn.1006ad10
mov byte [ebp - 4], 0x35
mov ecx, dword [ebp - 0x24]
cmp ecx, 0xf
jbe 0x100523fa
mov edx, dword [ebp - 0x38]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x100523f0
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x100528ea
push ecx
push edx
call fcn.10096b77
add esp, 8
mov byte [ebp - 4], 0x34
mov ecx, dword [ebp - 0x340]
cmp ecx, 0xf
jbe 0x10052438
mov edx, dword [ebp - 0x354]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x1005242e
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x100528ea
push ecx
push edx
call fcn.10096b77
add esp, 8
mov dword [ebp - 4], 0xffffffff
mov eax, dword [ebp - 0x358]
cmp eax, 7
jbe 0x1005247f
mov edx, dword [ebp - 0x36c]
lea ecx, [eax*2 + 2]
mov eax, edx
cmp ecx, 0x1000
jb 0x10052475
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x100528ea
push ecx
push edx
call fcn.10096b77
add esp, 8
mov eax, dword [edi + 0x9c8]
lea ecx, [edi + 0x9c4]
mov dword [ebp - 0x18], 0x10022f40
cmp eax, dword [ecx + 8]
je 0x100524a3
mov dword [eax], 0x10022f40
add dword [ecx + 4], 4
jmp 0x100524ad
lea edx, [ebp - 0x18]
push edx
push eax
call fcn.1001f890
mov dword [edi + 0x984], 1
lea ecx, [edi + 0x96c]
mov dword [edi + 0x970], 0xff
mov dword [edi + 0x978], 0xaf
mov eax, dword [edi + 0x2c]
mov dword [edi + 0x988], eax
mov eax, dword [esi + 4]
mov dword [ebp - 0x18], ecx
cmp eax, dword [esi + 8]
je 0x100524ed
mov dword [eax], ecx
add dword [esi + 4], 4
jmp 0x100524f9
lea ecx, [ebp - 0x18]
push ecx
push eax
mov ecx, esi
call fcn.1001f890
push 1
xorps xmm0, xmm0
mov dword [ebp - 0x3a4], 0
push 0x100a58b0
lea ecx, [ebp - 0x3b4]
mov dword [ebp - 0x3a0], 0
movups xmmword [ebp - 0x3b4], xmm0
call fcn.1003f730
mov dword [ebp - 4], 0x37
lea ecx, [ebp - 0x39c]
push 0xa
xorps xmm0, xmm0
mov dword [ebp - 0x38c], 0
push str.fov_scoped
movups xmmword [ebp - 0x39c], xmm0
mov dword [ebp - 0x388], 0
call fcn.1001f110
mov byte [ebp - 4], 0x38
lea ecx, [ebp - 0x384]
push 0xa
xorps xmm0, xmm0
mov dword [ebp - 0x374], 0
push str.scoped_fov
movups xmmword [ebp - 0x384], xmm0
mov dword [ebp - 0x370], 0
call fcn.1001f110
lea ecx, [edi + 0xa60]
mov byte [ebp - 4], 0x39
lea eax, [ebp - 0x39c]
cmp ecx, eax
je 0x100525c2
cmp dword [ebp - 0x388], 0xf
push dword [ebp - 0x38c]
cmova eax, dword [ebp - 0x39c]
push eax
call fcn.1001e8e0
lea ecx, [edi + 0xab0]
mov byte [edi + 0xa91], 1
lea eax, [ebp - 0x384]
cmp ecx, eax
je 0x100525f3
cmp dword [ebp - 0x370], 0xf
push dword [ebp - 0x374]
cmova eax, dword [ebp - 0x384]
push eax
call fcn.1001e8e0
xor eax, eax
mov dword [edi + 0xa9c], 0
cmp byte [edi + 0xa91], al
mov ecx, 0xf
mov dword [edi + 0xaa0], 0x42c80000
cmovne eax, ecx
mov dword [edi + 0xa98], 0x42480000
mov dword [edi + 0xae0], eax
lea ecx, [edi + 0xac8]
add eax, 8
mov dword [edi + 0xaac], 0
mov dword [edi + 0xa38], eax
mov dword [edi + 0xa3c], eax
lea eax, [ebp - 0x3b4]
mov dword [edi + 0xaa4], 0x3f800000
cmp ecx, eax
je 0x100526b0
cmp dword [ebp - 0x3a0], 7
mov edx, dword [ebp - 0x3a4]
cmova eax, dword [ebp - 0x3b4]
cmp edx, dword [ecx + 0x14]
ja 0x100526a2
cmp dword [ecx + 0x14], 7
mov dword [ebp - 0x1c], ecx
jbe 0x10052681
mov esi, dword [ecx]
mov dword [ebp - 0x1c], esi
lea esi, [edx + edx]
mov dword [ecx + 0x10], edx
push esi
push eax
push dword [ebp - 0x1c]
call sub.VCRUNTIME140.dll_memmove
mov eax, dword [ebp - 0x1c]
add esp, 0xc
xor ecx, ecx
mov word [eax + esi], cx
lea esi, [edi + 0x18]
jmp 0x100526b0
push eax
mov byte [ebp - 0x18], 0
push dword [ebp - 0x18]
push edx
call fcn.1006ad10
mov byte [ebp - 4], 0x38
mov ecx, dword [ebp - 0x370]
cmp ecx, 0xf
jbe 0x100526ee
mov edx, dword [ebp - 0x384]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x100526e4
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x100528ea
push ecx
push edx
call fcn.10096b77
add esp, 8
mov byte [ebp - 4], 0x37
mov ecx, dword [ebp - 0x388]
cmp ecx, 0xf
jbe 0x1005272c
mov edx, dword [ebp - 0x39c]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x10052722
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x100528ea
push ecx
push edx
call fcn.10096b77
add esp, 8
mov dword [ebp - 4], 0xffffffff
mov eax, dword [ebp - 0x3a0]
cmp eax, 7
jbe 0x10052773
mov edx, dword [ebp - 0x3b4]
lea ecx, [eax*2 + 2]
mov eax, edx
cmp ecx, 0x1000
jb 0x10052769
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x100528ea
push ecx
push edx
call fcn.10096b77
add esp, 8
mov eax, dword [edi + 0xa84]
lea ecx, [edi + 0xa80]
mov dword [ebp - 0x18], 0x10022f40
cmp eax, dword [ecx + 8]
je 0x10052797
mov dword [eax], 0x10022f40
add dword [ecx + 4], 4
jmp 0x100527a1
lea edx, [ebp - 0x18]
push edx
push eax
call fcn.1001f890
mov dword [edi + 0xa40], 1
lea ecx, [edi + 0xa28]
mov dword [edi + 0xa2c], 0xff
mov dword [edi + 0xa34], 0xaf
mov eax, dword [edi + 0x2c]
mov dword [edi + 0xa44], eax
mov eax, dword [esi + 4]
mov dword [ebp - 0x18], ecx
cmp eax, dword [esi + 8]
je 0x100527e1
mov dword [eax], ecx
add dword [esi + 4], 4
jmp 0x100527ed
lea ecx, [ebp - 0x18]
push ecx
push eax
mov ecx, esi
call fcn.1001f890
push 0xd
xorps xmm0, xmm0
mov dword [ebp - 0x3d4], 0
push str.viewmodel_fov
lea ecx, [ebp - 0x3e4]
mov dword [ebp - 0x3d0], 0
movups xmmword [ebp - 0x3e4], xmm0
call fcn.1001f110
mov dword [ebp - 4], 0x3a
lea ecx, [ebp - 0x3cc]
push 0x16
xorps xmm0, xmm0
mov dword [ebp - 0x3bc], 0
push str.override_viewmodel_fov
movups xmmword [ebp - 0x3cc], xmm0
mov dword [ebp - 0x3b8], 0
call fcn.1001f110
lea ecx, [edi + 0xb1c]
mov byte [ebp - 4], 0x3b
lea eax, [ebp - 0x3e4]
cmp ecx, eax
je 0x10052882
cmp dword [ebp - 0x3d0], 0xf
push dword [ebp - 0x3d4]
cmova eax, dword [ebp - 0x3e4]
push eax
call fcn.1001e8e0
lea ecx, [edi + 0xb54]
mov byte [edi + 0xb4d], 1
lea eax, [ebp - 0x3cc]
cmp ecx, eax
je 0x100528b3
cmp dword [ebp - 0x3b8], 0xf
push dword [ebp - 0x3bc]
cmova eax, dword [ebp - 0x3cc]
push eax
call fcn.1001e8e0
mov byte [ebp - 4], 0x3a
mov ecx, dword [ebp - 0x3b8]
mov byte [edi + 0xb50], 0
cmp ecx, 0xf
jbe 0x100528fa
mov edx, dword [ebp - 0x3cc]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x100528f0
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
jbe 0x100528f0
call dword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
push ecx
push edx
call fcn.10096b77
add esp, 8
lea ecx, [ebp - 0x3e4]
mov dword [ebp - 4], 0xffffffff
call fcn.1001e520
mov dword [edi + 0xafc], 1
lea eax, [edi + 0xae4]
mov dword [edi + 0xae8], 0xff
mov ecx, esi
mov dword [ebp - 0x18], eax
mov dword [edi + 0xaf0], 0xaf
mov eax, dword [edi + 0x2c]
mov dword [edi + 0xb00], eax
lea eax, [ebp - 0x18]
push eax
call fcn.10033b50
push 0x100a5bb0
lea ecx, [ebp - 0x50]
lea esi, [edi + 0xb6c]
call fcn.1006a7d0
push str.viewmodel_fov_amt
lea ecx, [ebp - 0x38]
mov dword [ebp - 4], 0x3c
call fcn.1001e570
push 0x100a3d80
lea ecx, [ebp - 0x400]
mov byte [ebp - 4], 0x3d
call fcn.1001e570
lea eax, [ebp - 0x38]
mov byte [ebp - 4], 0x3e
push eax
lea ecx, [edi + 0xba4]
call fcn.1001e4f0
lea eax, [ebp - 0x50]
mov byte [edi + 0xbd5], 0
push eax
lea ecx, [edi + 0xc0c]
mov dword [edi + 0xc24], 0
mov dword [edi + 0xb7c], 8
mov dword [edi + 0xb80], 8
mov dword [edi + 0xbe0], 0x42700000
mov dword [edi + 0xbe4], 0x430c0000
mov dword [edi + 0xbdc], 0x42b40000
mov dword [edi + 0xbf0], 0
mov dword [edi + 0xbe8], 0x3f800000
call fcn.1006a760
lea ecx, [ebp - 0x400]
call fcn.1001e520
lea ecx, [ebp - 0x38]
call fcn.1001e520
lea ecx, [ebp - 0x50]
mov dword [ebp - 4], 0xffffffff
call fcn.1003f430
lea eax, [ebp - 0x18]
mov dword [ebp - 0x18], 0x10022f50
lea ecx, [esi + 0x58]
push eax
call fcn.10033b50
mov dword [edi + 0xb84], 1
lea ecx, [edi + 0x18]
mov dword [edi + 0xb70], 0xff
mov dword [edi + 0xb78], 0xaf
mov eax, dword [edi + 0x2c]
mov dword [edi + 0xb88], eax
lea eax, [ebp - 0x18]
push eax
mov dword [ebp - 0x18], esi
call fcn.10033b50
push str.spectators
lea ecx, [ebp - 0x50]
lea esi, [edi + 0xc28]
call fcn.1001e570
push str.show_spectator_list
lea ecx, [ebp - 0x38]
mov dword [ebp - 4], 0x3f
call fcn.1001e570
mov byte [ebp - 4], 0x40
lea eax, [ebp - 0x50]
push eax
lea ecx, [edi + 0xc60]
call fcn.1001e4f0
lea eax, [ebp - 0x38]
mov byte [edi + 0xc91], 1
push eax
lea ecx, [edi + 0xc98]
call fcn.1001e4f0
lea ecx, [ebp - 0x38]
mov byte [edi + 0xc94], 0
call fcn.1001e520
lea ecx, [ebp - 0x50]
mov dword [ebp - 4], 0xffffffff
call fcn.1001e520
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.10033b50
push str.force_xhair
lea ecx, [ebp - 0x50]
lea esi, [edi + 0xcb0]
call fcn.1001e570
push str.force_crosshair
lea ecx, [ebp - 0x38]
mov dword [ebp - 4], 0x41
call fcn.1001e570
lea eax, [ebp - 0x50]
mov byte [ebp - 4], 0x42
push eax
lea ecx, [edi + 0xce8]
call fcn.1001e4f0
lea eax, [ebp - 0x38]
mov byte [edi + 0xd19], 1
push eax
lea ecx, [edi + 0xd20]
call fcn.1001e4f0
lea ecx, [ebp - 0x38]
mov byte [edi + 0xd1c], 0
call fcn.1001e520
lea ecx, [ebp - 0x50]
mov dword [ebp - 4], 0xffffffff
call fcn.1001e520
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.10033b50
push str.spread_xhair
lea ecx, [ebp - 0x50]
lea esi, [edi + 0xd38]
call fcn.1001e570
push str.visualize_spread
lea ecx, [ebp - 0x38]
mov dword [ebp - 4], 0x43
call fcn.1001e570
lea eax, [ebp - 0x50]
mov byte [ebp - 4], 0x44
push eax
lea ecx, [edi + 0xd70]
call fcn.1001e4f0
lea eax, [ebp - 0x38]
mov byte [edi + 0xda1], 1
push eax
lea ecx, [edi + 0xda8]
call fcn.1001e4f0
mov byte [edi + 0xda4], 0
lea ecx, [ebp - 0x38]
call fcn.1001e520
lea ecx, [ebp - 0x50]
mov dword [ebp - 4], 0xffffffff
call fcn.1001e520
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.10033b50
push str.spread_xhair_col
lea ecx, [ebp - 0x50]
lea esi, [edi + 0xdc0]
call fcn.1001e570
push str.visualize_spread_color
lea ecx, [ebp - 0x38]
mov dword [ebp - 4], 0x45
call fcn.1001e570
lea eax, [ebp - 0x38]
mov byte [ebp - 4], 0x46
push eax
lea ecx, [edi + 0xe30]
call fcn.1001e4f0
lea eax, [ebp - 0x50]
push eax
lea ecx, [edi + 0xdf8]
call fcn.1001e4f0
lea ecx, [ebp - 0x38]
mov dword [edi + 0xe48], 0x321e1e1e
mov dword [edi + 0xe60], 0
call fcn.1001e520
lea ecx, [ebp - 0x50]
mov dword [ebp - 4], 0xffffffff
call fcn.1001e520
lea eax, [ebp - 0x18]
mov dword [ebp - 0x18], 0x10022f60
lea ecx, [esi + 0x58]
push eax
call fcn.10033b50
mov dword [edi + 0xdd8], 1
lea ecx, [edi + 0x18]
mov dword [edi + 0xdc4], 0xff
mov dword [edi + 0xdcc], 0xaf
mov eax, dword [edi + 0x2c]
mov dword [edi + 0xddc], eax
lea eax, [ebp - 0x18]
push eax
mov dword [ebp - 0x18], esi
call fcn.10033b50
push str.pen_xhair
lea ecx, [ebp - 0x50]
lea esi, [edi + 0xe7c]
call fcn.1001e570
push str.penetration_crosshair
lea ecx, [ebp - 0x38]
mov dword [ebp - 4], 0x47
call fcn.1001e570
lea eax, [ebp - 0x50]
mov byte [ebp - 4], 0x48
push eax
lea ecx, [edi + 0xeb4]
call fcn.1001e4f0
lea eax, [ebp - 0x38]
mov byte [edi + 0xee5], 1
push eax
lea ecx, [edi + 0xeec]
call fcn.1001e4f0
lea ecx, [ebp - 0x38]
mov byte [edi + 0xee8], 0
call fcn.1001e520
mov dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0x50]
call fcn.1001e520
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.10033b50
push 0x100a67e8
lea ecx, [ebp - 0x50]
lea esi, [edi + 0xf04]
call fcn.1001e570
push str.bullet_impacts
lea ecx, [ebp - 0x38]
mov dword [ebp - 4], 0x49
call fcn.1001e570
lea eax, [ebp - 0x50]
mov byte [ebp - 4], 0x4a
push eax
lea ecx, [edi + 0xf3c]
call fcn.1001e4f0
lea eax, [ebp - 0x38]
mov byte [edi + 0xf6d], 1
push eax
lea ecx, [edi + 0xf74]
call fcn.1001e4f0
lea ecx, [ebp - 0x38]
mov byte [edi + 0xf70], 0
call fcn.1001e520
lea ecx, [ebp - 0x50]
mov dword [ebp - 4], 0xffffffff
call fcn.1001e520
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.10033b50
push str.tracers
lea ecx, [ebp - 0x50]
lea esi, [edi + 0xf8c]
call fcn.1001e570
push str.grenade_simulation
lea ecx, [ebp - 0x38]
mov dword [ebp - 4], 0x4b
call fcn.1001e570
lea eax, [ebp - 0x50]
mov byte [ebp - 4], 0x4c
push eax
lea ecx, [edi + 0xfc4]
call fcn.1001e4f0
lea eax, [ebp - 0x38]
mov byte [edi + 0xff5], 1
push eax
lea ecx, [edi + 0xffc]
call fcn.1001e4f0
lea ecx, [ebp - 0x38]
mov byte [edi + 0xff8], 0
call fcn.1001e520
lea ecx, [ebp - 0x50]
mov dword [ebp - 4], 0xffffffff
call fcn.1001e520
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
push eax
lea ecx, [edi + 0x18]
call fcn.10033b50
push str.tracers_color
lea ecx, [ebp - 0x50]
lea esi, [edi + 0x1014]
call fcn.1001e570
push str.grenade_simulation_color
lea ecx, [ebp - 0x38]
mov dword [ebp - 4], 0x4d
call fcn.1001e570
lea eax, [ebp - 0x38]
mov byte [ebp - 4], 0x4e
push eax
lea ecx, [edi + 0x1084]
call fcn.1001e4f0
lea eax, [ebp - 0x50]
push eax
lea ecx, [edi + 0x104c]
call fcn.1001e4f0
lea ecx, [ebp - 0x38]
mov dword [edi + 0x109c], 0xffe1b43c
mov dword [edi + 0x10b4], 0
call fcn.1001e520
lea ecx, [ebp - 0x50]
mov dword [ebp - 4], 0xffffffff
call fcn.1001e520
lea eax, [ebp - 0x18]
mov dword [ebp - 0x18], 0x10022f70
lea ecx, [esi + 0x58]
push eax
call fcn.10033b50
mov dword [edi + 0x102c], 1
mov dword [edi + 0x1018], 0xff
mov dword [edi + 0x1020], 0xaf
mov eax, dword [edi + 0x2c]
mov dword [ebp - 0x18], esi
lea esi, [edi + 0x18]
mov dword [edi + 0x1030], eax
mov ecx, esi
lea eax, [ebp - 0x18]
push eax
call fcn.10033b50
push 0x100a684c
lea ecx, [ebp - 0x4f0]
call fcn.1001e570
push str.lag_compensation
lea ecx, [ebp - 0x4d8]
mov dword [ebp - 4], 0x4f
call fcn.1001e570
push 0x100a686c
lea ecx, [ebp - 0x4c0]
mov byte [ebp - 4], 0x50
call fcn.1001e570
push str.min_dmg_override
lea ecx, [ebp - 0x4a8]
mov byte [ebp - 4], 0x51
call fcn.1001e570
push str.force_body_aim
lea ecx, [ebp - 0x490]
mov byte [ebp - 4], 0x52
call fcn.1001e570
push str.resolver_override
lea ecx, [ebp - 0x478]
mov byte [ebp - 4], 0x53
call fcn.1001e570
lea ecx, [ebp - 0x4f0]
mov dword [ebp - 4], 0x54
push ecx
lea eax, [ebp - 0x460]
push eax
push ecx
lea ecx, [ebp - 0x2c]
call fcn.1006a4e0
push str.indicators
lea ecx, [ebp - 0x400]
mov byte [ebp - 4], 0x55
call fcn.1001e570
push str.indicators
lea ecx, [ebp - 0x460]
mov byte [ebp - 4], 0x56
call fcn.1001e570
mov dword [ebp - 0x48], 0
mov dword [ebp - 0x44], 0
mov dword [ebp - 0x40], 0
lea eax, [ebp - 0x400]
mov byte [ebp - 4], 0x58
push eax
lea ecx, [edi + 0x1108]
call fcn.1001e4f0
lea eax, [ebp - 0x460]
mov byte [edi + 0x1139], 1
push eax
lea ecx, [edi + 0x1140]
call fcn.1001e4f0
xor eax, eax
mov ecx, 0xf
cmp byte [edi + 0x1139], al
cmovne eax, ecx
mov ecx, dword [ebp - 0x28]
mov dword [edi + 0x1174], eax
add eax, 0x14
mov dword [edi + 0x10e0], eax
mov dword [edi + 0x10e4], eax
mov eax, dword [ebp - 0x2c]
mov dword [ebp - 0x54], ecx
mov dword [ebp - 0x18], eax
cmp eax, ecx
je 0x100530c9
mov esi, dword [ebp - 0x18]
lea eax, [edi + 0x1158]
mov edi, eax
push esi
mov ecx, edi
call fcn.1003f290
add esi, 0x18
cmp esi, dword [ebp - 0x54]
jne 0x100530b3
mov edi, dword [ebp - 0x20]
lea esi, [edi + 0x18]
lea ecx, [ebp - 0x48]
call fcn.1001da40
lea ecx, [ebp - 0x460]
call fcn.1001e520
lea ecx, [ebp - 0x400]
call fcn.1001e520
lea ecx, [ebp - 0x2c]
call fcn.1003f540
push fcn.1001e520
push 6
push 0x18
lea eax, [ebp - 0x4f0]
mov dword [ebp - 4], 0xffffffff
push eax
call fcn.10096748
mov dword [edi + 0x10e8], 1
lea eax, [edi + 0x10d0]
mov dword [edi + 0x10d4], 0xff
mov ecx, esi
mov dword [ebp - 0x20], eax
mov dword [edi + 0x10dc], 0xaf
mov eax, dword [edi + 0x2c]
mov dword [edi + 0x10ec], eax
lea eax, [ebp - 0x20]
push eax
call fcn.10033b50
push str.thirdperson
lea ecx, [ebp - 0x460]
lea esi, [edi + 0x1178]
call fcn.1001e570
push str.thirdperson
lea ecx, [ebp - 0x400]
mov dword [ebp - 4], 0x59
call fcn.1001e570
lea eax, [ebp - 0x400]
mov byte [ebp - 4], 0x5a
push eax
lea ecx, [edi + 0x11e8]
call fcn.1001e4f0
lea eax, [ebp - 0x460]
push eax
lea ecx, [edi + 0x11b0]
call fcn.1001e4f0
lea ecx, [ebp - 0x400]
mov dword [edi + 0x11e4], 0xffffffff
call fcn.1001e520
lea ecx, [ebp - 0x460]
mov dword [ebp - 4], 0xffffffff
call fcn.1001e520
mov dword [edi + 0x1204], 0x10020fb0
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 - 0x20]
push eax
mov dword [ebp - 0x20], esi
call fcn.10033b50
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.100966fc
mov esp, ebp
pop ebp
mov esp, ebx
pop ebx
ret