Function at 0x10063ea0
Capabilities:
Access peb ldr_data
Check for peb ntglobalflag flag
Contain obfuscated stackstrings
Get number of processors
Get process heap flags
Get process heap force flags
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 0x10115d63
mov eax, dword fs:[0]
push eax
push ebx
sub esp, 0x1e0
mov eax, dword [0x1013d040]
xor eax, ebp
mov dword [ebp - 0x14], eax
push esi
push edi
push eax
lea eax, [ebp - 0xc]
mov dword fs:[0], eax
mov dword [ebp - 0x24], ecx
push dword [ebp - 0x18]
lea ecx, [ebp - 0x68]
call fcn.1002f300
push 7
push str.players
lea ecx, [ebp - 0x68]
mov dword [ebp - 4], 0
call fcn.1002f320
mov edi, dword [ebp - 0x24]
lea eax, [ebp - 0x68]
push eax
mov ecx, edi
mov dword [ebp - 4], 1
call fcn.10045420
lea ecx, [ebp - 0x68]
call fcn.1002e790
push dword [ebp - 0x18]
lea ecx, [ebp - 0xb8]
lea esi, [edi + 0xd0]
call fcn.1002f300
push 9
push str.teammates
lea ecx, [ebp - 0xb8]
mov dword [ebp - 4], 2
call fcn.1002f320
mov dword [ebp - 4], 3
lea ecx, [ebp - 0x68]
push dword [ebp - 0x18]
call fcn.1002f300
push 9
push str.teammates
lea ecx, [ebp - 0x68]
mov byte [ebp - 4], 4
call fcn.1002f320
lea eax, [ebp - 0xb8]
mov byte [ebp - 4], 5
push eax
lea ecx, [edi + 0x108]
call fcn.10045420
mov eax, edi
lea ecx, [ebp - 0x68]
push ecx
lea ecx, [eax + 0x140]
mov byte [eax + 0x139], 1
call fcn.10045420
lea ecx, [ebp - 0x68]
mov byte [edi + 0x13c], 0
call fcn.1002e790
lea ecx, [ebp - 0xb8]
mov dword [ebp - 4], 0xffffffff
call fcn.1002e790
mov dword [ebp - 0x1c], esi
lea ecx, [ebp - 0x1c]
mov dword [esi + 0x18], 0
imul eax, dword [esi + 0x18], 0xeb
push ecx
lea ecx, [edi + 0x18]
add eax, 0x14
mov dword [esi + 4], eax
mov dword [esi + 0xc], 0xaf
mov eax, dword [edi + 0x2c]
mov dword [esi + 0x1c], eax
call fcn.100469f0
push dword [ebp - 0x18]
lea ecx, [ebp - 0xb8]
lea esi, [edi + 0x414]
call fcn.1002f300
push 7
push str.dormant
lea ecx, [ebp - 0xb8]
mov dword [ebp - 4], 6
call fcn.1002f320
mov dword [ebp - 4], 7
push dword [ebp - 0x18]
lea ecx, [ebp - 0x68]
call fcn.1002f300
push 7
push str.dormant
lea ecx, [ebp - 0x68]
mov byte [ebp - 4], 8
call fcn.1002f320
lea eax, [ebp - 0xb8]
mov byte [ebp - 4], 9
push eax
lea ecx, [edi + 0x44c]
call fcn.10045420
mov eax, edi
lea ecx, [ebp - 0x68]
push ecx
lea ecx, [eax + 0x484]
mov byte [eax + 0x47d], 1
call fcn.10045420
lea ecx, [ebp - 0x68]
mov byte [edi + 0x480], 0
call fcn.1002e790
lea ecx, [ebp - 0xb8]
mov dword [ebp - 4], 0xffffffff
call fcn.1002e790
mov dword [ebp - 0x1c], esi
lea ecx, [edi + 0x18]
mov dword [esi + 0x18], 0
imul eax, dword [esi + 0x18], 0xeb
add eax, 0x14
mov dword [esi + 4], eax
mov dword [esi + 0xc], 0xaf
mov eax, dword [edi + 0x2c]
mov dword [esi + 0x1c], eax
lea eax, [ebp - 0x1c]
push eax
call fcn.100469f0
push dword [ebp - 0x18]
lea ecx, [ebp - 0xb8]
lea esi, [edi + 0x158]
call fcn.1002f300
push 3
push 0x1012d4b0
lea ecx, [ebp - 0xb8]
mov dword [ebp - 4], 0xa
call fcn.1002f320
mov dword [ebp - 4], 0xb
lea ecx, [ebp - 0x68]
push dword [ebp - 0x18]
call fcn.1002f300
push 0xc
push str.bounding_box
lea ecx, [ebp - 0x68]
mov byte [ebp - 4], 0xc
call fcn.1002f320
lea eax, [ebp - 0xb8]
mov byte [ebp - 4], 0xd
push eax
lea ecx, [edi + 0x190]
call fcn.10045420
mov eax, edi
lea ecx, [ebp - 0x68]
push ecx
lea ecx, [eax + 0x1c8]
mov byte [eax + 0x1c1], 1
call fcn.10045420
lea ecx, [ebp - 0x68]
mov byte [edi + 0x1c4], 0
call fcn.1002e790
lea ecx, [ebp - 0xb8]
mov dword [ebp - 4], 0xffffffff
call fcn.1002e790
mov dword [ebp - 0x1c], esi
mov dword [esi + 0x18], 0
imul eax, dword [esi + 0x18], 0xeb
add eax, 0x14
lea ecx, [edi + 0x18]
mov dword [esi + 4], eax
mov dword [esi + 0xc], 0xaf
mov eax, dword [edi + 0x2c]
mov dword [esi + 0x1c], eax
lea eax, [ebp - 0x1c]
push eax
call fcn.100469f0
push dword [ebp - 0x18]
lea ecx, [ebp - 0xb8]
lea esi, [edi + 0x1e0]
call fcn.1002f300
push 9
push str.box_enemy
lea ecx, [ebp - 0xb8]
mov dword [ebp - 4], 0xe
call fcn.1002f320
mov dword [ebp - 4], 0xf
lea ecx, [ebp - 0x68]
push dword [ebp - 0x18]
call fcn.1002f300
push 0x12
push str.bounding_box_color
lea ecx, [ebp - 0x68]
mov byte [ebp - 4], 0x10
call fcn.1002f320
lea eax, [ebp - 0x68]
mov byte [ebp - 4], 0x11
push eax
lea ecx, [edi + 0x250]
call fcn.10045420
lea eax, [ebp - 0xb8]
push eax
lea ecx, [edi + 0x218]
call fcn.10045420
mov eax, edi
lea ecx, [ebp - 0x68]
mov dword [eax + 0x268], 0xb4ffffff
mov dword [eax + 0x280], 0
call fcn.1002e790
lea ecx, [ebp - 0xb8]
mov dword [ebp - 4], 0xffffffff
call fcn.1002e790
lea eax, [ebp - 0x1c]
mov dword [ebp - 0x1c], 0x10032e30
lea ecx, [esi + 0x58]
push eax
call fcn.100469f0
mov dword [ebp - 0x1c], esi
mov eax, edi
mov ecx, edi
mov dword [eax + 0x1f8], 0
imul eax, dword [eax + 0x1f8], 0xeb
add eax, 0x14
mov dword [ecx + 0x1e4], eax
mov eax, ecx
lea ecx, [edi + 0x18]
mov dword [eax + 0x1ec], 0xaf
mov eax, dword [eax + 0x2c]
mov dword [edi + 0x1fc], eax
lea eax, [ebp - 0x1c]
push eax
call fcn.100469f0
push dword [ebp - 0x18]
lea ecx, [ebp - 0xb8]
lea esi, [edi + 0x12e8]
call fcn.1002f300
push 1
push 0x1012c868
lea ecx, [ebp - 0xb8]
mov dword [ebp - 4], 0x12
call fcn.100546f0
mov dword [ebp - 4], 0x13
push dword [ebp - 0x18]
lea ecx, [ebp - 0x68]
call fcn.1002f300
push 0xd
push str.box_esp_alpha
lea ecx, [ebp - 0x68]
mov byte [ebp - 4], 0x14
call fcn.1002f320
push dword [ebp - 0x18]
lea ecx, [ebp - 0x80]
call fcn.1002f300
push 0xd
push str.box_esp_alpha
lea ecx, [ebp - 0x80]
mov byte [ebp - 4], 0x16
call fcn.1002f320
lea eax, [ebp - 0x68]
mov byte [ebp - 4], 0x17
push eax
lea ecx, [edi + 0x1320]
call fcn.10045420
mov eax, edi
lea ecx, [ebp - 0xb8]
push ecx
lea ecx, [eax + 0x1388]
mov byte [eax + 0x1351], 0
mov dword [eax + 0x13a0], 0
mov dword [eax + 0x12f8], 7
mov dword [eax + 0x12fc], 7
mov dword [eax + 0x135c], 0
mov dword [eax + 0x1360], 0x437f0000
mov dword [eax + 0x1358], 0x432a0000
mov dword [eax + 0x136c], 0
mov dword [eax + 0x1364], 0x3f800000
call fcn.10086c10
lea ecx, [ebp - 0x80]
call fcn.1002e790
lea ecx, [ebp - 0x68]
call fcn.1002e790
lea ecx, [ebp - 0xb8]
mov dword [ebp - 4], 0xffffffff
call fcn.10054340
lea eax, [ebp - 0x1c]
mov dword [ebp - 0x1c], 0x10032e30
lea ecx, [esi + 0x58]
push eax
call fcn.100469f0
mov dword [ebp - 0x1c], esi
mov eax, edi
mov ecx, edi
mov dword [eax + 0x1300], 0
imul eax, dword [eax + 0x1300], 0xeb
add eax, 0x14
mov dword [ecx + 0x12ec], eax
mov eax, ecx
lea ecx, [edi + 0x18]
mov dword [eax + 0x12f4], 0xaf
mov eax, dword [eax + 0x2c]
mov dword [edi + 0x1304], eax
lea eax, [ebp - 0x1c]
push eax
call fcn.100469f0
push dword [ebp - 0x18]
lea ecx, [ebp - 0xb8]
lea esi, [edi + 0x924]
call fcn.1002f300
push 6
push str.health
lea ecx, [ebp - 0xb8]
mov dword [ebp - 4], 0x18
call fcn.1002f320
mov dword [ebp - 4], 0x19
lea ecx, [ebp - 0x68]
push dword [ebp - 0x18]
call fcn.1002f300
push 0xa
push str.health_bar
lea ecx, [ebp - 0x68]
mov byte [ebp - 4], 0x1a
call fcn.1002f320
lea eax, [ebp - 0xb8]
mov byte [ebp - 4], 0x1b
push eax
lea ecx, [edi + 0x95c]
call fcn.10045420
mov eax, edi
lea ecx, [ebp - 0x68]
push ecx
lea ecx, [eax + 0x994]
mov byte [eax + 0x98d], 1
call fcn.10045420
lea ecx, [ebp - 0x68]
mov byte [edi + 0x990], 0
call fcn.1002e790
lea ecx, [ebp - 0xb8]
mov dword [ebp - 4], 0xffffffff
call fcn.1002e790
mov dword [ebp - 0x1c], esi
lea ecx, [edi + 0x18]
mov dword [esi + 0x18], 0
imul eax, dword [esi + 0x18], 0xeb
add eax, 0x14
mov dword [esi + 4], eax
mov dword [esi + 0xc], 0xaf
mov eax, dword [edi + 0x2c]
mov dword [esi + 0x1c], eax
lea eax, [ebp - 0x1c]
push eax
call fcn.100469f0
push dword [ebp - 0x18]
lea ecx, [ebp - 0xb8]
lea esi, [edi + 0x724]
call fcn.1002f300
push 4
push str.name
lea ecx, [ebp - 0xb8]
mov dword [ebp - 4], 0x1c
call fcn.1002f320
mov dword [ebp - 4], 0x1d
lea ecx, [ebp - 0x68]
push dword [ebp - 0x18]
call fcn.1002f300
push 8
push str.name_esp
lea ecx, [ebp - 0x68]
mov byte [ebp - 4], 0x1e
call fcn.1002f320
lea eax, [ebp - 0xb8]
mov byte [ebp - 4], 0x1f
push eax
lea ecx, [edi + 0x75c]
call fcn.10045420
mov eax, edi
lea ecx, [ebp - 0x68]
push ecx
lea ecx, [eax + 0x794]
mov byte [eax + 0x78d], 1
call fcn.10045420
lea ecx, [ebp - 0x68]
mov byte [edi + 0x790], 0
call fcn.1002e790
lea ecx, [ebp - 0xb8]
mov dword [ebp - 4], 0xffffffff
call fcn.1002e790
mov dword [ebp - 0x1c], esi
mov dword [esi + 0x18], 0
imul eax, dword [esi + 0x18], 0xeb
add eax, 0x14
mov dword [esi + 4], eax
mov dword [esi + 0xc], 0xaf
mov eax, dword [edi + 0x2c]
mov dword [esi + 0x1c], eax
lea ecx, [edi + 0x18]
lea eax, [ebp - 0x1c]
push eax
call fcn.100469f0
push dword [ebp - 0x18]
lea eax, [edi + 0x30]
lea ecx, [ebp - 0x98]
mov dword [ebp - 0x9c], eax
call fcn.1002f300
push 6
push str.normal
lea ecx, [ebp - 0x98]
mov dword [ebp - 4], 0x20
call fcn.1002f320
mov dword [ebp - 4], 0x21
lea ecx, [ebp - 0x80]
push dword [ebp - 0x18]
call fcn.1002f300
push 4
push str.bold
lea ecx, [ebp - 0x80]
mov byte [ebp - 4], 0x22
call fcn.1002f320
lea eax, [ebp - 0x25]
mov dword [ebp - 4], 0x23
push eax
lea ecx, [ebp - 0x68]
push ecx
lea edx, [ebp - 0x98]
push edx
lea ecx, [ebp - 0x4c]
call fcn.100867c0
push dword [ebp - 0x18]
lea ecx, [ebp - 0xb8]
call fcn.1002f300
push 0xa
push str.name_style
lea ecx, [ebp - 0xb8]
mov byte [ebp - 4], 0x25
call fcn.1002f320
push dword [ebp - 0x18]
lea ecx, [ebp - 0x68]
call fcn.1002f300
push 9
push str.name_font
lea ecx, [ebp - 0x68]
mov byte [ebp - 4], 0x27
call fcn.1002f320
lea eax, [ebp - 0xb8]
mov byte [ebp - 4], 0x28
push eax
lea ecx, [edi + 0x68]
call fcn.10045420
mov eax, edi
lea ecx, [ebp - 0x68]
push ecx
lea ecx, [eax + 0xa0]
mov byte [eax + 0x99], 1
call fcn.10045420
mov esi, dword [ebp - 0x4c]
mov ecx, edi
xor eax, eax
mov edx, 0xf
cmp byte [ecx + 0x99], al
cmovne eax, edx
mov dword [ecx + 0xcc], eax
add eax, 0x14
mov dword [ecx + 0x40], eax
mov dword [ecx + 0x44], eax
mov ecx, dword [ebp - 0x48]
mov dword [ebp - 0x1c], ecx
cmp esi, ecx
je 0x100646c4
nop dword [eax]
push esi
lea ecx, [edi + 0xb8]
call fcn.10054650
add esi, 0x18
cmp esi, dword [ebp - 0x1c]
jne 0x100646b0
mov ecx, dword [edi + 0xbc]
mov eax, 0x2aaaaaab
sub ecx, dword [edi + 0xb8]
imul ecx
sar edx, 2
mov eax, edx
shr eax, 0x1f
add eax, edx
je 0x100646ef
mov eax, edi
mov dword [eax + 0xc8], 0
lea ecx, [ebp - 0x68]
call fcn.1002e790
lea ecx, [ebp - 0xb8]
call fcn.1002e790
lea ecx, [ebp - 0x4c]
call fcn.1002e9d0
push fcn.1002e790
push 2
push 0x18
lea eax, [ebp - 0x98]
mov dword [ebp - 4], 0xffffffff
push eax
call fcn.1010e1b6
mov esi, dword [ebp - 0x9c]
lea eax, [ebp - 0x1c]
push eax
mov dword [ebp - 0x1c], 0x10032e40
lea ecx, [esi + 0x58]
call fcn.100469f0
mov dword [ebp - 0x1c], esi
mov eax, edi
mov ecx, edi
mov dword [eax + 0x48], 0
imul eax, dword [eax + 0x48], 0xeb
add eax, 0x14
mov dword [ecx + 0x34], eax
mov eax, ecx
lea ecx, [edi + 0x18]
mov dword [eax + 0x3c], 0xaf
mov eax, dword [eax + 0x2c]
mov dword [edi + 0x4c], eax
lea eax, [ebp - 0x1c]
push eax
call fcn.100469f0
push dword [ebp - 0x18]
lea ecx, [ebp - 0xb8]
lea esi, [edi + 0x7ac]
call fcn.1002f300
push 0xa
push str.name_color
lea ecx, [ebp - 0xb8]
mov dword [ebp - 4], 0x29
call fcn.1002f320
mov dword [ebp - 4], 0x2a
lea ecx, [ebp - 0x68]
push dword [ebp - 0x18]
call fcn.1002f300
push 0xe
push str.name_esp_color
lea ecx, [ebp - 0x68]
mov byte [ebp - 4], 0x2b
call fcn.1002f320
lea eax, [ebp - 0x68]
mov byte [ebp - 4], 0x2c
push eax
lea ecx, [edi + 0x81c]
call fcn.10045420
lea eax, [ebp - 0xb8]
push eax
lea ecx, [edi + 0x7e4]
call fcn.10045420
mov eax, dword [ebp - 0x24]
lea ecx, [ebp - 0x68]
mov dword [eax + 0x834], 0xffffffff
mov dword [eax + 0x84c], 0
call fcn.1002e790
lea ecx, [ebp - 0xb8]
mov dword [ebp - 4], 0xffffffff
call fcn.1002e790
lea eax, [ebp - 0x1c]
mov dword [ebp - 0x1c], 0x10032e40
lea ecx, [esi + 0x58]
push eax
call fcn.100469f0
mov eax, dword [ebp - 0x24]
mov dword [ebp - 0x1c], esi
mov dword [eax + 0x7c4], 0
imul eax, dword [eax + 0x7c4], 0xeb
mov ecx, dword [ebp - 0x24]
mov edi, ecx
add eax, 0x14
mov dword [ecx + 0x7b0], eax
mov eax, ecx
lea ecx, [edi + 0x18]
mov dword [eax + 0x7b8], 0xaf
mov eax, dword [eax + 0x2c]
mov dword [edi + 0x7c8], eax
lea eax, [ebp - 0x1c]
push eax
call fcn.100469f0
push dword [ebp - 0x18]
lea ecx, [ebp - 0xb8]
lea esi, [edi + 0x29c]
call fcn.1002f300
push 1
push 0x1012c868
lea ecx, [ebp - 0xb8]
mov dword [ebp - 4], 0x2d
call fcn.100546f0
mov dword [ebp - 4], 0x2e
lea ecx, [ebp - 0x68]
push dword [ebp - 0x18]
call fcn.1002f300
push 0xe
push str.name_esp_alpha
lea ecx, [ebp - 0x68]
mov byte [ebp - 4], 0x2f
call fcn.1002f320
push dword [ebp - 0x18]
lea ecx, [ebp - 0x80]
call fcn.1002f300
push 0xe
push str.name_esp_alpha
lea ecx, [ebp - 0x80]
mov byte [ebp - 4], 0x31
call fcn.1002f320
lea eax, [ebp - 0x68]
mov byte [ebp - 4], 0x32
push eax
lea ecx, [edi + 0x2d4]
call fcn.10045420
mov eax, edi
lea ecx, [ebp - 0xb8]
push ecx
lea ecx, [eax + 0x33c]
mov byte [eax + 0x305], 0
mov dword [eax + 0x354], 0
mov dword [eax + 0x2ac], 7
mov dword [eax + 0x2b0], 7
mov dword [eax + 0x310], 0
mov dword [eax + 0x314], 0x437f0000
mov dword [eax + 0x30c], 0x43160000
mov dword [eax + 0x320], 0
mov dword [eax + 0x318], 0x3f800000
call fcn.10086c10
lea ecx, [ebp - 0x80]
call fcn.1002e790
lea ecx, [ebp - 0x68]
call fcn.1002e790
lea ecx, [ebp - 0xb8]
mov dword [ebp - 4], 0xffffffff
call fcn.10054340
lea eax, [ebp - 0x1c]
mov dword [ebp - 0x1c], 0x10032e40
lea ecx, [esi + 0x58]
push eax
call fcn.100469f0
mov eax, edi
mov dword [ebp - 0x1c], esi
mov dword [eax + 0x2b4], 0
imul eax, dword [eax + 0x2b4], 0xeb
add eax, 0x14
mov ecx, edi
mov esi, ecx
mov dword [ecx + 0x2a0], eax
mov eax, ecx
lea ecx, [esi + 0x18]
mov dword [eax + 0x2a8], 0xaf
mov eax, dword [eax + 0x2c]
mov dword [esi + 0x2b8], eax
lea eax, [ebp - 0x1c]
push eax
call fcn.100469f0
lea eax, [esi + 0xa68]
mov dword [ebp - 0x18], eax
lea ecx, [ebp - 0x1b8]
push dword [ebp - 0x18]
call fcn.1002f300
push 5
push str.money
lea ecx, [ebp - 0x1b8]
mov dword [ebp - 4], 0x33
call fcn.1002f320
mov dword [ebp - 4], 0x34
lea ecx, [ebp - 0x1a0]
push dword [ebp - 0x18]
call fcn.1002f300
push 5
push str.armor
lea ecx, [ebp - 0x1a0]
mov byte [ebp - 4], 0x35
call fcn.1002f320
push dword [ebp - 0x18]
lea ecx, [ebp - 0x188]
call fcn.1002f300
push 4
push str.zoom
lea ecx, [ebp - 0x188]
mov byte [ebp - 4], 0x37
call fcn.1002f320
push dword [ebp - 0x18]
lea ecx, [ebp - 0x170]
call fcn.1002f300
push 7
push str.flashed
lea ecx, [ebp - 0x170]
mov byte [ebp - 4], 0x39
call fcn.1002f320
push dword [ebp - 0x18]
lea ecx, [ebp - 0x158]
call fcn.1002f300
push 6
push str.reload
lea ecx, [ebp - 0x158]
mov byte [ebp - 4], 0x3b
call fcn.1002f320
push dword [ebp - 0x18]
lea ecx, [ebp - 0x140]
call fcn.1002f300
push 4
push str.bomb
lea ecx, [ebp - 0x140]
mov byte [ebp - 4], 0x3d
call fcn.1002f320
push dword [ebp - 0x18]
lea ecx, [ebp - 0x128]
call fcn.1002f300
push 4
mov byte [ebp - 4], 0x3f
push str.fake
lea ecx, [ebp - 0x128]
call fcn.1002f320
push dword [ebp - 0x18]
lea ecx, [ebp - 0x110]
call fcn.1002f300
push 6
push str.lethal
lea ecx, [ebp - 0x110]
mov byte [ebp - 4], 0x41
call fcn.1002f320
push dword [ebp - 0x18]
lea ecx, [ebp - 0xf8]
call fcn.1002f300
push 8
push str.tickbase
lea ecx, [ebp - 0xf8]
mov byte [ebp - 4], 0x43
call fcn.1002f320
push dword [ebp - 0x18]
lea ecx, [ebp - 0xe0]
call fcn.1002f300
push 3
push 0x1012d5a8
lea ecx, [ebp - 0xe0]
mov byte [ebp - 4], 0x45
call fcn.1002f320
lea eax, [ebp - 0x25]
mov dword [ebp - 4], 0x46
push eax
lea ecx, [ebp - 0xc8]
push ecx
lea edx, [ebp - 0x1b8]
push edx
lea ecx, [ebp - 0x5c]
call fcn.100867c0
push dword [ebp - 0x18]
lea ecx, [ebp - 0x80]
call fcn.1002f300
push 0xb
push str.flags_enemy
lea ecx, [ebp - 0x80]
mov byte [ebp - 4], 0x48
call fcn.1002f320
push dword [ebp - 0x18]
lea ecx, [ebp - 0x40]
call fcn.1002f300
push 0xb
push 0x1012d590
lea ecx, [ebp - 0x40]
mov byte [ebp - 4], 0x4a
call fcn.1002f320
lea ecx, [ebp - 0xb0]
call fcn.1002fd10
lea eax, [ebp - 0x80]
mov byte [ebp - 4], 0x4c
push eax
lea ecx, [esi + 0xaa0]
call fcn.10045420
mov eax, edi
lea ecx, [ebp - 0x40]
push ecx
lea ecx, [eax + 0xad8]
mov byte [eax + 0xad1], 1
call fcn.10045420
mov ecx, edi
xor eax, eax
mov edx, 0xf
cmp byte [ecx + 0xad1], al
mov edi, dword [ebp - 0x58]
cmovne eax, edx
mov esi, dword [ebp - 0x5c]
mov dword [ecx + 0xb0c], eax
add eax, 0x14
mov dword [ecx + 0xa78], eax
mov dword [ecx + 0xa7c], eax
cmp esi, edi
je 0x10064c42
mov eax, ecx
add eax, 0xaf0
mov dword [ebp - 0x1c], eax
nop dword [eax]
push esi
mov ecx, eax
call fcn.10054650
mov eax, dword [ebp - 0x1c]
add esi, 0x18
cmp esi, edi
jne 0x10064c30
mov eax, dword [ebp - 0xac]
mov edi, dword [ebp - 0xb0]
mov dword [ebp - 0x20], eax
cmp edi, eax
je 0x10064d21
mov ecx, dword [ebp - 0x24]
add ecx, 0xb00
mov dword [ebp - 0x9c], ecx
nop dword [eax + eax]
mov eax, dword [edi]
mov dword [ebp - 0x1c], eax
lea eax, [ebp - 0xbc]
push eax
call fcn.1002dad0
mov ecx, dword [ebp - 0x9c]
mov esi, dword [eax]
lea eax, [ebp - 0xc0]
push eax
call fcn.1002dae0
push esi
lea edx, [ebp - 0x1c]
lea ecx, [ebp - 0xc4]
push dword [eax]
call fcn.1002f160
mov ecx, dword [ebp - 0x9c]
add esp, 8
mov esi, eax
lea eax, [ebp - 0x44]
push eax
call fcn.1002dad0
mov esi, dword [esi]
mov eax, dword [eax]
mov dword [ebp - 0x1bc], eax
mov eax, dword [ebp - 0x24]
mov ecx, dword [eax + 0xaf4]
sub ecx, dword [eax + 0xaf0]
mov eax, 0x2aaaaaab
imul ecx
sar edx, 2
mov eax, edx
shr eax, 0x1f
add eax, edx
cmp dword [ebp - 0x1c], eax
jae 0x10064cf8
mov ecx, dword [ebp - 0x9c]
lea eax, [ebp - 0x1c]
push eax
call fcn.100469f0
cmp esi, dword [ebp - 0x1bc]
jne 0x10064d0f
mov eax, dword [ebp - 0x24]
mov eax, dword [eax + 0xacc]
test eax, eax
je 0x10064d0f
call eax
mov ecx, dword [ebp - 0x9c]
add edi, 4
cmp edi, dword [ebp - 0x20]
jne 0x10064c70
lea ecx, [ebp - 0xb0]
call fcn.1002dda0
lea ecx, [ebp - 0x40]
call fcn.1002e790
lea ecx, [ebp - 0x80]
call fcn.1002e790
lea ecx, [ebp - 0x5c]
call fcn.1002e9d0
push fcn.1002e790
push 0xa
push 0x18
lea eax, [ebp - 0x1b8]
mov dword [ebp - 4], 0xffffffff
push eax
call fcn.1010e1b6
mov edi, dword [ebp - 0x24]
mov eax, dword [ebp - 0x18]
mov dword [ebp - 0x18], eax
mov dword [edi + 0xa80], 0
lea ecx, [edi + 0x18]
imul eax, dword [edi + 0xa80], 0xeb
add eax, 0x14
mov dword [edi + 0xa6c], eax
mov dword [edi + 0xa74], 0xaf
mov eax, dword [edi + 0x2c]
mov dword [edi + 0xa84], eax
lea eax, [ebp - 0x18]
push eax
call fcn.100469f0
push dword [ebp - 0x44]
lea ecx, [ebp - 0x40]
lea esi, [edi + 0xb98]
call fcn.1002f300
push 0xa
push str.weapontext
lea ecx, [ebp - 0x40]
mov dword [ebp - 4], 0x4d
call fcn.1002f320
mov dword [ebp - 4], 0x4e
lea ecx, [ebp - 0x80]
push dword [ebp - 0x44]
call fcn.1002f300
push 0xb
push str.weapon_text
lea ecx, [ebp - 0x80]
mov byte [ebp - 4], 0x4f
call fcn.1002f320
lea eax, [ebp - 0x40]
mov byte [ebp - 4], 0x50
push eax
lea ecx, [edi + 0xbd0]
call fcn.10045420
lea eax, [ebp - 0x80]
mov byte [edi + 0xc01], 1
push eax
lea ecx, [edi + 0xc08]
call fcn.10045420
lea ecx, [ebp - 0x80]
mov byte [edi + 0xc04], 0
call fcn.1002e790
lea ecx, [ebp - 0x40]
mov dword [ebp - 4], 0xffffffff
call fcn.1002e790
mov dword [ebp - 0x18], esi
lea ecx, [edi + 0x18]
mov dword [esi + 0x18], 0
imul eax, dword [esi + 0x18], 0xeb
add eax, 0x14
mov dword [esi + 4], eax
mov dword [esi + 0xc], 0xaf
mov eax, dword [edi + 0x2c]
mov dword [esi + 0x1c], eax
lea eax, [ebp - 0x18]
push eax
call fcn.100469f0
push dword [ebp - 0x44]
lea esi, [edi + 0xb10]
lea ecx, [ebp - 0x40]
call fcn.1002f300
push 0xa
push str.weaponicon
lea ecx, [ebp - 0x40]
mov dword [ebp - 4], 0x51
call fcn.1002f320
mov dword [ebp - 4], 0x52
lea ecx, [ebp - 0x80]
push dword [ebp - 0x44]
call fcn.1002f300
push 0xb
push str.weapon_icon
lea ecx, [ebp - 0x80]
mov byte [ebp - 4], 0x53
call fcn.1002f320
lea eax, [ebp - 0x40]
mov byte [ebp - 4], 0x54
push eax
lea ecx, [edi + 0xb48]
call fcn.10045420
lea eax, [ebp - 0x80]
mov byte [edi + 0xb79], 1
push eax
lea ecx, [edi + 0xb80]
call fcn.10045420
lea ecx, [ebp - 0x80]
mov byte [edi + 0xb7c], 0
call fcn.1002e790
lea ecx, [ebp - 0x40]
mov dword [ebp - 4], 0xffffffff
call fcn.1002e790
mov dword [ebp - 0x18], esi
lea ecx, [edi + 0x18]
mov dword [esi + 0x18], 0
imul eax, dword [esi + 0x18], 0xeb
add eax, 0x14
mov dword [esi + 4], eax
mov dword [esi + 0xc], 0xaf
mov eax, dword [edi + 0x2c]
mov dword [esi + 0x1c], eax
lea eax, [ebp - 0x18]
push eax
call fcn.100469f0
push dword [ebp - 0x44]
lea ecx, [ebp - 0x40]
lea esi, [edi + 0xc20]
call fcn.1002f300
push 0xb
push str.weaponcolor
lea ecx, [ebp - 0x40]
mov dword [ebp - 4], 0x55
call fcn.1002f320
mov dword [ebp - 4], 0x56
lea ecx, [ebp - 0x80]
push dword [ebp - 0x44]
call fcn.1002f300
push 0x11
push str.weapon_icon_color
lea ecx, [ebp - 0x80]
mov byte [ebp - 4], 0x57
call fcn.1002f320
lea eax, [ebp - 0x80]
mov byte [ebp - 4], 0x58
push eax
lea ecx, [edi + 0xc90]
call fcn.10045420
lea eax, [ebp - 0x40]
push eax
lea ecx, [edi + 0xc58]
call fcn.10045420
mov dword [edi + 0xca8], 0xffffffff
mov dword [edi + 0xcc0], 0
lea ecx, [ebp - 0x80]
call fcn.1002e790
lea ecx, [ebp - 0x40]
mov dword [ebp - 4], 0xffffffff
call fcn.1002e790
lea eax, [ebp - 0x18]
mov dword [ebp - 0x18], 0x10032e50
lea ecx, [esi + 0x58]
push eax
call fcn.100469f0
mov dword [ebp - 0x18], esi
lea ecx, [edi + 0x18]
mov dword [edi + 0xc38], 0
imul eax, dword [edi + 0xc38], 0xeb
add eax, 0x14
mov dword [edi + 0xc24], eax
mov dword [edi + 0xc2c], 0xaf
mov eax, dword [edi + 0x2c]
mov dword [edi + 0xc3c], eax
lea eax, [ebp - 0x18]
push eax
call fcn.100469f0
push dword [ebp - 0x44]
lea ecx, [ebp - 0x40]
lea esi, [edi + 0xd98]
call fcn.1002f300
push 4
push str.ammo
lea ecx, [ebp - 0x40]
mov dword [ebp - 4], 0x59
call fcn.1002f320
mov dword [ebp - 4], 0x5a
lea ecx, [ebp - 0x80]
push dword [ebp - 0x44]
call fcn.1002f300
push 4
push str.ammo
lea ecx, [ebp - 0x80]
mov byte [ebp - 4], 0x5b
call fcn.1002f320
lea eax, [ebp - 0x40]
mov byte [ebp - 4], 0x5c
push eax
lea ecx, [edi + 0xdd0]
call fcn.10045420
lea eax, [ebp - 0x80]
mov byte [edi + 0xe01], 1
push eax
lea ecx, [edi + 0xe08]
call fcn.10045420
lea ecx, [ebp - 0x80]
mov byte [edi + 0xe04], 0
call fcn.1002e790
lea ecx, [ebp - 0x40]
mov dword [ebp - 4], 0xffffffff
call fcn.1002e790
mov dword [ebp - 0x18], esi
lea ecx, [edi + 0x18]
mov dword [esi + 0x18], 0
imul eax, dword [esi + 0x18], 0xeb
add eax, 0x14
mov dword [esi + 4], eax
mov dword [esi + 0xc], 0xaf
mov eax, dword [edi + 0x2c]
mov dword [esi + 0x1c], eax
lea eax, [ebp - 0x18]
push eax
call fcn.100469f0
push dword [ebp - 0x44]
lea ecx, [ebp - 0x40]
lea esi, [edi + 0xea8]
call fcn.1002f300
push 0xa
mov dword [ebp - 4], 0x5d
lea ecx, [ebp - 0x40]
push 0x1012d5e8
call fcn.1002f320
mov dword [ebp - 4], 0x5e
lea ecx, [ebp - 0x80]
push dword [ebp - 0x44]
call fcn.1002f300
push 0xa
push str.ammo_color
lea ecx, [ebp - 0x80]
mov byte [ebp - 4], 0x5f
call fcn.1002f320
lea eax, [ebp - 0x80]
mov byte [ebp - 4], 0x60
push eax
lea ecx, [edi + 0xf18]
call fcn.10045420
lea eax, [ebp - 0x40]
push eax
lea ecx, [edi + 0xee0]
call fcn.10045420
lea ecx, [ebp - 0x80]
mov dword [edi + 0xf30], 0xebc88c50
mov dword [edi + 0xf48], 0
call fcn.1002e790
lea ecx, [ebp - 0x40]
mov dword [ebp - 4], 0xffffffff
call fcn.1002e790
lea eax, [ebp - 0x18]
mov dword [ebp - 0x18], 0x10032eb0
lea ecx, [esi + 0x58]
push eax
call fcn.100469f0
mov dword [ebp - 0x18], esi
lea ecx, [edi + 0x18]
mov dword [edi + 0xec0], 0
imul eax, dword [edi + 0xec0], 0xeb
add eax, 0x14
mov dword [edi + 0xeac], eax
mov dword [edi + 0xeb4], 0xaf
mov eax, dword [edi + 0x2c]
mov dword [edi + 0xec4], eax
lea eax, [ebp - 0x18]
push eax
call fcn.100469f0
push dword [ebp - 0x44]
lea ecx, [ebp - 0x40]
lea esi, [edi + 0xe20]
call fcn.1002f300
push 8
push str.distance
lea ecx, [ebp - 0x40]
mov dword [ebp - 4], 0x61
call fcn.1002f320
mov dword [ebp - 4], 0x62
lea ecx, [ebp - 0x80]
push dword [ebp - 0x44]
call fcn.1002f300
push 8
push str.distance
lea ecx, [ebp - 0x80]
mov byte [ebp - 4], 0x63
call fcn.1002f320
lea eax, [ebp - 0x40]
mov byte [ebp - 4], 0x64
push eax
lea ecx, [edi + 0xe58]
call fcn.10045420
lea eax, [ebp - 0x80]
mov byte [edi + 0xe89], 1
push eax
lea ecx, [edi + 0xe90]
call fcn.10045420
lea ecx, [ebp - 0x80]
mov byte [edi + 0xe8c], 0
call fcn.1002e790
lea ecx, [ebp - 0x40]
mov dword [ebp - 4], 0xffffffff
call fcn.1002e790
mov dword [ebp - 0x18], esi
lea ecx, [edi + 0x18]
mov dword [esi + 0x18], 0
imul eax, dword [esi + 0x18], 0xeb
add eax, 0x14
mov dword [esi + 4], eax
mov dword [esi + 0xc], 0xaf
mov eax, dword [edi + 0x2c]
mov dword [esi + 0x1c], eax
lea eax, [ebp - 0x18]
push eax
call fcn.100469f0
push dword [ebp - 0x44]
lea ecx, [ebp - 0x40]
lea esi, [edi + 0xf64]
call fcn.1002f300
push 0xa
push str.lby_update
lea ecx, [ebp - 0x40]
mov dword [ebp - 4], 0x65
call fcn.1002f320
mov dword [ebp - 4], 0x66
lea ecx, [ebp - 0x80]
push dword [ebp - 0x44]
call fcn.1002f300
push 9
push str.lby_timer
lea ecx, [ebp - 0x80]
mov byte [ebp - 4], 0x67
call fcn.1002f320
lea eax, [ebp - 0x40]
mov byte [ebp - 4], 0x68
push eax
lea ecx, [edi + 0xf9c]
call fcn.10045420
lea eax, [ebp - 0x80]
mov byte [edi + 0xfcd], 1
push eax
lea ecx, [edi + 0xfd4]
call fcn.10045420
lea ecx, [ebp - 0x80]
mov byte [edi + 0xfd0], 0
call fcn.1002e790
lea ecx, [ebp - 0x40]
mov dword [ebp - 4], 0xffffffff
call fcn.1002e790
mov dword [ebp - 0x18], esi
lea ecx, [edi + 0x18]
mov dword [esi + 0x18], 0
imul eax, dword [esi + 0x18], 0xeb
add eax, 0x14
mov dword [esi + 4], eax
mov dword [esi + 0xc], 0xaf
mov eax, dword [edi + 0x2c]
mov dword [esi + 0x1c], eax
lea eax, [ebp - 0x18]
push eax
call fcn.100469f0
push dword [ebp - 0x44]
lea ecx, [ebp - 0x40]
lea esi, [edi + 0xfec]
call fcn.1002f300
push 0x10
push str.lby_update_color
lea ecx, [ebp - 0x40]
mov dword [ebp - 4], 0x69
call fcn.1002f320
mov dword [ebp - 4], 0x6a
lea ecx, [ebp - 0x80]
push dword [ebp - 0x44]
call fcn.1002f300
push 0xf
push str.lby_timer_color
lea ecx, [ebp - 0x80]
mov byte [ebp - 4], 0x6b
call fcn.1002f320
lea eax, [ebp - 0x80]
mov byte [ebp - 4], 0x6c
push eax
lea ecx, [edi + 0x105c]
call fcn.10045420
lea eax, [ebp - 0x40]
push eax
lea ecx, [edi + 0x1024]
call fcn.10045420
lea ecx, [ebp - 0x80]
mov dword [edi + 0x1074], 0xffff00ff
mov dword [edi + 0x108c], 0
call fcn.1002e790
lea ecx, [ebp - 0x40]
mov dword [ebp - 4], 0xffffffff
call fcn.1002e790
lea eax, [ebp - 0x18]
mov dword [ebp - 0x18], 0x10032e90
lea ecx, [esi + 0x58]
push eax
call fcn.100469f0
mov dword [ebp - 0x18], esi
lea ecx, [edi + 0x18]
mov dword [edi + 0x1004], 0
imul eax, dword [edi + 0x1004], 0xeb
add eax, 0x14
mov dword [edi + 0xff0], eax
mov dword [edi + 0xff8], 0xaf
mov eax, dword [edi + 0x2c]
mov dword [edi + 0x1008], eax
lea eax, [ebp - 0x18]
push eax
call fcn.100469f0
push dword [ebp - 0x44]
lea ecx, [ebp - 0x40]
lea esi, [edi + 0x1590]
call fcn.1002f300
push 4
push str.glow
lea ecx, [ebp - 0x40]
mov dword [ebp - 4], 0x6d
call fcn.1002f320
mov dword [ebp - 4], 0x6e
lea ecx, [ebp - 0x80]
push dword [ebp - 0x44]
call fcn.1002f300
push 4
push str.glow
lea ecx, [ebp - 0x80]
mov byte [ebp - 4], 0x6f
call fcn.1002f320
lea eax, [ebp - 0x40]
mov byte [ebp - 4], 0x70
push eax
lea ecx, [edi + 0x15c8]
call fcn.10045420
lea eax, [ebp - 0x80]
mov byte [edi + 0x15f9], 1
push eax
lea ecx, [edi + 0x1600]
call fcn.10045420
lea ecx, [ebp - 0x80]
mov byte [edi + 0x15fc], 0
call fcn.1002e790
lea ecx, [ebp - 0x40]
mov dword [ebp - 4], 0xffffffff
call fcn.1002e790
mov dword [ebp - 0x18], esi
mov dword [esi + 0x18], 0
imul eax, dword [esi + 0x18], 0xeb
add eax, 0x14
mov dword [esi + 4], eax
lea ecx, [edi + 0x18]
mov dword [esi + 0xc], 0xaf
mov eax, dword [edi + 0x2c]
mov dword [esi + 0x1c], eax
lea eax, [ebp - 0x18]
push eax
call fcn.100469f0
push dword [ebp - 0x44]
lea ecx, [ebp - 0x40]
lea esi, [edi + 0x1618]
call fcn.1002f300
push 0xa
push str.glow_enemy
lea ecx, [ebp - 0x40]
mov dword [ebp - 4], 0x71
call fcn.1002f320
mov dword [ebp - 4], 0x72
lea ecx, [ebp - 0x80]
push dword [ebp - 0x44]
call fcn.1002f300
push 0xa
push str.glow_color
lea ecx, [ebp - 0x80]
mov byte [ebp - 4], 0x73
call fcn.1002f320
lea eax, [ebp - 0x80]
mov byte [ebp - 4], 0x74
push eax
lea ecx, [edi + 0x1688]
call fcn.10045420
lea eax, [ebp - 0x40]
push eax
lea ecx, [edi + 0x1650]
call fcn.10045420
lea ecx, [ebp - 0x80]
mov dword [edi + 0x16a0], 0xff7739b4
mov dword [edi + 0x16b8], 0
call fcn.1002e790
lea ecx, [ebp - 0x40]
mov dword [ebp - 4], 0xffffffff
call fcn.1002e790
lea eax, [ebp - 0x18]
mov dword [ebp - 0x18], 0x10032ea0
lea ecx, [esi + 0x58]
push eax
call fcn.100469f0
mov dword [ebp - 0x18], esi
lea ecx, [edi + 0x18]
mov dword [edi + 0x1630], 0
imul eax, dword [edi + 0x1630], 0xeb
add eax, 0x14
mov dword [edi + 0x161c], eax
mov dword [edi + 0x1624], 0xaf
mov eax, dword [edi + 0x2c]
mov dword [edi + 0x1634], eax
lea eax, [ebp - 0x18]
push eax
call fcn.100469f0
push dword [ebp - 0x44]
lea ecx, [ebp - 0x40]
lea esi, [edi + 0x16d4]
call fcn.1002f300
push 1
push 0x1012c868
lea ecx, [ebp - 0x40]
mov dword [ebp - 4], 0x75
call fcn.100546f0
mov dword [ebp - 4], 0x76
lea ecx, [ebp - 0x80]
push dword [ebp - 0x44]
call fcn.1002f300
mov byte [ebp - 4], 0x77
push 0xa
push str.glow_blend
lea ecx, [ebp - 0x80]
call fcn.1002f320
push dword [ebp - 0x44]
lea ecx, [ebp - 0x68]
call fcn.1002f300
push 0
push 0x101298c6
lea ecx, [ebp - 0x68]
mov byte [ebp - 4], 0x79
call fcn.1002f320
lea eax, [ebp - 0x80]
mov byte [ebp - 4], 0x7a
push eax
lea ecx, [edi + 0x170c]
call fcn.10045420
mov eax, edi
lea ecx, [ebp - 0x40]
push ecx
lea ecx, [eax + 0x1774]
mov byte [eax + 0x173d], 0
mov dword [eax + 0x178c], 0
mov dword [eax + 0x16e4], 7
mov dword [eax + 0x16e8], 7
mov dword [eax + 0x1748], 0
mov dword [eax + 0x174c], 0x42c80000
mov dword [eax + 0x1744], 0x41f00000
mov dword [eax + 0x1758], 0
mov dword [eax + 0x1750], 0x3f800000
call fcn.10086c10
lea ecx, [ebp - 0x68]
call fcn.1002e790
lea ecx, [ebp - 0x80]
call fcn.1002e790
lea ecx, [ebp - 0x40]
mov dword [ebp - 4], 0xffffffff
call fcn.10054340
lea eax, [ebp - 0x18]
mov dword [ebp - 0x18], 0x10032ea0
lea ecx, [esi + 0x58]
push eax
call fcn.100469f0
mov dword [ebp - 0x18], esi
lea ecx, [edi + 0x18]
mov dword [edi + 0x16ec], 0
imul eax, dword [edi + 0x16ec], 0xeb
add eax, 0x14
mov dword [edi + 0x16d8], eax
mov dword [edi + 0x16e0], 0xaf
mov eax, dword [edi + 0x2c]
mov dword [edi + 0x16f0], eax
lea eax, [ebp - 0x18]
push eax
call fcn.100469f0
push dword [ebp - 0x44]
lea ecx, [ebp - 0x40]
lea esi, [edi + 0x1830]
call fcn.1002f300
push 0xa
push str.glow_bloom
lea ecx, [ebp - 0x40]
mov dword [ebp - 4], 0x7b
call fcn.1002f320
mov dword [ebp - 4], 0x7c
lea ecx, [ebp - 0x80]
push dword [ebp - 0x44]
call fcn.1002f300
push 0xa
push str.bloom_glow
lea ecx, [ebp - 0x80]
mov byte [ebp - 4], 0x7d
call fcn.1002f320
mov byte [ebp - 4], 0x7e
lea eax, [ebp - 0x40]
push eax
lea ecx, [edi + 0x1868]
call fcn.10045420
lea eax, [ebp - 0x80]
mov byte [edi + 0x1899], 1
push eax
lea ecx, [edi + 0x18a0]
call fcn.10045420
lea ecx, [ebp - 0x80]
mov byte [edi + 0x189c], 0
call fcn.1002e790
lea ecx, [ebp - 0x40]
mov dword [ebp - 4], 0xffffffff
call fcn.1002e790
mov dword [ebp - 0x18], esi
lea ecx, [edi + 0x18]
mov dword [esi + 0x18], 0
imul eax, dword [esi + 0x18], 0xeb
add eax, 0x14
mov dword [esi + 4], eax
mov dword [esi + 0xc], 0xaf
mov eax, dword [edi + 0x2c]
mov dword [esi + 0x1c], eax
lea eax, [ebp - 0x18]
push eax
call fcn.100469f0
push dword [ebp - 0x44]
lea ecx, [ebp - 0x40]
lea esi, [edi + 0x10a8]
call fcn.1002f300
push 9
push str.hitmarker
lea ecx, [ebp - 0x40]
mov dword [ebp - 4], 0x7f
call fcn.1002f320
mov dword [ebp - 4], 0x80
lea ecx, [ebp - 0x80]
push dword [ebp - 0x44]
call fcn.1002f300
push 9
push str.hitmarker
lea ecx, [ebp - 0x80]
mov byte [ebp - 4], 0x81
call fcn.1002f320
lea eax, [ebp - 0x40]
mov byte [ebp - 4], 0x82
push eax
lea ecx, [edi + 0x10e0]
call fcn.10045420
lea eax, [ebp - 0x80]
mov byte [edi + 0x1111], 1
push eax
lea ecx, [edi + 0x1118]
call fcn.10045420
lea ecx, [ebp - 0x80]
mov byte [edi + 0x1114], 0
call fcn.1002e790
lea ecx, [ebp - 0x40]
mov dword [ebp - 4], 0xffffffff
call fcn.1002e790
mov dword [ebp - 0x18], esi
lea ecx, [edi + 0x18]
mov dword [esi + 0x18], 0
imul eax, dword [esi + 0x18], 0xeb
add eax, 0x14
mov dword [esi + 4], eax
mov dword [esi + 0xc], 0xaf
mov eax, dword [edi + 0x2c]
mov dword [esi + 0x1c], eax
lea eax, [ebp - 0x18]
push eax
call fcn.100469f0
push dword [ebp - 0x44]
lea ecx, [ebp - 0x40]
lea esi, [edi + 0x1130]
call fcn.1002f300
push 0xb
push str.hitmarker3d
lea ecx, [ebp - 0x40]
mov dword [ebp - 4], 0x83
call fcn.1002f320
mov dword [ebp - 4], 0x84
lea ecx, [ebp - 0x80]
push dword [ebp - 0x44]
call fcn.1002f300
push 0xf
push str.world_hitmarker
lea ecx, [ebp - 0x80]
mov byte [ebp - 4], 0x85
call fcn.1002f320
lea eax, [ebp - 0x40]
mov byte [ebp - 4], 0x86
push eax
lea ecx, [edi + 0x1168]
call fcn.10045420
lea eax, [ebp - 0x80]
mov byte [edi + 0x1199], 1
push eax
lea ecx, [edi + 0x11a0]
call fcn.10045420
lea ecx, [ebp - 0x80]
mov byte [edi + 0x119c], 0
call fcn.1002e790
lea ecx, [ebp - 0x40]
mov dword [ebp - 4], 0xffffffff
call fcn.1002e790
lea eax, [ebp - 0x18]
mov dword [ebp - 0x18], 0x10033670
lea ecx, [esi + 0x58]
push eax
call fcn.100469f0
mov dword [ebp - 0x18], esi
lea ecx, [edi + 0x18]
mov dword [edi + 0x1148], 0
imul eax, dword [edi + 0x1148], 0xeb
add eax, 0x14
mov dword [edi + 0x1134], eax
mov dword [edi + 0x113c], 0xaf
mov eax, dword [edi + 0x2c]
mov dword [edi + 0x114c], eax
lea eax, [ebp - 0x18]
push eax
call fcn.100469f0
push dword [ebp - 0x44]
lea ecx, [ebp - 0x40]
lea esi, [edi + 0x11b8]
call fcn.1002f300
push 0xf
push str.hitmarker_sound
lea ecx, [ebp - 0x40]
mov dword [ebp - 4], 0x87
call fcn.1002f320
mov dword [ebp - 4], 0x88
lea ecx, [ebp - 0x80]
push dword [ebp - 0x44]
call fcn.1002f300
push 0xf
push 0x1012d6b8
lea ecx, [ebp - 0x80]
mov byte [ebp - 4], 0x89
call fcn.1002f320
lea eax, [ebp - 0x40]
mov byte [ebp - 4], 0x8a
push eax
lea ecx, [edi + 0x11f0]
call fcn.10045420
lea eax, [ebp - 0x80]
mov byte [edi + 0x1221], 1
push eax
lea ecx, [edi + 0x1228]
call fcn.10045420
lea ecx, [ebp - 0x80]
mov byte [edi + 0x1224], 0
call fcn.1002e790
lea ecx, [ebp - 0x40]
mov dword [ebp - 4], 0xffffffff
call fcn.1002e790
lea eax, [ebp - 0x18]
mov dword [ebp - 0x18], 0x10033670
lea ecx, [esi + 0x58]
push eax
call fcn.100469f0
mov dword [ebp - 0x18], esi
lea ecx, [edi + 0x18]
mov dword [edi + 0x11d0], 0
imul eax, dword [edi + 0x11d0], 0xeb
add eax, 0x14
mov dword [edi + 0x11bc], eax
mov dword [edi + 0x11c4], 0xaf
mov eax, dword [edi + 0x2c]
mov dword [edi + 0x11d4], eax
lea eax, [ebp - 0x18]
push eax
call fcn.100469f0
push dword [ebp - 0x44]
lea ecx, [ebp - 0x40]
lea esi, [edi + 0x13a4]
call fcn.1002f300
push 8
push str.skeleton
lea ecx, [ebp - 0x40]
mov dword [ebp - 4], 0x8b
call fcn.1002f320
mov dword [ebp - 4], 0x8c
lea ecx, [ebp - 0x80]
push dword [ebp - 0x44]
call fcn.1002f300
push 8
push str.skeleton
lea ecx, [ebp - 0x80]
mov byte [ebp - 4], 0x8d
call fcn.1002f320
lea eax, [ebp - 0x40]
mov byte [ebp - 4], 0x8e
push eax
lea ecx, [edi + 0x13dc]
call fcn.10045420
lea eax, [ebp - 0x80]
mov byte [edi + 0x140d], 1
push eax
lea ecx, [edi + 0x1414]
call fcn.10045420
lea ecx, [ebp - 0x80]
mov byte [edi + 0x1410], 0
call fcn.1002e790
lea ecx, [ebp - 0x40]
mov dword [ebp - 4], 0xffffffff
call fcn.1002e790
mov dword [ebp - 0x18], esi
lea ecx, [edi + 0x18]
mov dword [esi + 0x18], 0
imul eax, dword [esi + 0x18], 0xeb
add eax, 0x14
mov dword [esi + 4], eax
mov dword [esi + 0xc], 0xaf
mov eax, dword [edi + 0x2c]
mov dword [esi + 0x1c], eax
lea eax, [ebp - 0x18]
push eax
call fcn.100469f0
push dword [ebp - 0x44]
lea ecx, [ebp - 0x40]
lea esi, [edi + 0x142c]
call fcn.1002f300
mov dword [ebp - 4], 0x8f
push 0xe
push str.skeleton_enemy
lea ecx, [ebp - 0x40]
call fcn.1002f320
mov dword [ebp - 4], 0x90
lea ecx, [ebp - 0x80]
push dword [ebp - 0x44]
call fcn.1002f300
push 0xe
push str.skeleton_color
lea ecx, [ebp - 0x80]
mov byte [ebp - 4], 0x91
call fcn.1002f320
lea eax, [ebp - 0x80]
mov byte [ebp - 4], 0x92
push eax
lea ecx, [edi + 0x149c]
call fcn.10045420
lea eax, [ebp - 0x40]
push eax
lea ecx, [edi + 0x1464]
call fcn.10045420
lea ecx, [ebp - 0x80]
mov dword [edi + 0x14b4], 0xffaaffff
mov dword [edi + 0x14cc], 0
call fcn.1002e790
lea ecx, [ebp - 0x40]
mov dword [ebp - 4], 0xffffffff
call fcn.1002e790
lea eax, [ebp - 0x18]
mov dword [ebp - 0x18], 0x10032e60
lea ecx, [esi + 0x58]
push eax
call fcn.100469f0
mov dword [ebp - 0x18], esi
lea ecx, [edi + 0x18]
mov dword [edi + 0x1444], 0
imul eax, dword [edi + 0x1444], 0xeb
add eax, 0x14
mov dword [edi + 0x1430], eax
mov dword [edi + 0x1438], 0xaf
mov eax, dword [edi + 0x2c]
mov dword [edi + 0x1448], eax
lea eax, [ebp - 0x18]
push eax
call fcn.100469f0
push dword [ebp - 0x44]
lea ecx, [ebp - 0x40]
lea esi, [edi + 0x1974]
call fcn.1002f300
push 1
push 0x1012c868
lea ecx, [ebp - 0x40]
mov dword [ebp - 4], 0x93
call fcn.100546f0
mov dword [ebp - 4], 0x94
lea ecx, [ebp - 0x80]
push dword [ebp - 0x44]
call fcn.1002f300
push 0xe
push str.skeleton_alpha
lea ecx, [ebp - 0x80]
mov byte [ebp - 4], 0x95
call fcn.1002f320
push dword [ebp - 0x44]
lea ecx, [ebp - 0x68]
call fcn.1002f300
push 0
push 0x101298c6
lea ecx, [ebp - 0x68]
mov byte [ebp - 4], 0x97
call fcn.1002f320
mov byte [ebp - 4], 0x98
lea eax, [ebp - 0x80]
push eax
lea ecx, [edi + 0x19ac]
call fcn.10045420
mov eax, edi
lea ecx, [ebp - 0x40]
push ecx
lea ecx, [eax + 0x1a14]
mov byte [eax + 0x19dd], 0
mov dword [eax + 0x1a2c], 0
mov dword [eax + 0x1984], 7
mov dword [eax + 0x1988], 7
mov dword [eax + 0x19e8], 0
mov dword [eax + 0x19ec], 0x437f0000
mov dword [eax + 0x19e4], 0x437f0000
mov dword [eax + 0x19f8], 0
mov dword [eax + 0x19f0], 0x3f800000
call fcn.10086c10
lea ecx, [ebp - 0x68]
call fcn.1002e790
lea ecx, [ebp - 0x80]
call fcn.1002e790
lea ecx, [ebp - 0x40]
mov dword [ebp - 4], 0xffffffff
call fcn.10054340
lea eax, [ebp - 0x18]
mov dword [ebp - 0x18], 0x10032e60
lea ecx, [esi + 0x58]
push eax
call fcn.100469f0
mov dword [ebp - 0x18], esi
lea ecx, [edi + 0x18]
mov dword [edi + 0x198c], 0
imul eax, dword [edi + 0x198c], 0xeb
add eax, 0x14
mov dword [edi + 0x1978], eax
mov dword [edi + 0x1980], 0xaf
mov eax, dword [edi + 0x2c]
mov dword [edi + 0x1990], eax
lea eax, [ebp - 0x18]
push eax
call fcn.100469f0
push dword [ebp - 0x44]
lea ecx, [ebp - 0x40]
lea esi, [edi + 0x49c]
call fcn.1002f300
push 9
push str.offscreen
lea ecx, [ebp - 0x40]
mov dword [ebp - 4], 0x99
call fcn.1002f320
mov dword [ebp - 4], 0x9a
lea ecx, [ebp - 0x80]
push dword [ebp - 0x44]
call fcn.1002f300
push 0x10
push str.out_of_pov_arrow
lea ecx, [ebp - 0x80]
mov byte [ebp - 4], 0x9b
call fcn.1002f320
lea eax, [ebp - 0x40]
mov byte [ebp - 4], 0x9c
push eax
lea ecx, [edi + 0x4d4]
call fcn.10045420
lea eax, [ebp - 0x80]
mov byte [edi + 0x505], 1
push eax
lea ecx, [edi + 0x50c]
call fcn.10045420
lea ecx, [ebp - 0x80]
mov byte [edi + 0x508], 0
call fcn.1002e790
lea ecx, [ebp - 0x40]
mov dword [ebp - 4], 0xffffffff
call fcn.1002e790
mov dword [ebp - 0x18], esi
mov dword [esi + 0x18], 0
lea ecx, [edi + 0x18]
imul eax, dword [esi + 0x18], 0xeb
add eax, 0x14
mov dword [esi + 4], eax
mov dword [esi + 0xc], 0xaf
mov eax, dword [edi + 0x2c]
mov dword [esi + 0x1c], eax
lea eax, [ebp - 0x18]
push eax
call fcn.100469f0
push dword [ebp - 0x44]
mov esi, dword [0x1012a188]
lea ecx, [ebp - 0x40]
add edi, 0x524
call fcn.1002f300
push 0xf
push str.offscreen_color
lea ecx, [ebp - 0x40]
mov dword [ebp - 4], 0x9d
call fcn.1002f320
mov dword [ebp - 4], 0x9e
lea ecx, [ebp - 0x80]
push dword [ebp - 0x44]
call fcn.1002f300
push 0x13
push str.offscreen_esp_color
lea ecx, [ebp - 0x80]
mov byte [ebp - 4], 0x9f
call fcn.1002f320
mov ecx, dword [ebp - 0x24]
lea eax, [ebp - 0x80]
push eax
add ecx, 0x594
mov byte [ebp - 4], 0xa0
call fcn.10045420
mov ecx, dword [ebp - 0x24]
lea eax, [ebp - 0x40]
push eax
lea ecx, [ecx + 0x55c]
call fcn.10045420
mov eax, dword [ebp - 0x24]
lea ecx, [ebp - 0x80]
mov dword [eax + 0x5ac], esi
mov dword [eax + 0x5c4], 0
call fcn.1002e790
lea ecx, [ebp - 0x40]
mov dword [ebp - 4], 0xffffffff
call fcn.1002e790
lea eax, [ebp - 0x18]
mov dword [ebp - 0x18], 0x10032e70
lea ecx, [edi + 0x58]
push eax
call fcn.100469f0
mov dword [ebp - 0x18], edi
mov edi, dword [ebp - 0x24]
mov dword [edi + 0x53c], 0
lea ecx, [edi + 0x18]
imul eax, dword [edi + 0x53c], 0xeb
add eax, 0x14
mov dword [edi + 0x528], eax
mov dword [edi + 0x530], 0xaf
mov eax, dword [edi + 0x2c]
mov dword [edi + 0x540], eax
lea eax, [ebp - 0x18]
push eax
call fcn.100469f0
push dword [ebp - 0x44]
lea ecx, [ebp - 0x40]
lea esi, [edi + 0x5e0]
call fcn.1002f300
push 8
push str.footstep
lea ecx, [ebp - 0x40]
mov dword [ebp - 4], 0xa1
call fcn.1002f320
mov dword [ebp - 4], 0xa2
lea ecx, [ebp - 0x80]
push dword [ebp - 0x44]
call fcn.1002f300
push 0x10
push str.visualize_sounds
lea ecx, [ebp - 0x80]
mov byte [ebp - 4], 0xa3
call fcn.1002f320
lea eax, [ebp - 0x40]
mov byte [ebp - 4], 0xa4
push eax
lea ecx, [edi + 0x618]
call fcn.10045420
lea eax, [ebp - 0x80]
mov byte [edi + 0x649], 1
push eax
lea ecx, [edi + 0x650]
call fcn.10045420
lea ecx, [ebp - 0x80]
mov byte [edi + 0x64c], 0
call fcn.1002e790
lea ecx, [ebp - 0x40]
mov dword [ebp - 4], 0xffffffff
call fcn.1002e790
mov dword [ebp - 0x18], esi
lea ecx, [edi + 0x18]
mov dword [esi + 0x18], 0
imul eax, dword [esi + 0x18], 0xeb
add eax, 0x14
mov dword [esi + 4], eax
mov dword [esi + 0xc], 0xaf
mov eax, dword [edi + 0x2c]
mov dword [esi + 0x1c], eax
lea eax, [ebp - 0x18]
push eax
call fcn.100469f0
push dword [ebp - 0x44]
lea ecx, [ebp - 0x40]
lea esi, [edi + 0x668]
call fcn.1002f300
push 0xb
push str.footstepcol
lea ecx, [ebp - 0x40]
mov dword [ebp - 4], 0xa5
call fcn.1002f320
mov dword [ebp - 4], 0xa6
lea ecx, [ebp - 0x80]
push dword [ebp - 0x44]
call fcn.1002f300
push 0x16
push str.visualize_sounds_color
lea ecx, [ebp - 0x80]
mov byte [ebp - 4], 0xa7
call fcn.1002f320
lea eax, [ebp - 0x80]
mov byte [ebp - 4], 0xa8
push eax
lea ecx, [edi + 0x6d8]
call fcn.10045420
lea eax, [ebp - 0x40]
push eax
lea ecx, [edi + 0x6a0]
call fcn.10045420
mov eax, edi
lea ecx, [ebp - 0x80]
mov dword [eax + 0x6f0], 0xff3c3cfa
mov dword [eax + 0x708], 0
call fcn.1002e790
lea ecx, [ebp - 0x40]
mov dword [ebp - 4], 0xffffffff
call fcn.1002e790
mov dword [ebp - 0x18], 0x10032e80
lea ecx, [esi + 0x58]
lea eax, [ebp - 0x18]
push eax
call fcn.100469f0
mov dword [ebp - 0x18], esi
mov eax, edi
mov ecx, edi
mov esi, ecx
mov dword [eax + 0x680], 0
imul eax, dword [eax + 0x680], 0xeb
add eax, 0x14
mov dword [ecx + 0x66c], eax
mov eax, ecx
lea ecx, [esi + 0x18]
mov dword [eax + 0x674], 0xaf
mov eax, dword [eax + 0x2c]
mov dword [esi + 0x684], eax
lea eax, [ebp - 0x18]
push eax
call fcn.100469f0
push dword [ebp - 0x44]
lea ecx, [ebp - 0x170]
call fcn.1002f300
push 4
push str.glow
lea ecx, [ebp - 0x170]
mov dword [ebp - 4], 0xa9
call fcn.1002f320
mov dword [ebp - 4], 0xaa
lea ecx, [ebp - 0x158]
push dword [ebp - 0x44]
call fcn.1002f300
push 0xd
push str.visible_chams
lea ecx, [ebp - 0x158]
mov byte [ebp - 4], 0xab
call fcn.1002f320
push dword [ebp - 0x44]
lea ecx, [ebp - 0x140]
call fcn.1002f300
push 0xf
push str.invisible_chams
lea ecx, [ebp - 0x140]
mov byte [ebp - 4], 0xad
call fcn.1002f320
push dword [ebp - 0x44]
lea ecx, [ebp - 0x128]
call fcn.1002f300
push 0xd
push str.history_chams
lea ecx, [ebp - 0x128]
mov byte [ebp - 4], 0xaf
call fcn.1002f320
push dword [ebp - 0x44]
lea ecx, [ebp - 0x110]
call fcn.1002f300
push 0xa
push str.shot_chams
lea ecx, [ebp - 0x110]
mov byte [ebp - 4], 0xb1
call fcn.1002f320
push dword [ebp - 0x44]
lea ecx, [ebp - 0xf8]
call fcn.1002f300
push 0xe
push str.weapon_chams_1
lea ecx, [ebp - 0xf8]
mov byte [ebp - 4], 0xb3
call fcn.1002f320
push dword [ebp - 0x44]
lea ecx, [ebp - 0xe0]
call fcn.1002f300
push 0xe
push str.weapon_chams_2
lea ecx, [ebp - 0xe0]
mov byte [ebp - 4], 0xb5
call fcn.1002f320
lea eax, [ebp - 0x25]
mov dword [ebp - 4], 0xb6
push eax
lea ecx, [ebp - 0xc8]
push ecx
lea edx, [ebp - 0x170]
push edx
lea ecx, [ebp - 0xac]
call fcn.100867c0
push dword [ebp - 0x44]
lea ecx, [ebp - 0x40]
call fcn.1002f300
push 0xf
push str.rainbow_visuals
lea ecx, [ebp - 0x40]
mov byte [ebp - 4], 0xb8
call fcn.1002f320
push dword [ebp - 0x44]
lea ecx, [ebp - 0x80]
call fcn.1002f300
push 0x17
push str.rainbow_visual_elements
lea ecx, [ebp - 0x80]
mov byte [ebp - 4], 0xba
call fcn.1002f320
lea ecx, [ebp - 0x60]
call fcn.1002fd10
lea eax, [ebp - 0x40]
mov byte [ebp - 4], 0xbc
push eax
lea ecx, [esi + 0x1520]
call fcn.10045420
mov eax, edi
lea ecx, [ebp - 0x80]
push ecx
lea ecx, [eax + 0x1558]
mov byte [eax + 0x1551], 1
call fcn.10045420
mov esi, dword [ebp - 0xac]
xor eax, eax
cmp byte [edi + 0x1551], al
mov ecx, 0xf
cmovne eax, ecx
mov dword [edi + 0x158c], eax
add eax, 0x14
mov dword [edi + 0x14f8], eax
mov dword [edi + 0x14fc], eax
mov eax, dword [ebp - 0xa8]
mov dword [ebp - 0x20], eax
cmp esi, eax
je 0x100662f3
lea eax, [edi + 0x1570]
mov edi, eax
nop word [eax + eax]
push esi
mov ecx, edi
call fcn.10054650
add esi, 0x18
cmp esi, dword [ebp - 0x20]
jne 0x100662e0
mov edi, dword [ebp - 0x24]
mov ecx, dword [ebp - 0x5c]
mov eax, dword [ebp - 0x60]
mov dword [ebp - 0x20], ecx
mov dword [ebp - 0x9c], eax
cmp eax, ecx
je 0x100663c1
lea ecx, [edi + 0x1580]
mov eax, dword [eax]
mov dword [ebp - 0x1c], eax
lea eax, [ebp - 0x44]
push eax
call fcn.1002dad0
lea ecx, [edi + 0x1580]
mov esi, dword [eax]
lea eax, [ebp - 0xc4]
push eax
call fcn.1002dae0
push esi
lea edx, [ebp - 0x1c]
lea ecx, [ebp - 0xc0]
push dword [eax]
call fcn.1002f160
add esp, 8
lea ecx, [edi + 0x1580]
mov esi, eax
lea eax, [ebp - 0xbc]
push eax
call fcn.1002dad0
mov ecx, dword [edi + 0x1574]
sub ecx, dword [edi + 0x1570]
mov esi, dword [esi]
mov eax, dword [eax]
mov dword [ebp - 0x18], eax
mov eax, 0x2aaaaaab
imul ecx
sar edx, 2
mov eax, edx
shr eax, 0x1f
add eax, edx
cmp dword [ebp - 0x1c], eax
jae 0x10066392
lea eax, [ebp - 0x1c]
push eax
lea ecx, [edi + 0x1580]
call fcn.100469f0
cmp esi, dword [ebp - 0x18]
jne 0x100663a3
mov eax, dword [edi + 0x154c]
test eax, eax
je 0x100663a3
call eax
mov eax, dword [ebp - 0x9c]
lea ecx, [edi + 0x1580]
add eax, 4
mov dword [ebp - 0x9c], eax
cmp eax, dword [ebp - 0x20]
jne 0x10066310
lea ecx, [ebp - 0x60]
call fcn.1002dda0
lea ecx, [ebp - 0x80]
call fcn.1002e790
lea ecx, [ebp - 0x40]
call fcn.1002e790
lea ecx, [ebp - 0xac]
call fcn.1002e9d0
push fcn.1002e790
push 7
push 0x18
lea eax, [ebp - 0x170]
mov dword [ebp - 4], 0xffffffff
push eax
call fcn.1010e1b6
lea eax, [edi + 0x14e8]
mov dword [ebp - 0x18], eax
lea ecx, [edi + 0x18]
mov dword [edi + 0x1500], 1
imul eax, dword [edi + 0x1500], 0xeb
add eax, 0x14
mov dword [edi + 0x14ec], eax
mov dword [edi + 0x14f4], 0xaf
mov eax, dword [edi + 0x2c]
mov dword [edi + 0x1504], eax
lea eax, [ebp - 0x18]
push eax
call fcn.100469f0
push dword [ebp - 0x44]
lea ecx, [ebp - 0x68]
lea esi, [edi + 0x36b0]
call fcn.1002f300
push 0
push 0x1012c950
lea ecx, [ebp - 0x68]
mov dword [ebp - 4], 0xbd
call fcn.100546f0
mov dword [ebp - 4], 0xbe
lea ecx, [ebp - 0x40]
push dword [ebp - 0x44]
call fcn.1002f300
push 0xd
push 0x1012d7fc
lea ecx, [ebp - 0x40]
mov byte [ebp - 4], 0xbf
call fcn.1002f320
push dword [ebp - 0x44]
lea ecx, [ebp - 0x80]
call fcn.1002f300
push 0xd
push str.rainbow_speed
lea ecx, [ebp - 0x80]
mov byte [ebp - 4], 0xc1
call fcn.1002f320
lea eax, [ebp - 0x40]
mov byte [ebp - 4], 0xc2
push eax
lea ecx, [edi + 0x36e8]
call fcn.10045420
lea eax, [ebp - 0x80]
mov byte [edi + 0x3719], 1
push eax
lea ecx, [edi + 0x3738]
call fcn.10045420
xor eax, eax
mov ecx, 0xf
cmp byte [edi + 0x3719], al
cmovne eax, ecx
mov dword [edi + 0x3768], eax
movd xmm0, eax
cvtdq2ps xmm0, xmm0
addss xmm0, dword [0x101312cc]
cvttss2si eax, xmm0
mov dword [edi + 0x36c0], eax
mov dword [edi + 0x36c4], eax
lea eax, [ebp - 0x68]
mov dword [edi + 0x3724], 0x3f800000
push eax
lea ecx, [edi + 0x3750]
mov dword [edi + 0x3728], 0x42480000
mov dword [edi + 0x3720], 0x3f800000
mov dword [edi + 0x3734], 0
mov dword [edi + 0x372c], 0x3f800000
call fcn.10086c10
lea ecx, [ebp - 0x80]
call fcn.1002e790
lea ecx, [ebp - 0x40]
call fcn.1002e790
lea ecx, [ebp - 0x68]
mov dword [ebp - 4], 0xffffffff
call fcn.10054340
mov dword [ebp - 0x18], esi
lea ecx, [edi + 0x18]
mov dword [esi + 0x18], 1
imul eax, dword [esi + 0x18], 0xeb
add eax, 0x14
mov dword [esi + 4], eax
mov dword [esi + 0xc], 0xaf
mov eax, dword [edi + 0x2c]
mov dword [esi + 0x1c], eax
lea eax, [ebp - 0x18]
push eax
call fcn.100469f0
push dword [ebp - 0x44]
lea ecx, [ebp - 0x170]
call fcn.1002f300
push 5
push str.local
lea ecx, [ebp - 0x170]
mov dword [ebp - 4], 0xc3
call fcn.1002f320
mov dword [ebp - 4], 0xc4
lea ecx, [ebp - 0x158]
push dword [ebp - 0x44]
call fcn.1002f300
push 5
push str.enemy
lea ecx, [ebp - 0x158]
mov byte [ebp - 4], 0xc5
call fcn.1002f320
push dword [ebp - 0x44]
lea ecx, [ebp - 0x140]
call fcn.1002f300
push 8
push str.friendly
lea ecx, [ebp - 0x140]
mov byte [ebp - 4], 0xc7
call fcn.1002f320
push dword [ebp - 0x44]
lea ecx, [ebp - 0x128]
call fcn.1002f300
push 7
push str.history
lea ecx, [ebp - 0x128]
mov byte [ebp - 4], 0xc9
call fcn.1002f320
push dword [ebp - 0x44]
lea ecx, [ebp - 0x110]
call fcn.1002f300
push 4
push str.fake
lea ecx, [ebp - 0x110]
mov byte [ebp - 4], 0xcb
call fcn.1002f320
push dword [ebp - 0x44]
lea ecx, [ebp - 0xf8]
call fcn.1002f300
push 4
push str.shot
lea ecx, [ebp - 0xf8]
mov byte [ebp - 4], 0xcd
call fcn.1002f320
push dword [ebp - 0x44]
lea ecx, [ebp - 0xe0]
call fcn.1002f300
push 6
push str.weapon
lea ecx, [ebp - 0xe0]
mov byte [ebp - 4], 0xcf
call fcn.1002f320
lea eax, [ebp - 0x25]
mov dword [ebp - 4], 0xd0
push eax
lea ecx, [ebp - 0xc8]
push ecx
lea edx, [ebp - 0x170]
push edx
lea ecx, [ebp - 0x5c]
call fcn.100867c0
push dword [ebp - 0x44]
lea ecx, [ebp - 0x40]
call fcn.1002f300
push 0x16
push str.chams_entity_selection
lea ecx, [ebp - 0x40]
mov byte [ebp - 4], 0xd2
call fcn.1002f320
push dword [ebp - 0x44]
lea ecx, [ebp - 0x80]
call fcn.1002f300
push 0xf
push str.chams_selection
lea ecx, [ebp - 0x80]
mov byte [ebp - 4], 0xd4
call fcn.1002f320
lea eax, [ebp - 0x40]
mov byte [ebp - 4], 0xd5
push eax
lea ecx, [edi + 0x1a68]
call fcn.10045420
lea eax, [ebp - 0x80]
mov byte [edi + 0x1a99], 1
push eax
lea ecx, [edi + 0x1aa0]
call fcn.10045420
mov esi, dword [ebp - 0x5c]
xor eax, eax
cmp byte [edi + 0x1a99], al
mov ecx, 0xf
cmovne eax, ecx
mov dword [edi + 0x1acc], eax
add eax, 0x14
mov dword [edi + 0x1a40], eax
mov dword [edi + 0x1a44], eax
mov eax, dword [ebp - 0x58]
mov dword [ebp - 0x18], eax
cmp esi, eax
je 0x1006677c
lea eax, [edi + 0x1ab8]
mov edi, dword [ebp - 0x18]
mov dword [ebp - 0x20], eax
push esi
mov ecx, eax
call fcn.10054650
mov eax, dword [ebp - 0x20]
add esi, 0x18
cmp esi, edi
jne 0x10066767
mov edi, dword [ebp - 0x24]
mov ecx, dword [edi + 0x1abc]
mov eax, 0x2aaaaaab
sub ecx, dword [edi + 0x1ab8]
imul ecx
sar edx, 2
mov eax, edx
shr eax, 0x1f
add eax, edx
je 0x100667a5
mov dword [edi + 0x1ac8], 0
lea ecx, [ebp - 0x80]
call fcn.1002e790
lea ecx, [ebp - 0x40]
call fcn.1002e790
lea ecx, [ebp - 0x5c]
call fcn.1002e9d0
push fcn.1002e790
push 7
push 0x18
lea eax, [ebp - 0x170]
mov dword [ebp - 4], 0xffffffff
push eax
call fcn.1010e1b6
lea eax, [edi + 0x1a30]
mov dword [ebp - 0x18], eax
lea ecx, [edi + 0x18]
mov dword [edi + 0x1a48], 1
imul eax, dword [edi + 0x1a48], 0xeb
add eax, 0x14
mov dword [edi + 0x1a34], eax
mov dword [edi + 0x1a3c], 0xaf
mov eax, dword [edi + 0x2c]
mov dword [edi + 0x1a4c], eax
lea eax, [ebp - 0x18]
push eax
call fcn.100469f0
push dword [ebp - 0x44]
lea ecx, [ebp - 0x40]
lea esi, [edi + 0x1ad0]
call fcn.1002f300
push 0xb
push 0x1012d8b4
lea ecx, [ebp - 0x40]
mov dword [ebp - 4], 0xd6
call fcn.1002f320
mov dword [ebp - 4], 0xd7
lea ecx, [ebp - 0x80]
push dword [ebp - 0x44]
call fcn.1002f300
push 0xb
push str.chams_local
lea ecx, [ebp - 0x80]
mov byte [ebp - 4], 0xd8
call fcn.1002f320
lea eax, [ebp - 0x40]
mov byte [ebp - 4], 0xd9
push eax
lea ecx, [edi + 0x1b08]
call fcn.10045420
lea eax, [ebp - 0x80]
mov byte [edi + 0x1b39], 1
push eax
lea ecx, [edi + 0x1b40]
call fcn.10045420
lea ecx, [ebp - 0x80]
mov byte [edi + 0x1b3c], 0
call fcn.1002e790
lea ecx, [ebp - 0x40]
mov dword [ebp - 4], 0xffffffff
call fcn.1002e790
lea eax, [ebp - 0x18]
mov dword [ebp - 0x18], 0x10032ec0
lea ecx, [esi + 0x58]
push eax
call fcn.100469f0
mov dword [ebp - 0x18], esi
lea ecx, [edi + 0x18]
mov dword [edi + 0x1ae8], 1
imul eax, dword [edi + 0x1ae8], 0xeb
add eax, 0x14
mov dword [edi + 0x1ad4], eax
mov dword [edi + 0x1adc], 0xaf
mov eax, dword [edi + 0x2c]
mov dword [edi + 0x1aec], eax
lea eax, [ebp - 0x18]
push eax
call fcn.100469f0
push dword [ebp - 0x44]
lea ecx, [ebp - 0x140]
call fcn.1002f300
push 8
push str.material
lea ecx, [ebp - 0x140]
mov dword [ebp - 4], 0xda
call fcn.1002f320
mov dword [ebp - 4], 0xdb
lea ecx, [ebp - 0x128]
push dword [ebp - 0x44]
call fcn.1002f300
push 4
push str.flat
lea ecx, [ebp - 0x128]
mov byte [ebp - 4], 0xdc
call fcn.1002f320
push dword [ebp - 0x44]
lea ecx, [ebp - 0x110]
call fcn.1002f300
push 8
push str.metallic
lea ecx, [ebp - 0x110]
mov byte [ebp - 4], 0xde
call fcn.1002f320
push dword [ebp - 0x44]
lea ecx, [ebp - 0xf8]
call fcn.1002f300
push 5
push str.gloss
lea ecx, [ebp - 0xf8]
mov byte [ebp - 4], 0xe0
call fcn.1002f320
push dword [ebp - 0x44]
lea ecx, [ebp - 0xe0]
call fcn.1002f300
push 4
push str.glow
lea ecx, [ebp - 0xe0]
mov byte [ebp - 4], 0xe2
call fcn.1002f320
lea eax, [ebp - 0x25]
mov dword [ebp - 4], 0xe3
push eax
lea ecx, [ebp - 0xc8]
push ecx
lea edx, [ebp - 0x140]
push edx
lea ecx, [ebp - 0x5c]
call fcn.100867c0
push dword [ebp - 0x44]
lea ecx, [ebp - 0x40]
call fcn.1002f300
push 0xf
push str.chams_local_mat
lea ecx, [ebp - 0x40]
mov byte [ebp - 4], 0xe5
call fcn.1002f320
push dword [ebp - 0x44]
lea ecx, [ebp - 0x80]
call fcn.1002f300
push 0x14
push str.chams_local_material
lea ecx, [ebp - 0x80]
mov byte [ebp - 4], 0xe7
call fcn.1002f320
lea eax, [ebp - 0x40]
mov byte [ebp - 4], 0xe8
push eax
lea ecx, [edi + 0x1c18]
call fcn.10045420
lea eax, [ebp - 0x80]
mov byte [edi + 0x1c49], 1
push eax
lea ecx, [edi + 0x1c50]
call fcn.10045420
mov esi, dword [ebp - 0x5c]
xor eax, eax
cmp byte [edi + 0x1c49], al
mov ecx, 0xf
cmovne eax, ecx
mov dword [edi + 0x1c7c], eax
add eax, 0x14
mov dword [edi + 0x1bf0], eax
mov dword [edi + 0x1bf4], eax
mov eax, dword [ebp - 0x58]
mov dword [ebp - 0x18], eax
cmp esi, eax
je 0x10066a9a
lea eax, [edi + 0x1c68]
mov edi, dword [ebp - 0x18]
mov dword [ebp - 0x20], eax
push esi
mov ecx, eax
call fcn.10054650
mov eax, dword [ebp - 0x20]
add esi, 0x18
cmp esi, edi
jne 0x10066a85
mov edi, dword [ebp - 0x24]
mov ecx, dword [edi + 0x1c6c]
mov eax, 0x2aaaaaab
sub ecx, dword [edi + 0x1c68]
imul ecx
sar edx, 2
mov eax, edx
shr eax, 0x1f
add eax, edx
je 0x10066ac3
mov dword [edi + 0x1c78], 0
lea ecx, [ebp - 0x80]
call fcn.1002e790
lea ecx, [ebp - 0x40]
call fcn.1002e790
lea ecx, [ebp - 0x5c]
call fcn.1002e9d0
push fcn.1002e790
push 5
push 0x18
lea eax, [ebp - 0x140]
mov dword [ebp - 4], 0xffffffff
push eax
call fcn.1010e1b6
lea eax, [ebp - 0x18]
mov dword [ebp - 0x18], 0x10032ec0
lea esi, [edi + 0x1be0]
lea ecx, [esi + 0x58]
push eax
call fcn.100469f0
mov dword [ebp - 0x18], esi
lea ecx, [edi + 0x18]
mov dword [edi + 0x1bf8], 1
imul eax, dword [edi + 0x1bf8], 0xeb
add eax, 0x14
mov dword [edi + 0x1be4], eax
mov dword [edi + 0x1bec], 0xaf
mov eax, dword [edi + 0x2c]
mov dword [edi + 0x1bfc], eax
lea eax, [ebp - 0x18]
push eax
call fcn.100469f0
push dword [ebp - 0x44]
lea ecx, [ebp - 0x40]
lea esi, [edi + 0x1c80]
call fcn.1002f300
push 0xf
push str.chams_local_col
lea ecx, [ebp - 0x40]
mov dword [ebp - 4], 0xe9
call fcn.1002f320
mov dword [ebp - 4], 0xea
lea ecx, [ebp - 0x80]
push dword [ebp - 0x44]
call fcn.1002f300
push 5
push str.color
lea ecx, [ebp - 0x80]
mov byte [ebp - 4], 0xeb
call fcn.1002f320
lea eax, [ebp - 0x80]
mov byte [ebp - 4], 0xec
push eax
lea ecx, [edi + 0x1cf0]
call fcn.10045420
lea eax, [ebp - 0x40]
push eax
lea ecx, [edi + 0x1cb8]
call fcn.10045420
lea ecx, [ebp - 0x80]
mov dword [edi + 0x1d08], 0xff323232
mov dword [edi + 0x1d20], 0
call fcn.1002e790
lea ecx, [ebp - 0x40]
mov dword [ebp - 4], 0xffffffff
call fcn.1002e790
lea eax, [ebp - 0x18]
mov dword [ebp - 0x18], 0x10032ec0
lea ecx, [esi + 0x58]
push eax
call fcn.100469f0
mov dword [ebp - 0x18], esi
mov dword [edi + 0x1c98], 1
imul eax, dword [edi + 0x1c98], 0xeb
add eax, 0x14
mov dword [edi + 0x1c84], eax
mov dword [edi + 0x1c8c], 0xaf
mov eax, dword [edi + 0x2c]
mov dword [edi + 0x1c9c], eax
lea ecx, [edi + 0x18]
lea eax, [ebp - 0x18]
push eax
call fcn.100469f0
push dword [ebp - 0x44]
lea ecx, [ebp - 0x40]
lea esi, [edi + 0x1d3c]
call fcn.1002f300
push 0x10
push str.chams_local2_col
lea ecx, [ebp - 0x40]
mov dword [ebp - 4], 0xed
call fcn.1002f320
mov dword [ebp - 4], 0xee
lea ecx, [ebp - 0x80]
push dword [ebp - 0x44]
call fcn.1002f300
push 0xa
push str.glow_color
lea ecx, [ebp - 0x80]
mov byte [ebp - 4], 0xef
call fcn.1002f320
lea eax, [ebp - 0x80]
mov byte [ebp - 4], 0xf0
push eax
lea ecx, [edi + 0x1dac]
call fcn.10045420
lea eax, [ebp - 0x40]
push eax
lea ecx, [edi + 0x1d74]
call fcn.10045420
lea ecx, [ebp - 0x80]
mov dword [edi + 0x1dc4], 0xff3b2d09
mov dword [edi + 0x1ddc], 0
call fcn.1002e790
lea ecx, [ebp - 0x40]
mov dword [ebp - 4], 0xffffffff
call fcn.1002e790
lea eax, [ebp - 0x18]
mov dword [ebp - 0x18], 0x10032ed0
lea ecx, [esi + 0x58]
push eax
call fcn.100469f0
mov dword [ebp - 0x18], esi
lea ecx, [edi + 0x18]
mov dword [edi + 0x1d54], 1
imul eax, dword [edi + 0x1d54], 0xeb
add eax, 0x14
mov dword [edi + 0x1d40], eax
mov dword [edi + 0x1d48], 0xaf
mov eax, dword [edi + 0x2c]
mov dword [edi + 0x1d58], eax
lea eax, [ebp - 0x18]
push eax
call fcn.100469f0
push dword [ebp - 0x44]
lea ecx, [ebp - 0x40]
lea esi, [edi + 0x1df8]
call fcn.1002f300
push 1
push 0x1012c868
lea ecx, [ebp - 0x40]
mov dword [ebp - 4], 0xf1
call fcn.100546f0
mov dword [ebp - 4], 0xf2
lea ecx, [ebp - 0x80]
push dword [ebp - 0x44]
call fcn.1002f300
push 0x11
push str.chams_local_blend
lea ecx, [ebp - 0x80]
mov byte [ebp - 4], 0xf3
call fcn.1002f320
push dword [ebp - 0x44]
lea ecx, [ebp - 0x68]
call fcn.1002f300
push 0
push 0x101298c6
lea ecx, [ebp - 0x68]
mov byte [ebp - 4], 0xf5
call fcn.1002f320
lea eax, [ebp - 0x80]
mov byte [ebp - 4], 0xf6
push eax
lea ecx, [edi + 0x1e30]
call fcn.10045420
lea eax, [ebp - 0x40]
mov byte [edi + 0x1e61], 0
push eax
lea ecx, [edi + 0x1e98]
mov dword [edi + 0x1eb0], 0
mov dword [edi + 0x1e08], 7
mov dword [edi + 0x1e0c], 7
mov dword [edi + 0x1e6c], 0
mov dword [edi + 0x1e70], 0x42c80000
mov dword [edi + 0x1e68], 0x42c80000
mov dword [edi + 0x1e7c], 0
mov dword [edi + 0x1e74], 0x3f800000
call fcn.10086c10
lea ecx, [ebp - 0x68]
call fcn.1002e790
lea ecx, [ebp - 0x80]
call fcn.1002e790
lea ecx, [ebp - 0x40]
mov dword [ebp - 4], 0xffffffff
call fcn.10054340
lea eax, [ebp - 0x18]
mov dword [ebp - 0x18], 0x10032ec0
lea ecx, [esi + 0x58]
push eax
call fcn.100469f0
mov dword [ebp - 0x18], esi
lea ecx, [edi + 0x18]
mov dword [edi + 0x1e10], 1
imul eax, dword [edi + 0x1e10], 0xeb
add eax, 0x14
mov dword [edi + 0x1dfc], eax
mov dword [edi + 0x1e04], 0xaf
mov eax, dword [edi + 0x2c]
mov dword [edi + 0x1e14], eax
lea eax, [ebp - 0x18]
push eax
call fcn.100469f0
push dword [ebp - 0x44]
lea ecx, [ebp - 0x40]
lea esi, [edi + 0x1eb4]
call fcn.1002f300
push 0x11
push str.chams_local_scope
lea ecx, [ebp - 0x40]
mov dword [ebp - 4], 0xf7
call fcn.1002f320
mov dword [ebp - 4], 0xf8
lea ecx, [ebp - 0x80]
push dword [ebp - 0x44]
call fcn.1002f300
push 0x11
push str.blend_when_scoped
lea ecx, [ebp - 0x80]
mov byte [ebp - 4], 0xf9
call fcn.1002f320
lea eax, [ebp - 0x40]
mov byte [ebp - 4], 0xfa
push eax
lea ecx, [edi + 0x1eec]
call fcn.10045420
mov byte [edi + 0x1f1d], 1
lea eax, [ebp - 0x80]
push eax
lea ecx, [edi + 0x1f24]
call fcn.10045420
lea ecx, [ebp - 0x80]
mov byte [edi + 0x1f20], 0
call fcn.1002e790
lea ecx, [ebp - 0x40]
mov dword [ebp - 4], 0xffffffff
call fcn.1002e790
lea eax, [ebp - 0x18]
mov dword [ebp - 0x18], 0x10032ec0
lea ecx, [esi + 0x58]
push eax
call fcn.100469f0
mov dword [ebp - 0x18], esi
lea ecx, [edi + 0x18]
mov dword [edi + 0x1ecc], 1
imul eax, dword [edi + 0x1ecc], 0xeb
add eax, 0x14
mov dword [edi + 0x1eb8], eax
mov dword [edi + 0x1ec0], 0xaf
mov eax, dword [edi + 0x2c]
mov dword [edi + 0x1ed0], eax
lea eax, [ebp - 0x18]
push eax
call fcn.100469f0
push dword [ebp - 0x44]
lea ecx, [ebp - 0x40]
lea esi, [edi + 0x1f3c]
call fcn.1002f300
push 1
push 0x1012c868
lea ecx, [ebp - 0x40]
mov dword [ebp - 4], 0xfb
call fcn.100546f0
mov dword [ebp - 4], 0xfc
lea ecx, [ebp - 0x80]
push dword [ebp - 0x44]
call fcn.1002f300
push 0x17
push str.chams_local_scope_blend
lea ecx, [ebp - 0x80]
mov byte [ebp - 4], 0xfd
call fcn.1002f320
push dword [ebp - 0x44]
lea ecx, [ebp - 0x68]
call fcn.1002f300
push 0
push 0x101298c6
lea ecx, [ebp - 0x68]
mov byte [ebp - 4], 0xff
call fcn.1002f320
lea eax, [ebp - 0x80]
mov dword [ebp - 4], pe_nt_image_headers32
push eax
lea ecx, [edi + 0x1f74]
call fcn.10045420
lea eax, [ebp - 0x40]
mov byte [edi + 0x1fa5], 0
push eax
lea ecx, [edi + 0x1fdc]
mov dword [edi + 0x1ff4], 0
mov dword [edi + 0x1f4c], 7
mov dword [edi + 0x1f50], 7
mov dword [edi + 0x1fb0], 0
mov dword [edi + 0x1fb4], 0x42c80000
mov dword [edi + 0x1fac], 0x42c80000
mov dword [edi + 0x1fc0], 0
mov dword [edi + 0x1fb8], 0x3f800000
call fcn.10086c10
lea ecx, [ebp - 0x68]
call fcn.1002e790
lea ecx, [ebp - 0x80]
call fcn.1002e790
lea ecx, [ebp - 0x40]
mov dword [ebp - 4], 0xffffffff
call fcn.10054340
lea eax, [ebp - 0x18]
mov dword [ebp - 0x18], 0x10032ec0
lea ecx, [esi + 0x58]
push eax
call fcn.100469f0
mov dword [ebp - 0x18], esi
lea ecx, [edi + 0x18]
mov dword [edi + 0x1f54], 1
imul eax, dword [edi + 0x1f54], 0xeb
add eax, 0x14
mov dword [edi + 0x1f40], eax
mov dword [edi + 0x1f48], 0xaf
mov eax, dword [edi + 0x2c]
mov dword [edi + 0x1f58], eax
lea eax, [ebp - 0x18]
push eax
call fcn.100469f0
push str.visible
lea ecx, [ebp - 0x1f0]
call fcn.1002e7e0
push str.invisible
lea ecx, [ebp - 0x1d8]
mov dword [ebp - 4], 0x101
call fcn.1002e7e0
lea eax, [ebp - 0x25]
mov dword [ebp - 4], 0x102
push eax
lea ecx, [ebp - 0x1c0]
push ecx
lea edx, [ebp - 0x1f0]
push edx
lea ecx, [ebp - 0xac]
call fcn.100867c0
push str.chams_enemy
lea ecx, [ebp - 0x40]
mov byte [ebp - 4], 3
call fcn.1002e7e0
push 0x1012d990
lea ecx, [ebp - 0x80]
mov byte [ebp - 4], 4
call fcn.1002e7e0
lea ecx, [ebp - 0x60]
call fcn.1002fd10
lea eax, [ebp - 0x40]
mov byte [ebp - 4], 6
push eax
lea ecx, [edi + 0x2030]
call fcn.10045420
lea eax, [ebp - 0x80]
mov byte [edi + 0x2061], 1
push eax
lea ecx, [edi + 0x2068]
call fcn.10045420
mov esi, dword [ebp - 0xac]
xor eax, eax
cmp byte [edi + 0x2061], al
mov ecx, 0xf
cmovne eax, ecx
mov dword [edi + 0x209c], eax
add eax, 0x14
mov dword [edi + 0x2008], eax
mov dword [edi + 0x200c], eax
mov eax, dword [ebp - 0xa8]
mov dword [ebp - 0x18], eax
cmp esi, eax
je 0x100671ac
lea eax, [edi + 0x2080]
mov edi, dword [ebp - 0x18]
mov dword [ebp - 0x20], eax
push esi
mov ecx, eax
call fcn.10054650
mov eax, dword [ebp - 0x20]
add esi, 0x18
cmp esi, edi
jne 0x10067197
mov edi, dword [ebp - 0x24]
mov ecx, dword [ebp - 0x5c]
mov eax, dword [ebp - 0x60]
mov dword [ebp - 0x20], ecx
mov dword [ebp - 0x9c], eax
cmp eax, ecx
je 0x10067281
lea ecx, [edi + 0x2090]
nop dword [eax]
mov eax, dword [eax]
mov dword [ebp - 0x1c], eax
lea eax, [ebp - 0x44]
push eax
call fcn.1002dad0
lea ecx, [edi + 0x2090]
mov esi, dword [eax]
lea eax, [ebp - 0xc4]
push eax
call fcn.1002dae0
push esi
lea edx, [ebp - 0x1c]
lea ecx, [ebp - 0xc0]
push dword [eax]
call fcn.1002f160
add esp, 8
lea ecx, [edi + 0x2090]
mov esi, eax
lea eax, [ebp - 0xbc]
push eax
call fcn.1002dad0
mov ecx, dword [edi + 0x2084]
sub ecx, dword [edi + 0x2080]
mov esi, dword [esi]
mov eax, dword [eax]
mov dword [ebp - 0x18], eax
mov eax, 0x2aaaaaab
imul ecx
sar edx, 2
mov eax, edx
shr eax, 0x1f
add eax, edx
cmp dword [ebp - 0x1c], eax
jae 0x10067252
lea eax, [ebp - 0x1c]
push eax
lea ecx, [edi + 0x2090]
call fcn.100469f0
cmp esi, dword [ebp - 0x18]
jne 0x10067263
mov eax, dword [edi + 0x205c]
test eax, eax
je 0x10067263
call eax
mov eax, dword [ebp - 0x9c]
lea ecx, [edi + 0x2090]
add eax, 4
mov dword [ebp - 0x9c], eax
cmp eax, dword [ebp - 0x20]
jne 0x100671d0
lea ecx, [ebp - 0x60]
call fcn.1002dda0
lea ecx, [ebp - 0x80]
call fcn.1002e790
lea ecx, [ebp - 0x40]
call fcn.1002e790
lea ecx, [ebp - 0xac]
call fcn.1002e9d0
push fcn.1002e790
push 2
push 0x18
lea eax, [ebp - 0x1f0]
mov dword [ebp - 4], 0xffffffff
push eax
call fcn.1010e1b6
lea eax, [ebp - 0x18]
mov dword [ebp - 0x18], 0x10032ef0
lea esi, [edi + 0x1ff8]
lea ecx, [esi + 0x58]
push eax
call fcn.100469f0
mov dword [ebp - 0x18], esi
lea ecx, [edi + 0x18]
mov dword [edi + 0x2010], 1
imul eax, dword [edi + 0x2010], 0xeb
add eax, 0x14
mov dword [edi + 0x1ffc], eax
mov dword [edi + 0x2004], 0xaf
mov eax, dword [edi + 0x2c]
mov dword [edi + 0x2014], eax
lea eax, [ebp - 0x18]
push eax
call fcn.100469f0
push str.material
lea ecx, [ebp - 0x158]
call fcn.1002e7e0
push str.flat
lea ecx, [ebp - 0x140]
mov dword [ebp - 4], 0x107
call fcn.1002e7e0
push str.metallic
lea ecx, [ebp - 0x128]
mov byte [ebp - 4], 8
call fcn.1002e7e0
push str.gloss
lea ecx, [ebp - 0x110]
mov byte [ebp - 4], 9
call fcn.1002e7e0
push str.glow
lea ecx, [ebp - 0xf8]
mov byte [ebp - 4], 0xa
call fcn.1002e7e0
push str.outline_glow
lea ecx, [ebp - 0xe0]
mov byte [ebp - 4], 0xb
call fcn.1002e7e0
lea eax, [ebp - 0xc8]
mov dword [ebp - 4], 0x10c
push eax
lea eax, [ebp - 0x158]
push eax
lea ecx, [ebp - 0x48]
call fcn.100867a0
lea ecx, [ebp - 0x25]
push ecx
lea ecx, [ebp - 0x5c]
push dword [eax + 4]
push dword [eax]
call fcn.100867c0
push str.chams_enemy_mat
lea ecx, [ebp - 0x40]
mov byte [ebp - 4], 0xd
call fcn.1002e7e0
push str.chams_enemy_material
lea ecx, [ebp - 0x80]
mov byte [ebp - 4], 0xe
call fcn.1002e7e0
lea eax, [ebp - 0x40]
mov byte [ebp - 4], 0xf
push eax
lea ecx, [edi + 0x20d8]
call fcn.10045420
lea eax, [ebp - 0x80]
mov byte [edi + 0x2109], 1
push eax
lea ecx, [edi + 0x2110]
call fcn.10045420
xor eax, eax
mov ecx, 0xf
cmp byte [edi + 0x2109], al
cmovne eax, ecx
lea ecx, [ebp - 0x5c]
mov dword [edi + 0x213c], eax
add eax, 0x14
mov dword [edi + 0x20b0], eax
mov dword [edi + 0x20b4], eax
call fcn.1002df10
lea ecx, [ebp - 0x5c]
mov esi, eax
call fcn.1004dbf0
mov dword [ebp - 0x18], eax
cmp esi, eax
je 0x10067467
lea eax, [edi + 0x2128]
mov edi, dword [ebp - 0x18]
mov dword [ebp - 0x20], eax
push esi
mov ecx, eax
call fcn.10053fe0
mov eax, dword [ebp - 0x20]
add esi, 0x18
cmp esi, edi
jne 0x10067452
mov edi, dword [ebp - 0x24]
lea ecx, [edi + 0x2128]
call fcn.100452d0
test eax, eax
je 0x10067480
mov dword [edi + 0x2138], 0
lea ecx, [ebp - 0x80]
call fcn.1002e790
lea ecx, [ebp - 0x40]
call fcn.1002e790
lea ecx, [ebp - 0x5c]
call fcn.1002dbc0
push fcn.1002e790
push 6
push 0x18
lea eax, [ebp - 0x158]
mov dword [ebp - 4], 0xffffffff
push eax
call fcn.1010e1b6
lea eax, [ebp - 0x18]
mov dword [ebp - 0x18], 0x10032ef0
lea ecx, [edi + 0x20f8]
push eax
call fcn.10044b40
lea eax, [edi + 0x20a0]
mov dword [ebp - 0x18], eax
lea ecx, [edi + 0x18]
mov dword [edi + 0x20b8], 1
imul eax, dword [edi + 0x20b8], 0xeb
add eax, 0x14
mov dword [edi + 0x20a4], eax
mov dword [edi + 0x20ac], 0xaf
mov eax, dword [edi + 0x2c]
mov dword [edi + 0x20bc], eax
lea eax, [ebp - 0x18]
push eax
call fcn.10044b40
push str.chams_enemy_vis
lea ecx, [ebp - 0x40]
lea esi, [edi + 0x2140]
call fcn.1002e7e0
push str.color_visible
lea ecx, [ebp - 0x80]
mov dword [ebp - 4], 0x110
call fcn.1002e7e0
lea eax, [ebp - 0x80]
mov byte [ebp - 4], 0x11
push eax
lea ecx, [edi + 0x21b0]
call fcn.10045420
lea eax, [ebp - 0x40]
push eax
lea ecx, [edi + 0x2178]
call fcn.10045420
lea ecx, [ebp - 0x80]
mov dword [edi + 0x21c8], 0xff3cc896
mov dword [edi + 0x21e0], 0
call fcn.1002e790
lea ecx, [ebp - 0x40]
mov dword [ebp - 4], 0xffffffff
call fcn.1002e790
lea eax, [ebp - 0x18]
mov dword [ebp - 0x18], 0x10032ef0
lea ecx, [esi + 0x58]
push eax
call fcn.10044b40
mov dword [ebp - 0x18], esi
lea ecx, [edi + 0x18]
mov dword [edi + 0x2158], 1
imul eax, dword [edi + 0x2158], 0xeb
add eax, 0x14
mov dword [edi + 0x2144], eax
mov dword [edi + 0x214c], 0xaf
mov eax, dword [edi + 0x2c]
mov dword [edi + 0x215c], eax
lea eax, [ebp - 0x18]
push eax
call fcn.10044b40
push str.chams_enemy2_vis
lea ecx, [ebp - 0x40]
lea esi, [edi + 0x21fc]
call fcn.1002e7e0
mov dword [ebp - 4], 0x112
push str.glow_color
lea ecx, [ebp - 0x80]
call fcn.1002e7e0
lea eax, [ebp - 0x80]
mov byte [ebp - 4], 0x13
push eax
lea ecx, [edi + 0x226c]
call fcn.10045420
lea eax, [ebp - 0x40]
push eax
lea ecx, [edi + 0x2234]
call fcn.10045420
lea ecx, [ebp - 0x80]
mov dword [edi + 0x2284], 0xffc8ffff
mov dword [edi + 0x229c], 0
call fcn.1002e790
lea ecx, [ebp - 0x40]
mov dword [ebp - 4], 0xffffffff
call fcn.1002e790
lea eax, [ebp - 0x18]
mov dword [ebp - 0x18], 0x10032f00
lea ecx, [esi + 0x58]
push eax
call fcn.10044b40
mov dword [ebp - 0x18], esi
lea ecx, [edi + 0x18]
mov dword [edi + 0x2214], 1
imul eax, dword [edi + 0x2214], 0xeb
add eax, 0x14
mov dword [edi + 0x2200], eax
mov dword [edi + 0x2208], 0xaf
mov eax, dword [edi + 0x2c]
mov dword [edi + 0x2218], eax
lea eax, [ebp - 0x18]
push eax
call fcn.10044b40
push str.chams_enemy_invis
lea ecx, [ebp - 0x40]
lea esi, [edi + 0x22b8]
call fcn.1002e7e0
push str.color_invisible
lea ecx, [ebp - 0x80]
mov dword [ebp - 4], 0x114
call fcn.1002e7e0
lea eax, [ebp - 0x80]
mov byte [ebp - 4], 0x15
push eax
lea ecx, [edi + 0x2328]
call fcn.10045420
lea eax, [ebp - 0x40]
push eax
lea ecx, [edi + 0x22f0]
call fcn.10045420
lea ecx, [ebp - 0x80]
mov dword [edi + 0x2340], 0xffb4783c
mov dword [edi + 0x2358], 0
call fcn.1002e790
lea ecx, [ebp - 0x40]
mov dword [ebp - 4], 0xffffffff
call fcn.1002e790
lea eax, [ebp - 0x18]
mov dword [ebp - 0x18], 0x10032ef0
lea ecx, [esi + 0x58]
push eax
call fcn.10044b40
mov dword [ebp - 0x18], esi
lea ecx, [edi + 0x18]
mov dword [edi + 0x22d0], 1
imul eax, dword [edi + 0x22d0], 0xeb
add eax, 0x14
mov dword [edi + 0x22bc], eax
mov dword [edi + 0x22c4], 0xaf
mov eax, dword [edi + 0x2c]
mov dword [edi + 0x22d4], eax
lea eax, [ebp - 0x18]
push eax
call fcn.10044b40
lea esi, [edi + 0x2374]
push str.chams_enemy2_invis
lea ecx, [ebp - 0x40]
call fcn.1002e7e0
push str.glow_color
lea ecx, [ebp - 0x80]
mov dword [ebp - 4], 0x116
call fcn.1002e7e0
lea eax, [ebp - 0x80]
mov byte [ebp - 4], 0x17
push eax
lea ecx, [edi + 0x23e4]
call fcn.10045420
lea eax, [ebp - 0x40]
push eax
lea ecx, [edi + 0x23ac]
call fcn.10045420
lea ecx, [ebp - 0x80]
mov dword [edi + 0x23fc], 0xb4c8ffff
mov dword [edi + 0x2414], 0
call fcn.1002e790
lea ecx, [ebp - 0x40]
mov dword [ebp - 4], 0xffffffff
call fcn.1002e790
lea eax, [ebp - 0x18]
mov dword [ebp - 0x18], 0x10032f00
lea ecx, [esi + 0x58]
push eax
call fcn.10044b40
mov dword [ebp - 0x18], esi
lea ecx, [edi + 0x18]
mov dword [edi + 0x238c], 1
imul eax, dword [edi + 0x238c], 0xeb
add eax, 0x14
mov dword [edi + 0x2378], eax
mov dword [edi + 0x2380], 0xaf
mov eax, dword [edi + 0x2c]
mov dword [edi + 0x2390], eax
lea eax, [ebp - 0x18]
push eax
call fcn.10044b40
push 0x1012c868
lea ecx, [ebp - 0x68]
lea esi, [edi + 0x2720]
call fcn.10086c40
push str.chams_enemy_blend
lea ecx, [ebp - 0x40]
mov dword [ebp - 4], 0x118
call fcn.1002e7e0
push str.visible
lea ecx, [ebp - 0x80]
mov byte [ebp - 4], 0x19
call fcn.1002e7e0
lea eax, [ebp - 0x40]
mov byte [ebp - 4], 0x1a
push eax
lea ecx, [edi + 0x2758]
call fcn.10045420
lea eax, [ebp - 0x80]
mov byte [edi + 0x2789], 1
push eax
lea ecx, [edi + 0x27a8]
call fcn.10045420
xor eax, eax
mov dword [edi + 0x2794], 0
cmp byte [edi + 0x2789], al
mov ecx, 0xf
mov dword [edi + 0x2798], 0x42c80000
cmovne eax, ecx
mov dword [edi + 0x2790], 0x42c80000
mov dword [edi + 0x27d8], eax
mov dword [edi + 0x27a4], 0
movd xmm0, eax
cvtdq2ps xmm0, xmm0
addss xmm0, dword [0x101312cc]
cvttss2si eax, xmm0
mov dword [edi + 0x2730], eax
mov dword [edi + 0x2734], eax
lea eax, [ebp - 0x68]
mov dword [edi + 0x279c], 0x3f800000
push eax
lea ecx, [edi + 0x27c0]
call fcn.10086c10
lea ecx, [ebp - 0x80]
call fcn.1002e790
lea ecx, [ebp - 0x40]
call fcn.1002e790
lea ecx, [ebp - 0x68]
mov dword [ebp - 4], 0xffffffff
call fcn.100542a0
lea eax, [ebp - 0x18]
mov dword [ebp - 0x18], 0x10032ef0
lea ecx, [esi + 0x58]
push eax
call fcn.10044b40
mov dword [ebp - 0x18], esi
lea ecx, [edi + 0x18]
mov dword [edi + 0x2738], 1
imul eax, dword [edi + 0x2738], 0xeb
add eax, 0x14
mov dword [edi + 0x2724], eax
mov dword [edi + 0x272c], 0xaf
mov eax, dword [edi + 0x2c]
mov dword [edi + 0x273c], eax
lea eax, [ebp - 0x18]
push eax
call fcn.10044b40
push 0x1012c868
lea ecx, [ebp - 0x68]
lea esi, [edi + 0x2864]
call fcn.10086c40
push str.chams_enemy_blend2
lea ecx, [ebp - 0x40]
mov dword [ebp - 4], 0x11b
call fcn.1002e7e0
push str.invis
lea ecx, [ebp - 0x80]
mov byte [ebp - 4], 0x1c
call fcn.1002e7e0
lea eax, [ebp - 0x40]
mov byte [ebp - 4], 0x1d
push eax
lea ecx, [edi + 0x289c]
call fcn.10045420
lea eax, [ebp - 0x80]
mov byte [edi + 0x28cd], 1
push eax
lea ecx, [edi + 0x28ec]
call fcn.10045420
xor eax, eax
mov dword [edi + 0x28d8], 0
cmp byte [edi + 0x28cd], al
mov ecx, 0xf
mov dword [edi + 0x28dc], 0x42c80000
cmovne eax, ecx
mov dword [edi + 0x28d4], 0x42480000
mov dword [edi + 0x291c], eax
lea ecx, [edi + 0x2904]
mov dword [edi + 0x28e8], 0
mov dword [edi + 0x28e0], 0x3f800000
movd xmm0, eax
cvtdq2ps xmm0, xmm0
addss xmm0, dword [0x101312cc]
cvttss2si eax, xmm0
mov dword [edi + 0x2874], eax
mov dword [edi + 0x2878], eax
lea eax, [ebp - 0x68]
push eax
call fcn.10086c10
lea ecx, [ebp - 0x80]
call fcn.1002e790
lea ecx, [ebp - 0x40]
call fcn.1002e790
lea ecx, [ebp - 0x68]
mov dword [ebp - 4], 0xffffffff
call fcn.100542a0
lea eax, [ebp - 0x18]
mov dword [ebp - 0x18], 0x10032ef0
lea ecx, [esi + 0x58]
push eax
call fcn.10044b40
mov dword [ebp - 0x18], esi
lea ecx, [edi + 0x18]
mov dword [edi + 0x287c], 1
imul eax, dword [edi + 0x287c], 0xeb
add eax, 0x14
mov dword [edi + 0x2868], eax
mov dword [edi + 0x2870], 0xaf
mov eax, dword [edi + 0x2c]
mov dword [edi + 0x2880], eax
lea eax, [ebp - 0x18]
push eax
call fcn.10044b40
push str.chams_enemy_reflectivity
lea ecx, [ebp - 0x40]
lea esi, [edi + 0x2430]
call fcn.1002e7e0
push str.reflectivity_color
lea ecx, [ebp - 0x80]
mov dword [ebp - 4], 0x11e
call fcn.1002e7e0
lea eax, [ebp - 0x80]
mov byte [ebp - 4], 0x1f
push eax
lea ecx, [edi + 0x24a0]
call fcn.10045420
lea eax, [ebp - 0x40]
push eax
lea ecx, [edi + 0x2468]
call fcn.10045420
lea ecx, [ebp - 0x80]
mov dword [edi + 0x24b8], 0xff00b2ff
mov dword [edi + 0x24d0], 0
call fcn.1002e790
lea ecx, [ebp - 0x40]
mov dword [ebp - 4], 0xffffffff
call fcn.1002e790
lea eax, [ebp - 0x18]
mov dword [ebp - 0x18], 0x10032f20
lea ecx, [esi + 0x58]
push eax
call fcn.10044b40
mov dword [ebp - 0x18], esi
lea ecx, [edi + 0x18]
mov dword [edi + 0x2448], 1
imul eax, dword [edi + 0x2448], 0xeb
add eax, 0x14
mov dword [edi + 0x2434], eax
mov dword [edi + 0x243c], 0xaf
mov eax, dword [edi + 0x2c]
mov dword [edi + 0x244c], eax
lea eax, [ebp - 0x18]
push eax
call fcn.10044b40
push 0x1012c868
lea ecx, [ebp - 0x68]
lea esi, [edi + 0x24ec]
call fcn.10086c40
push str.chams_reflectivity
lea ecx, [ebp - 0x40]
mov dword [ebp - 4], 0x120
call fcn.1002e7e0
push 0x1012daa4
lea ecx, [ebp - 0x80]
mov byte [ebp - 4], 0x21
call fcn.1002e7e0
lea eax, [ebp - 0x40]
mov byte [ebp - 4], 0x22
push eax
lea ecx, [edi + 0x2524]
call fcn.10045420
mov byte [edi + 0x2555], 1
lea eax, [ebp - 0x80]
push eax
lea ecx, [edi + 0x2574]
call fcn.10045420
xor eax, eax
mov dword [edi + 0x2560], 0
cmp byte [edi + 0x2555], al
mov ecx, 0xf
mov dword [edi + 0x2564], 0x42c80000
cmovne eax, ecx
mov dword [edi + 0x255c], 0x42860000
mov dword [edi + 0x25a4], eax
lea ecx, [edi + 0x258c]
mov dword [edi + 0x2570], 0
mov dword [edi + 0x2568], 0x3f800000
movd xmm0, eax
cvtdq2ps xmm0, xmm0
addss xmm0, dword [0x101312cc]
cvttss2si eax, xmm0
mov dword [edi + 0x24fc], eax
mov dword [edi + 0x2500], eax
lea eax, [ebp - 0x68]
push eax
call fcn.10086c10
lea ecx, [ebp - 0x80]
call fcn.1002e790
lea ecx, [ebp - 0x40]
call fcn.1002e790
lea ecx, [ebp - 0x68]
mov dword [ebp - 4], 0xffffffff
call fcn.100542a0
lea eax, [ebp - 0x18]
mov dword [ebp - 0x18], 0x10032f20
lea ecx, [esi + 0x58]
push eax
call fcn.10044b40
mov dword [ebp - 0x18], esi
lea ecx, [edi + 0x18]
mov dword [edi + 0x2504], 1
imul eax, dword [edi + 0x2504], 0xeb
add eax, 0x14
mov dword [edi + 0x24f0], eax
mov dword [edi + 0x24f8], 0xaf
mov eax, dword [edi + 0x2c]
mov dword [edi + 0x2508], eax
lea eax, [ebp - 0x18]
push eax
call fcn.10044b40
push 0x1012c868
lea ecx, [ebp - 0x68]
lea esi, [edi + 0x25a8]
call fcn.10086c40
push 0x1012dab8
lea ecx, [ebp - 0x40]
mov dword [ebp - 4], 0x123
call fcn.1002e7e0
push str.chams_enemy_shine
lea ecx, [ebp - 0x80]
mov byte [ebp - 4], 0x24
call fcn.1002e7e0
lea eax, [ebp - 0x40]
mov byte [ebp - 4], 0x25
push eax
lea ecx, [edi + 0x25e0]
call fcn.10045420
lea eax, [ebp - 0x80]
mov byte [edi + 0x2611], 1
push eax
lea ecx, [edi + 0x2630]
call fcn.10045420
xor eax, eax
mov ecx, 0xf
cmp byte [edi + 0x2611], al
cmovne eax, ecx
mov dword [edi + 0x2660], eax
movd xmm0, eax
cvtdq2ps xmm0, xmm0
addss xmm0, dword [0x101312cc]
cvttss2si eax, xmm0
lea ecx, [edi + 0x2648]
mov dword [edi + 0x261c], 0
mov dword [edi + 0x2620], 0x42c80000
mov dword [edi + 0x2618], 0x41200000
mov dword [edi + 0x262c], 0
mov dword [edi + 0x2624], 0x3f800000
mov dword [edi + 0x25b8], eax
mov dword [edi + 0x25bc], eax
lea eax, [ebp - 0x68]
push eax
call fcn.10086c10
lea ecx, [ebp - 0x80]
call fcn.1002e790
lea ecx, [ebp - 0x40]
call fcn.1002e790
lea ecx, [ebp - 0x68]
mov dword [ebp - 4], 0xffffffff
call fcn.100542a0
lea eax, [ebp - 0x18]
mov dword [ebp - 0x18], 0x10032f20
lea ecx, [esi + 0x58]
push eax
call fcn.10044b40
mov dword [ebp - 0x18], esi
lea ecx, [edi + 0x18]
mov dword [edi + 0x25c0], 1
imul eax, dword [edi + 0x25c0], 0xeb
add eax, 0x14
mov dword [edi + 0x25ac], eax
mov dword [edi + 0x25b4], 0xaf
mov eax, dword [edi + 0x2c]
mov dword [edi + 0x25c4], eax
lea eax, [ebp - 0x18]
push eax
call fcn.10044b40
push 0x1012c868
lea ecx, [ebp - 0x68]
lea esi, [edi + 0x2664]
call fcn.10086c40
push str.chams_enemy_rim
lea ecx, [ebp - 0x40]
mov dword [ebp - 4], 0x126
call fcn.1002e7e0
push 0x1012daf4
lea ecx, [ebp - 0x80]
mov byte [ebp - 4], 0x27
call fcn.1002e7e0
lea eax, [ebp - 0x40]
mov byte [ebp - 4], 0x28
push eax
lea ecx, [edi + 0x269c]
call fcn.10045420
lea eax, [ebp - 0x80]
mov byte [edi + 0x26cd], 1
push eax
lea ecx, [edi + 0x26ec]
call fcn.10045420
xor eax, eax
mov dword [edi + 0x26d8], 0
cmp byte [edi + 0x26cd], al
mov ecx, 0xf
mov dword [edi + 0x26dc], 0x42c80000
cmovne eax, ecx
mov dword [edi + 0x26d4], 0x41200000
mov dword [edi + 0x271c], eax
lea ecx, [edi + 0x2704]
mov dword [edi + 0x26e8], 0
mov dword [edi + 0x26e0], 0x3f800000
movd xmm0, eax
cvtdq2ps xmm0, xmm0
addss xmm0, dword [0x101312cc]
cvttss2si eax, xmm0
mov dword [edi + 0x2674], eax
mov dword [edi + 0x2678], eax
lea eax, [ebp - 0x68]
push eax
call fcn.10086c10
lea ecx, [ebp - 0x80]
call fcn.1002e790
lea ecx, [ebp - 0x40]
call fcn.1002e790
lea ecx, [ebp - 0x68]
mov dword [ebp - 4], 0xffffffff
call fcn.100542a0
lea eax, [ebp - 0x18]
mov dword [ebp - 0x18], 0x10032f20
lea ecx, [esi + 0x58]
push eax
call fcn.10044b40
mov dword [ebp - 0x18], esi
lea ecx, [edi + 0x18]
mov dword [edi + 0x267c], 1
imul eax, dword [edi + 0x267c], 0xeb
add eax, 0x14
mov dword [edi + 0x2668], eax
mov dword [edi + 0x2670], 0xaf
mov eax, dword [edi + 0x2c]
mov dword [edi + 0x2680], eax
lea eax, [ebp - 0x18]
push eax
call fcn.10044b40
lea ecx, [ebp - 0x9d]
call fcn.10034920
push str.visible
lea ecx, [ebp - 0x1f0]
mov esi, eax
call fcn.1002e7e0
push str.invisible
lea ecx, [ebp - 0x1d8]
mov dword [ebp - 4], 0x129
call fcn.1002e7e0
lea eax, [ebp - 0x1c0]
mov dword [ebp - 4], 0x12a
push eax
lea eax, [ebp - 0x1f0]
push eax
lea ecx, [ebp - 0x1c0]
call fcn.100867a0
push esi
lea ecx, [ebp - 0xac]
push dword [eax + 4]
push dword [eax]
call fcn.100867c0
push 0x1012db04
lea ecx, [ebp - 0x40]
mov byte [ebp - 4], 0x2b
call fcn.1002e7e0
push str.chams_friendly
lea ecx, [ebp - 0x80]
mov byte [ebp - 4], 0x2c
call fcn.1002e7e0
lea ecx, [ebp - 0x60]
call fcn.1002fd10
lea eax, [ebp - 0x40]
mov byte [ebp - 4], 0x2e
push eax
lea ecx, [edi + 0x2cb4]
call fcn.10045420
lea eax, [ebp - 0x80]
mov byte [edi + 0x2ce5], 1
push eax
lea ecx, [edi + 0x2cec]
call fcn.10045420
xor eax, eax
mov ecx, 0xf
cmp byte [edi + 0x2ce5], al
cmovne eax, ecx
lea ecx, [ebp - 0xac]
mov dword [edi + 0x2d20], eax
add eax, 0x14
mov dword [edi + 0x2c8c], eax
mov dword [edi + 0x2c90], eax
call fcn.1002df10
lea ecx, [ebp - 0xac]
mov esi, eax
call fcn.1004dbf0
mov dword [ebp - 0x20], eax
cmp esi, eax
je 0x10068073
lea ecx, [edi + 0x2d04]
mov dword [ebp - 0x18], ecx
mov edi, ecx
nop dword [eax]
push esi
mov ecx, edi
call fcn.10053fe0
add esi, 0x18
cmp esi, dword [ebp - 0x20]
jne 0x10068060
mov edi, dword [ebp - 0x24]
lea ecx, [ebp - 0x60]
call fcn.1002df10
mov esi, eax
lea ecx, [ebp - 0x60]
mov dword [ebp - 0x9c], esi
call fcn.1004dbf0
mov dword [ebp - 0x18], eax
cmp esi, eax
je 0x10068144
lea ecx, [edi + 0x2d14]
nop dword [eax]
mov eax, dword [esi]
mov dword [ebp - 0x1c], eax
lea eax, [ebp - 0x44]
push eax
call fcn.1002dad0
lea ecx, [edi + 0x2d14]
mov esi, dword [eax]
lea eax, [ebp - 0xc4]
push eax
call fcn.1002dae0
push esi
lea edx, [ebp - 0x1c]
lea ecx, [ebp - 0xc0]
push dword [eax]
call fcn.1002f160
add esp, 8
lea ecx, [edi + 0x2d14]
mov esi, eax
lea eax, [ebp - 0xbc]
push eax
call fcn.1002dad0
push eax
mov ecx, esi
call fcn.1002dab0
lea ecx, [edi + 0x2d04]
mov byte [ebp - 0x25], al
call fcn.100452d0
cmp dword [ebp - 0x1c], eax
jae 0x10068114
lea eax, [ebp - 0x1c]
push eax
lea ecx, [edi + 0x2d14]
call fcn.10044b40
cmp byte [ebp - 0x25], 0
je 0x10068126
mov eax, dword [edi + 0x2ce0]
test eax, eax
je 0x10068126
call eax
mov esi, dword [ebp - 0x9c]
lea ecx, [edi + 0x2d14]
add esi, 4
mov dword [ebp - 0x9c], esi
cmp esi, dword [ebp - 0x18]
jne 0x100680a0
lea ecx, [ebp - 0x60]
call fcn.1002daf0
lea ecx, [ebp - 0x80]
call fcn.1002e790
lea ecx, [ebp - 0x40]
call fcn.1002e790
lea ecx, [ebp - 0xac]
call fcn.1002dbc0
push fcn.1002e790
push 2
push 0x18
lea eax, [ebp - 0x1f0]
mov dword [ebp - 4], 0xffffffff
push eax
call fcn.1010e1b6
lea eax, [ebp - 0x18]
mov dword [ebp - 0x18], 0x10032f40
lea ecx, [edi + 0x2cd4]
push eax
call fcn.10044b40
lea eax, [edi + 0x2c7c]
mov dword [ebp - 0x18], eax
lea ecx, [edi + 0x18]
mov dword [edi + 0x2c94], 1
imul eax, dword [edi + 0x2c94], 0xeb
add eax, 0x14
mov dword [edi + 0x2c80], eax
mov dword [edi + 0x2c88], 0xaf
mov eax, dword [edi + 0x2c]
mov dword [edi + 0x2c98], eax
lea eax, [ebp - 0x18]
push eax
call fcn.10044b40
lea ecx, [ebp - 0x25]
call fcn.10034920
push str.material
lea ecx, [ebp - 0x158]
mov esi, eax
call fcn.1002e7e0
push str.flat
lea ecx, [ebp - 0x140]
mov dword [ebp - 4], 0x12f
call fcn.1002e7e0
push str.metallic
lea ecx, [ebp - 0x128]
mov byte [ebp - 4], 0x30
call fcn.1002e7e0
push str.gloss
lea ecx, [ebp - 0x110]
mov byte [ebp - 4], 0x31
call fcn.1002e7e0
push str.glow
lea ecx, [ebp - 0xf8]
mov byte [ebp - 4], 0x32
call fcn.1002e7e0
push str.outline_glow
lea ecx, [ebp - 0xe0]
mov byte [ebp - 4], 0x33
call fcn.1002e7e0
lea eax, [ebp - 0xc8]
mov dword [ebp - 4], 0x134
push eax
lea eax, [ebp - 0x158]
push eax
lea ecx, [ebp - 0x48]
call fcn.100867a0
push esi
lea ecx, [ebp - 0x5c]
push dword [eax + 4]
push dword [eax]
call fcn.100867c0
mov byte [ebp - 4], 0x35
lea ecx, [ebp - 0x40]
push str.chams_friendly_mat
call fcn.1002e7e0
push str.chams_friendly_material
lea ecx, [ebp - 0x80]
mov byte [ebp - 4], 0x36
call fcn.1002e7e0
lea eax, [ebp - 0x40]
mov byte [ebp - 4], 0x37
push eax
lea ecx, [edi + 0x2d5c]
call fcn.10045420
lea eax, [ebp - 0x80]
mov byte [edi + 0x2d8d], 1
push eax
lea ecx, [edi + 0x2d94]
call fcn.10045420
xor eax, eax
mov ecx, 0xf
cmp byte [edi + 0x2d8d], al
cmovne eax, ecx
lea ecx, [ebp - 0x5c]
mov dword [edi + 0x2dc0], eax
add eax, 0x14
mov dword [edi + 0x2d34], eax
mov dword [edi + 0x2d38], eax
call fcn.1002df10
lea ecx, [ebp - 0x5c]
mov esi, eax
call fcn.1004dbf0
mov dword [ebp - 0x18], eax
cmp esi, eax
je 0x10068335
lea eax, [edi + 0x2dac]
mov edi, dword [ebp - 0x18]
mov dword [ebp - 0x20], eax
nop
push esi
mov ecx, eax
call fcn.10053fe0
mov eax, dword [ebp - 0x20]
add esi, 0x18
cmp esi, edi
jne 0x10068320
mov edi, dword [ebp - 0x24]
lea ecx, [edi + 0x2dac]
call fcn.100452d0
test eax, eax
je 0x1006834e
mov dword [edi + 0x2dbc], 0
lea ecx, [ebp - 0x80]
call fcn.1002e790
lea ecx, [ebp - 0x40]
call fcn.1002e790
lea ecx, [ebp - 0x5c]
call fcn.1002dbc0
push fcn.1002e790
push 6
push 0x18
lea eax, [ebp - 0x158]
mov dword [ebp - 4], 0xffffffff
push eax
call fcn.1010e1b6
lea eax, [ebp - 0x18]
mov dword [ebp - 0x18], 0x10032f40
lea ecx, [edi + 0x2d7c]
push eax
call fcn.10044b40
lea eax, [edi + 0x2d24]
mov dword [ebp - 0x18], eax
lea ecx, [edi + 0x18]
mov dword [edi + 0x2d3c], 1
imul eax, dword [edi + 0x2d3c], 0xeb
add eax, 0x14
mov dword [edi + 0x2d28], eax
mov dword [edi + 0x2d30], 0xaf
mov eax, dword [edi + 0x2c]
mov dword [edi + 0x2d40], eax
lea eax, [ebp - 0x18]
push eax
call fcn.10044b40
push str.chams_friendly_vis
lea ecx, [ebp - 0x40]
lea esi, [edi + 0x2dc4]
call fcn.1002e7e0
push str.color_visible
lea ecx, [ebp - 0x80]
mov dword [ebp - 4], 0x138
call fcn.1002e7e0
lea eax, [ebp - 0x80]
mov byte [ebp - 4], 0x39
push eax
lea ecx, [edi + 0x2e34]
call fcn.10045420
lea eax, [ebp - 0x40]
push eax
lea ecx, [edi + 0x2dfc]
call fcn.10045420
lea ecx, [ebp - 0x80]
mov dword [edi + 0x2e4c], 0xff00c8ff
mov dword [edi + 0x2e64], 0
call fcn.1002e790
lea ecx, [ebp - 0x40]
mov dword [ebp - 4], 0xffffffff
call fcn.1002e790
lea eax, [ebp - 0x18]
mov dword [ebp - 0x18], 0x10032f40
lea ecx, [esi + 0x58]
push eax
call fcn.10044b40
mov dword [ebp - 0x18], esi
lea ecx, [edi + 0x18]
mov dword [edi + 0x2ddc], 1
imul eax, dword [edi + 0x2ddc], 0xeb
add eax, 0x14
mov dword [edi + 0x2dc8], eax
mov dword [edi + 0x2dd0], 0xaf
mov eax, dword [edi + 0x2c]
mov dword [edi + 0x2de0], eax
lea eax, [ebp - 0x18]
push eax
call fcn.10044b40
push str.chams_friendly_invis
lea ecx, [ebp - 0x40]
lea esi, [edi + 0x2e80]
call fcn.1002e7e0
mov dword [ebp - 4], 0x13a
push str.color_invisible
lea ecx, [ebp - 0x80]
call fcn.1002e7e0
lea eax, [ebp - 0x80]
mov byte [ebp - 4], 0x3b
push eax
lea ecx, [edi + 0x2ef0]
call fcn.10045420
lea eax, [ebp - 0x40]
push eax
lea ecx, [edi + 0x2eb8]
call fcn.10045420
lea ecx, [ebp - 0x80]
mov dword [edi + 0x2f08], 0xff0032ff
mov dword [edi + 0x2f20], 0
call fcn.1002e790
lea ecx, [ebp - 0x40]
mov dword [ebp - 4], 0xffffffff
call fcn.1002e790
lea eax, [ebp - 0x18]
mov dword [ebp - 0x18], 0x10032f40
lea ecx, [esi + 0x58]
push eax
call fcn.10044b40
mov dword [ebp - 0x18], esi
lea ecx, [edi + 0x18]
mov dword [edi + 0x2e98], 1
imul eax, dword [edi + 0x2e98], 0xeb
add eax, 0x14
mov dword [edi + 0x2e84], eax
mov dword [edi + 0x2e8c], 0xaf
mov eax, dword [edi + 0x2c]
mov dword [edi + 0x2e9c], eax
lea eax, [ebp - 0x18]
push eax
call fcn.10044b40
push 0x1012c868
lea ecx, [ebp - 0x40]
lea esi, [edi + 0x2f3c]
call fcn.10086c40
push str.chams_friendly_blend
lea ecx, [ebp - 0x80]
mov dword [ebp - 4], 0x13c
call fcn.1002e7e0
push 0x101298c6
lea ecx, [ebp - 0x68]
mov byte [ebp - 4], 0x3d
call fcn.1002e7e0
lea eax, [ebp - 0x80]
mov byte [ebp - 4], 0x3e
push eax
lea ecx, [edi + 0x2f74]
call fcn.10045420
lea eax, [ebp - 0x40]
mov byte [edi + 0x2fa5], 0
push eax
lea ecx, [edi + 0x2fdc]
mov dword [edi + 0x2ff4], 0
mov dword [edi + 0x2f4c], 7
mov dword [edi + 0x2f50], 7
mov dword [edi + 0x2fb0], 0
mov dword [edi + 0x2fb4], 0x42c80000
mov dword [edi + 0x2fac], 0x42c80000
mov dword [edi + 0x2fc0], 0
mov dword [edi + 0x2fb8], 0x3f800000
call fcn.10086c10
lea ecx, [ebp - 0x68]
call fcn.1002e790
lea ecx, [ebp - 0x80]
call fcn.1002e790
lea ecx, [ebp - 0x40]
mov dword [ebp - 4], 0xffffffff
call fcn.100542a0
lea eax, [ebp - 0x18]
mov dword [ebp - 0x18], 0x10032f40
lea ecx, [esi + 0x58]
push eax
call fcn.10044b40
mov dword [ebp - 0x18], esi
lea ecx, [edi + 0x18]
mov dword [edi + 0x2f54], 1
imul eax, dword [edi + 0x2f54], 0xeb
add eax, 0x14
mov dword [edi + 0x2f40], eax
mov dword [edi + 0x2f48], 0xaf
mov eax, dword [edi + 0x2c]
mov dword [edi + 0x2f58], eax
lea eax, [ebp - 0x18]
push eax
call fcn.10044b40
push 0x1012db88
lea ecx, [ebp - 0x40]
lea esi, [edi + 0x27dc]
call fcn.1002e7e0
push str.chams_history
lea ecx, [ebp - 0x80]
mov dword [ebp - 4], 0x13f
call fcn.1002e7e0
lea eax, [ebp - 0x40]
mov byte [ebp - 4], 0x40
push eax
lea ecx, [edi + 0x2814]
call fcn.10045420
lea eax, [ebp - 0x80]
mov byte [edi + 0x2845], 1
push eax
lea ecx, [edi + 0x284c]
call fcn.10045420
lea ecx, [ebp - 0x80]
mov byte [edi + 0x2848], 0
call fcn.1002e790
lea ecx, [ebp - 0x40]
mov dword [ebp - 4], 0xffffffff
call fcn.1002e790
lea eax, [ebp - 0x18]
mov dword [ebp - 0x18], 0x10032f50
lea ecx, [esi + 0x58]
push eax
call fcn.10044b40
mov dword [ebp - 0x18], esi
lea ecx, [edi + 0x18]
mov dword [edi + 0x27f4], 1
imul eax, dword [edi + 0x27f4], 0xeb
add eax, 0x14
mov dword [edi + 0x27e0], eax
mov dword [edi + 0x27e8], 0xaf
mov eax, dword [edi + 0x2c]
mov dword [edi + 0x27f8], eax
lea eax, [ebp - 0x18]
push eax
call fcn.10044b40
lea ecx, [ebp - 0x9d]
call fcn.10034920
push str.material
lea ecx, [ebp - 0x158]
mov esi, eax
call fcn.1002e7e0
push str.flat
lea ecx, [ebp - 0x140]
mov dword [ebp - 4], 0x141
call fcn.1002e7e0
push str.metallic
lea ecx, [ebp - 0x128]
mov byte [ebp - 4], 0x42
call fcn.1002e7e0
push str.gloss
lea ecx, [ebp - 0x110]
mov byte [ebp - 4], 0x43
call fcn.1002e7e0
push str.glow
lea ecx, [ebp - 0xf8]
mov byte [ebp - 4], 0x44
call fcn.1002e7e0
push str.outline_glow
lea ecx, [ebp - 0xe0]
mov byte [ebp - 4], 0x45
call fcn.1002e7e0
lea eax, [ebp - 0xc8]
mov dword [ebp - 4], 0x146
push eax
lea eax, [ebp - 0x158]
push eax
lea ecx, [ebp - 0x48]
call fcn.100867a0
push esi
lea ecx, [ebp - 0x5c]
push dword [eax + 4]
push dword [eax]
call fcn.100867c0
push str.chams_enemy_history_mat
lea ecx, [ebp - 0x40]
mov byte [ebp - 4], 0x47
call fcn.1002e7e0
push str.chams_history_material
lea ecx, [ebp - 0x80]
mov byte [ebp - 4], 0x48
call fcn.1002e7e0
lea eax, [ebp - 0x40]
mov byte [ebp - 4], 0x49
push eax
lea ecx, [edi + 0x2958]
call fcn.10045420
lea eax, [ebp - 0x80]
mov byte [edi + 0x2989], 1
push eax
lea ecx, [edi + 0x2990]
call fcn.10045420
xor eax, eax
mov ecx, 0xf
cmp byte [edi + 0x2989], al
cmovne eax, ecx
lea ecx, [ebp - 0x5c]
mov dword [edi + 0x29bc], eax
add eax, 0x14
mov dword [edi + 0x2930], eax
mov dword [edi + 0x2934], eax
call fcn.1002df10
lea ecx, [ebp - 0x5c]
mov esi, eax
call fcn.1004dbf0
mov dword [ebp - 0x18], eax
cmp esi, eax
je 0x100688a5
lea eax, [edi + 0x29a8]
mov edi, dword [ebp - 0x18]
mov dword [ebp - 0x20], eax
nop
push esi
mov ecx, eax
call fcn.10053fe0
mov eax, dword [ebp - 0x20]
add esi, 0x18
cmp esi, edi
jne 0x10068890
mov edi, dword [ebp - 0x24]
lea ecx, [edi + 0x29a8]
call fcn.100452d0
test eax, eax
je 0x100688be
mov dword [edi + 0x29b8], 0
lea ecx, [ebp - 0x80]
call fcn.1002e790
lea ecx, [ebp - 0x40]
call fcn.1002e790
lea ecx, [ebp - 0x5c]
call fcn.1002dbc0
push fcn.1002e790
push 6
push 0x18
lea eax, [ebp - 0x158]
mov dword [ebp - 4], 0xffffffff
push eax
call fcn.1010e1b6
lea eax, [ebp - 0x18]
mov dword [ebp - 0x18], 0x10032f50
lea ecx, [edi + 0x2978]
push eax
call fcn.10044b40
lea eax, [edi + 0x2920]
mov dword [ebp - 0x18], eax
lea ecx, [edi + 0x18]
mov dword [edi + 0x2938], 1
imul eax, dword [edi + 0x2938], 0xeb
add eax, 0x14
mov dword [edi + 0x2924], eax
mov dword [edi + 0x292c], 0xaf
mov eax, dword [edi + 0x2c]
mov dword [edi + 0x293c], eax
lea eax, [ebp - 0x18]
push eax
call fcn.10044b40
push str.chams_history_col
lea ecx, [ebp - 0x40]
lea esi, [edi + 0x29c0]
call fcn.1002e7e0
push str.color
lea ecx, [ebp - 0x80]
mov dword [ebp - 4], 0x14a
call fcn.1002e7e0
lea eax, [ebp - 0x80]
mov byte [ebp - 4], 0x4b
push eax
lea ecx, [edi + 0x2a30]
call fcn.10045420
lea eax, [ebp - 0x40]
push eax
lea ecx, [edi + 0x29f8]
call fcn.10045420
lea ecx, [ebp - 0x80]
mov dword [edi + 0x2a48], 0xff000000
mov dword [edi + 0x2a60], 0
call fcn.1002e790
lea ecx, [ebp - 0x40]
mov dword [ebp - 4], 0xffffffff
call fcn.1002e790
lea eax, [ebp - 0x18]
mov dword [ebp - 0x18], 0x10032f50
lea ecx, [esi + 0x58]
push eax
call fcn.10044b40
mov dword [ebp - 0x18], esi
lea ecx, [edi + 0x18]
mov dword [edi + 0x29d8], 1
imul eax, dword [edi + 0x29d8], 0xeb
add eax, 0x14
mov dword [edi + 0x29c4], eax
mov dword [edi + 0x29cc], 0xaf
mov eax, dword [edi + 0x2c]
mov dword [edi + 0x29dc], eax
lea eax, [ebp - 0x18]
push eax
call fcn.10044b40
push 0x1012c868
lea ecx, [ebp - 0x40]
lea esi, [edi + 0x2a7c]
call fcn.10086c40
mov dword [ebp - 4], 0x14c
push str.chams_history_blend
lea ecx, [ebp - 0x80]
call fcn.1002e7e0
push 0x101298c6
lea ecx, [ebp - 0x68]
mov byte [ebp - 4], 0x4d
call fcn.1002e7e0
lea eax, [ebp - 0x80]
mov byte [ebp - 4], 0x4e
push eax
lea ecx, [edi + 0x2ab4]
call fcn.10045420
lea eax, [ebp - 0x40]
mov byte [edi + 0x2ae5], 0
push eax
lea ecx, [edi + 0x2b1c]
mov dword [edi + 0x2b34], 0
mov dword [edi + 0x2a8c], 7
mov dword [edi + 0x2a90], 7
mov dword [edi + 0x2af0], 0
mov dword [edi + 0x2af4], 0x42c80000
mov dword [edi + 0x2aec], 0x42c80000
mov dword [edi + 0x2b00], 0
mov dword [edi + 0x2af8], 0x3f800000
call fcn.10086c10
lea ecx, [ebp - 0x68]
call fcn.1002e790
lea ecx, [ebp - 0x80]
call fcn.1002e790
lea ecx, [ebp - 0x40]
mov dword [ebp - 4], 0xffffffff
call fcn.100542a0
lea eax, [ebp - 0x18]
mov dword [ebp - 0x18], 0x10032f50
lea ecx, [esi + 0x58]
push eax
call fcn.10044b40
mov dword [ebp - 0x18], esi
lea ecx, [edi + 0x18]
mov dword [edi + 0x2a94], 1
imul eax, dword [edi + 0x2a94], 0xeb
add eax, 0x14
mov dword [edi + 0x2a80], eax
mov dword [edi + 0x2a88], 0xaf
mov eax, dword [edi + 0x2c]
mov dword [edi + 0x2a98], eax
lea eax, [ebp - 0x18]
push eax
call fcn.10044b40
push 0x1012dc54
lea ecx, [ebp - 0x40]
lea esi, [edi + 0x2b38]
call fcn.1002e7e0
push str.history_skeleton
lea ecx, [ebp - 0x80]
mov dword [ebp - 4], 0x14f
call fcn.1002e7e0
lea eax, [ebp - 0x40]
mov byte [ebp - 4], 0x50
push eax
lea ecx, [edi + 0x2b70]
call fcn.10045420
lea eax, [ebp - 0x80]
mov byte [edi + 0x2ba1], 1
push eax
lea ecx, [edi + 0x2ba8]
call fcn.10045420
lea ecx, [ebp - 0x80]
mov byte [edi + 0x2ba4], 0
call fcn.1002e790
lea ecx, [ebp - 0x40]
mov dword [ebp - 4], 0xffffffff
call fcn.1002e790
lea eax, [ebp - 0x18]
mov dword [ebp - 0x18], 0x10032f50
lea ecx, [esi + 0x58]
push eax
call fcn.10044b40
mov dword [ebp - 0x18], esi
lea ecx, [edi + 0x18]
mov dword [edi + 0x2b50], 1
imul eax, dword [edi + 0x2b50], 0xeb
add eax, 0x14
mov dword [edi + 0x2b3c], eax
mov dword [edi + 0x2b44], 0xaf
mov eax, dword [edi + 0x2c]
mov dword [edi + 0x2b54], eax
lea eax, [ebp - 0x18]
push eax
call fcn.10044b40
push str.history_skeleton_col
lea ecx, [ebp - 0x40]
lea esi, [edi + 0x2bc0]
call fcn.1002e7e0
push str.color
lea ecx, [ebp - 0x80]
mov dword [ebp - 4], 0x151
call fcn.1002e7e0
lea eax, [ebp - 0x80]
mov byte [ebp - 4], 0x52
push eax
lea ecx, [edi + 0x2c30]
call fcn.10045420
lea eax, [ebp - 0x40]
push eax
lea ecx, [edi + 0x2bf8]
call fcn.10045420
lea ecx, [ebp - 0x80]
mov dword [edi + 0x2c48], 0xffffffff
mov dword [edi + 0x2c60], 0
call fcn.1002e790
lea ecx, [ebp - 0x40]
mov dword [ebp - 4], 0xffffffff
call fcn.1002e790
lea eax, [ebp - 0x18]
mov dword [ebp - 0x18], 0x10032f50
lea ecx, [esi + 0x58]
push eax
call fcn.10044b40
mov dword [ebp - 0x18], esi
lea ecx, [edi + 0x18]
mov dword [edi + 0x2bd8], 1
imul eax, dword [edi + 0x2bd8], 0xeb
add eax, 0x14
mov dword [edi + 0x2bc4], eax
mov dword [edi + 0x2bcc], 0xaf
mov eax, dword [edi + 0x2c]
mov dword [edi + 0x2bdc], eax
lea eax, [ebp - 0x18]
push eax
call fcn.10044b40
push str.chams_fake
lea ecx, [ebp - 0x40]
lea esi, [edi + 0x2ff8]
call fcn.1002e7e0
push str.fake_chams
lea ecx, [ebp - 0x80]
mov dword [ebp - 4], 0x153
call fcn.1002e7e0
lea eax, [ebp - 0x40]
mov byte [ebp - 4], 0x54
push eax
lea ecx, [edi + 0x3030]
call fcn.10045420
lea eax, [ebp - 0x80]
mov byte [edi + 0x3061], 1
push eax
lea ecx, [edi + 0x3068]
call fcn.10045420
lea ecx, [ebp - 0x80]
mov byte [edi + 0x3064], 0
call fcn.1002e790
lea ecx, [ebp - 0x40]
mov dword [ebp - 4], 0xffffffff
call fcn.1002e790
lea eax, [ebp - 0x18]
mov dword [ebp - 0x18], 0x10032f60
lea ecx, [esi + 0x58]
push eax
call fcn.10044b40
mov dword [ebp - 0x18], esi
lea ecx, [edi + 0x18]
mov dword [edi + 0x3010], 1
imul eax, dword [edi + 0x3010], 0xeb
add eax, 0x14
mov dword [edi + 0x2ffc], eax
mov dword [edi + 0x3004], 0xaf
mov eax, dword [edi + 0x2c]
mov dword [edi + 0x3014], eax
lea eax, [ebp - 0x18]
push eax
call fcn.10044b40
lea ecx, [ebp - 0x25]
call fcn.10034920
push str.material
lea ecx, [ebp - 0x158]
mov esi, eax
call fcn.1002e7e0
push str.flat
lea ecx, [ebp - 0x140]
mov dword [ebp - 4], 0x155
call fcn.1002e7e0
push str.metallic
lea ecx, [ebp - 0x128]
mov byte [ebp - 4], 0x56
call fcn.1002e7e0
push str.gloss
lea ecx, [ebp - 0x110]
mov byte [ebp - 4], 0x57
call fcn.1002e7e0
push str.glow
lea ecx, [ebp - 0xf8]
mov byte [ebp - 4], 0x58
call fcn.1002e7e0
push str.outline_glow
lea ecx, [ebp - 0xe0]
mov byte [ebp - 4], 0x59
call fcn.1002e7e0
lea eax, [ebp - 0xc8]
mov dword [ebp - 4], 0x15a
push eax
lea eax, [ebp - 0x158]
push eax
lea ecx, [ebp - 0x48]
call fcn.100867a0
push esi
lea ecx, [ebp - 0x5c]
push dword [eax + 4]
push dword [eax]
call fcn.100867c0
push str.chams_fake_mat
lea ecx, [ebp - 0x40]
mov byte [ebp - 4], 0x5b
call fcn.1002e7e0
push str.chams_material
lea ecx, [ebp - 0x80]
mov byte [ebp - 4], 0x5c
call fcn.1002e7e0
lea eax, [ebp - 0x40]
mov byte [ebp - 4], 0x5d
push eax
lea ecx, [edi + 0x30b8]
call fcn.10045420
lea eax, [ebp - 0x80]
mov byte [edi + 0x30e9], 1
push eax
lea ecx, [edi + 0x30f0]
call fcn.10045420
xor eax, eax
mov ecx, 0xf
cmp byte [edi + 0x30e9], al
cmovne eax, ecx
lea ecx, [ebp - 0x5c]
mov dword [edi + 0x311c], eax
add eax, 0x14
mov dword [edi + 0x3090], eax
mov dword [edi + 0x3094], eax
call fcn.1002df10
lea ecx, [ebp - 0x5c]
mov esi, eax
call fcn.1004dbf0
mov dword [ebp - 0x18], eax
cmp esi, eax
je 0x10068ed5
lea eax, [edi + 0x3108]
mov edi, dword [ebp - 0x18]
mov dword [ebp - 0x20], eax
nop dword [eax]
push esi
mov ecx, eax
call fcn.10053fe0
mov eax, dword [ebp - 0x20]
add esi, 0x18
cmp esi, edi
jne 0x10068ec0
mov edi, dword [ebp - 0x24]
lea ecx, [edi + 0x3108]
call fcn.100452d0
test eax, eax
je 0x10068eee
mov dword [edi + 0x3118], 0
lea ecx, [ebp - 0x80]
call fcn.1002e790
lea ecx, [ebp - 0x40]
call fcn.1002e790
lea ecx, [ebp - 0x5c]
call fcn.1002dbc0
push fcn.1002e790
push 6
push 0x18
lea eax, [ebp - 0x158]
mov dword [ebp - 4], 0xffffffff
push eax
call fcn.1010e1b6
lea eax, [ebp - 0x18]
mov dword [ebp - 0x18], 0x10032f60
lea ecx, [edi + 0x30d8]
push eax
call fcn.10044b40
lea eax, [edi + 0x3080]
mov dword [ebp - 0x18], eax
lea ecx, [edi + 0x18]
mov dword [edi + 0x3098], 1
imul eax, dword [edi + 0x3098], 0xeb
add eax, 0x14
mov dword [edi + 0x3084], eax
mov dword [edi + 0x308c], 0xaf
mov eax, dword [edi + 0x2c]
mov dword [edi + 0x309c], eax
lea eax, [ebp - 0x18]
push eax
call fcn.10044b40
push str.chams_fake_col
lea ecx, [ebp - 0x40]
lea esi, [edi + 0x3120]
call fcn.1002e7e0
push str.color
lea ecx, [ebp - 0x80]
mov dword [ebp - 4], 0x15e
call fcn.1002e7e0
lea eax, [ebp - 0x80]
mov byte [ebp - 4], 0x5f
push eax
lea ecx, [edi + 0x3190]
call fcn.10045420
lea eax, [ebp - 0x40]
push eax
lea ecx, [edi + 0x3158]
call fcn.10045420
lea ecx, [ebp - 0x80]
mov dword [edi + 0x31a8], 0xff00c8ff
mov dword [edi + 0x31c0], 0
call fcn.1002e790
lea ecx, [ebp - 0x40]
mov dword [ebp - 4], 0xffffffff
call fcn.1002e790
lea eax, [ebp - 0x18]
mov dword [ebp - 0x18], 0x10032f60
lea ecx, [esi + 0x58]
push eax
call fcn.10044b40
mov dword [ebp - 0x18], esi
lea ecx, [edi + 0x18]
mov dword [edi + 0x3138], 1
imul eax, dword [edi + 0x3138], 0xeb
add eax, 0x14
mov dword [edi + 0x3124], eax
mov dword [edi + 0x312c], 0xaf
mov eax, dword [edi + 0x2c]
mov dword [edi + 0x313c], eax
lea eax, [ebp - 0x18]
push eax
call fcn.10044b40
push str.chams_fake_glow_col
lea ecx, [ebp - 0x40]
add edi, 0x31dc
call fcn.1002e7e0
mov dword [ebp - 4], 0x160
push str.glow_color
lea ecx, [ebp - 0x80]
call fcn.1002e7e0
mov esi, dword [ebp - 0x24]
lea eax, [ebp - 0x80]
push eax
mov byte [ebp - 4], 0x61
lea ecx, [esi + 0x324c]
call fcn.10045420
lea eax, [ebp - 0x40]
push eax
lea ecx, [esi + 0x3214]
call fcn.10045420
lea ecx, [ebp - 0x80]
mov dword [esi + 0x3264], 0xff00c8ff
mov dword [esi + 0x327c], 0
call fcn.1002e790
lea ecx, [ebp - 0x40]
mov dword [ebp - 4], 0xffffffff
call fcn.1002e790
lea eax, [ebp - 0x18]
mov dword [ebp - 0x18], 0x10032f60
push eax
lea ecx, [edi + 0x58]
call fcn.10044b40
lea eax, [ebp - 0x18]
mov dword [ebp - 0x18], 0x10032f90
push eax
lea ecx, [edi + 0x58]
call fcn.10044b40
mov dword [ebp - 0x18], edi
mov edi, esi
mov dword [edi + 0x31f4], 1
lea ecx, [edi + 0x18]
imul eax, dword [edi + 0x31f4], 0xeb
add eax, 0x14
mov dword [edi + 0x31e0], eax
mov dword [edi + 0x31e8], 0xaf
mov eax, dword [edi + 0x2c]
mov dword [edi + 0x31f8], eax
lea eax, [ebp - 0x18]
push eax
call fcn.10044b40
push 0x1012c868
lea ecx, [ebp - 0x40]
lea esi, [edi + 0x3298]
call fcn.10086c40
push str.chams_fake_blend
lea ecx, [ebp - 0x80]
mov dword [ebp - 4], 0x162
call fcn.1002e7e0
push 0x101298c6
lea ecx, [ebp - 0x68]
mov byte [ebp - 4], 0x63
call fcn.1002e7e0
lea eax, [ebp - 0x80]
mov byte [ebp - 4], 0x64
push eax
lea ecx, [edi + 0x32d0]
call fcn.10045420
lea eax, [ebp - 0x40]
mov byte [edi + 0x3301], 0
push eax
lea ecx, [edi + 0x3338]
mov dword [edi + 0x3350], 0
mov dword [edi + 0x32a8], 7
mov dword [edi + 0x32ac], 7
mov dword [edi + 0x330c], 0
mov dword [edi + 0x3310], 0x42c80000
mov dword [edi + 0x3308], 0x42c80000
mov dword [edi + 0x331c], 0
mov dword [edi + 0x3314], 0x3f800000
call fcn.10086c10
lea ecx, [ebp - 0x68]
call fcn.1002e790
lea ecx, [ebp - 0x80]
call fcn.1002e790
mov dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0x40]
call fcn.100542a0
lea eax, [ebp - 0x18]
mov dword [ebp - 0x18], 0x10032f60
lea ecx, [esi + 0x58]
push eax
call fcn.10044b40
mov dword [ebp - 0x18], esi
lea ecx, [edi + 0x18]
mov dword [edi + 0x32b0], 1
imul eax, dword [edi + 0x32b0], 0xeb
add eax, 0x14
mov dword [edi + 0x329c], eax
mov dword [edi + 0x32a4], 0xaf
mov eax, dword [edi + 0x2c]
mov dword [edi + 0x32b4], eax
lea eax, [ebp - 0x18]
push eax
call fcn.10044b40
push str.chams_shot
lea ecx, [ebp - 0x40]
lea esi, [edi + 0x3354]
call fcn.1002e7e0
push str.shot_chams
lea ecx, [ebp - 0x80]
mov dword [ebp - 4], 0x165
call fcn.1002e7e0
lea eax, [ebp - 0x40]
mov byte [ebp - 4], 0x66
push eax
lea ecx, [edi + 0x338c]
call fcn.10045420
lea eax, [ebp - 0x80]
mov byte [edi + 0x33bd], 1
push eax
lea ecx, [edi + 0x33c4]
call fcn.10045420
lea ecx, [ebp - 0x80]
mov byte [edi + 0x33c0], 0
call fcn.1002e790
lea ecx, [ebp - 0x40]
mov dword [ebp - 4], 0xffffffff
call fcn.1002e790
lea eax, [ebp - 0x18]
mov dword [ebp - 0x18], 0x10032f70
lea ecx, [esi + 0x58]
push eax
call fcn.10044b40
mov dword [ebp - 0x18], esi
lea ecx, [edi + 0x18]
mov dword [edi + 0x336c], 1
imul eax, dword [edi + 0x336c], 0xeb
add eax, 0x14
mov dword [edi + 0x3358], eax
mov dword [edi + 0x3360], 0xaf
mov eax, dword [edi + 0x2c]
mov dword [edi + 0x3370], eax
lea eax, [ebp - 0x18]
push eax
call fcn.10044b40
lea ecx, [ebp - 0x9d]
call fcn.10034920
push str.material
lea ecx, [ebp - 0x158]
mov esi, eax
call fcn.1002e7e0
push str.flat
lea ecx, [ebp - 0x140]
mov dword [ebp - 4], 0x167
call fcn.1002e7e0
push str.metallic
lea ecx, [ebp - 0x128]
mov byte [ebp - 4], 0x68
call fcn.1002e7e0
mov byte [ebp - 4], 0x69
push str.gloss
lea ecx, [ebp - 0x110]
call fcn.1002e7e0
push str.glow
lea ecx, [ebp - 0xf8]
mov byte [ebp - 4], 0x6a
call fcn.1002e7e0
push str.outline_glow
lea ecx, [ebp - 0xe0]
mov byte [ebp - 4], 0x6b
call fcn.1002e7e0
lea eax, [ebp - 0xc8]
mov dword [ebp - 4], 0x16c
push eax
lea eax, [ebp - 0x158]
push eax
lea ecx, [ebp - 0x48]
call fcn.100867a0
push esi
lea ecx, [ebp - 0x5c]
push dword [eax + 4]
push dword [eax]
call fcn.100867c0
push str.chams_shot_mat
lea ecx, [ebp - 0x40]
mov byte [ebp - 4], 0x6d
call fcn.1002e7e0
push str.chams_material
lea ecx, [ebp - 0x80]
mov byte [ebp - 4], 0x6e
call fcn.1002e7e0
lea eax, [ebp - 0x40]
mov byte [ebp - 4], 0x6f
push eax
lea ecx, [edi + 0x3414]
call fcn.10045420
lea eax, [ebp - 0x80]
mov byte [edi + 0x3445], 1
push eax
lea ecx, [edi + 0x344c]
call fcn.10045420
xor eax, eax
mov ecx, 0xf
cmp byte [edi + 0x3445], al
cmovne eax, ecx
lea ecx, [ebp - 0x5c]
mov dword [edi + 0x3478], eax
add eax, 0x14
mov dword [edi + 0x33ec], eax
mov dword [edi + 0x33f0], eax
call fcn.1002df10
lea ecx, [ebp - 0x5c]
mov esi, eax
call fcn.1004dbf0
mov dword [ebp - 0x18], eax
cmp esi, eax
je 0x1006945c
lea eax, [edi + 0x3464]
mov edi, dword [ebp - 0x18]
mov dword [ebp - 0x20], eax
push esi
mov ecx, eax
call fcn.10053fe0
mov eax, dword [ebp - 0x20]
add esi, 0x18
cmp esi, edi
jne 0x10069447
mov edi, dword [ebp - 0x24]
lea ecx, [edi + 0x3464]
call fcn.100452d0
test eax, eax
je 0x10069475
mov dword [edi + 0x3474], 0
lea ecx, [ebp - 0x80]
call fcn.1002e790
lea ecx, [ebp - 0x40]
call fcn.1002e790
lea ecx, [ebp - 0x5c]
call fcn.1002dbc0
push fcn.1002e790
push 6
push 0x18
lea eax, [ebp - 0x158]
mov dword [ebp - 4], 0xffffffff
push eax
call fcn.1010e1b6
lea eax, [ebp - 0x18]
mov dword [ebp - 0x18], 0x10032f70
lea ecx, [edi + 0x3434]
push eax
call fcn.10044b40
lea eax, [edi + 0x33dc]
mov dword [ebp - 0x18], eax
lea ecx, [edi + 0x18]
mov dword [edi + 0x33f4], 1
imul eax, dword [edi + 0x33f4], 0xeb
add eax, 0x14
mov dword [edi + 0x33e0], eax
mov dword [edi + 0x33e8], 0xaf
mov eax, dword [edi + 0x2c]
mov dword [edi + 0x33f8], eax
lea eax, [ebp - 0x18]
push eax
call fcn.10044b40
push str.chams_shot_col
lea ecx, [ebp - 0x40]
lea esi, [edi + 0x347c]
call fcn.1002e7e0
push str.color
lea ecx, [ebp - 0x80]
mov dword [ebp - 4], 0x170
call fcn.1002e7e0
lea eax, [ebp - 0x80]
mov byte [ebp - 4], 0x71
push eax
lea ecx, [edi + 0x34ec]
call fcn.10045420
lea eax, [ebp - 0x40]
push eax
lea ecx, [edi + 0x34b4]
call fcn.10045420
lea ecx, [ebp - 0x80]
mov dword [edi + 0x3504], 0xffffffff
mov dword [edi + 0x351c], 0
call fcn.1002e790
lea ecx, [ebp - 0x40]
mov dword [ebp - 4], 0xffffffff
call fcn.1002e790
lea eax, [ebp - 0x18]
mov dword [ebp - 0x18], 0x10032f70
lea ecx, [esi + 0x58]
push eax
call fcn.10044b40
mov dword [ebp - 0x18], esi
lea ecx, [edi + 0x18]
mov dword [edi + 0x3494], 1
imul eax, dword [edi + 0x3494], 0xeb
add eax, 0x14
mov dword [edi + 0x3480], eax
mov dword [edi + 0x3488], 0xaf
mov eax, dword [edi + 0x2c]
mov dword [edi + 0x3498], eax
lea eax, [ebp - 0x18]
push eax
call fcn.10044b40
push 0x1012c868
lea ecx, [ebp - 0x40]
lea esi, [edi + 0x3538]
call fcn.10086c40
mov dword [ebp - 4], 0x172
push str.chams_shot_blend
lea ecx, [ebp - 0x80]
call fcn.1002e7e0
push 0x101298c6
lea ecx, [ebp - 0x68]
mov byte [ebp - 4], 0x73
call fcn.1002e7e0
lea eax, [ebp - 0x80]
mov byte [ebp - 4], 0x74
push eax
lea ecx, [edi + 0x3570]
call fcn.10045420
lea eax, [ebp - 0x40]
mov byte [edi + 0x35a1], 0
push eax
lea ecx, [edi + 0x35d8]
mov dword [edi + 0x35f0], 0
mov dword [edi + 0x3548], 7
mov dword [edi + 0x354c], 7
mov dword [edi + 0x35ac], 0x3f800000
mov dword [edi + 0x35b0], 0x437f0000
mov dword [edi + 0x35a8], 0x437f0000
mov dword [edi + 0x35bc], 0
mov dword [edi + 0x35b4], 0x3f800000
call fcn.10086c10
lea ecx, [ebp - 0x68]
call fcn.1002e790
lea ecx, [ebp - 0x80]
call fcn.1002e790
lea ecx, [ebp - 0x40]
mov dword [ebp - 4], 0xffffffff
call fcn.100542a0
lea eax, [ebp - 0x18]
mov dword [ebp - 0x18], 0x10032f70
lea ecx, [esi + 0x58]
push eax
call fcn.10044b40
mov dword [ebp - 0x18], esi
lea ecx, [edi + 0x18]
mov dword [edi + 0x3550], 1
imul eax, dword [edi + 0x3550], 0xeb
add eax, 0x14
mov dword [edi + 0x353c], eax
mov dword [edi + 0x3544], 0xaf
mov eax, dword [edi + 0x2c]
mov dword [edi + 0x3554], eax
lea eax, [ebp - 0x18]
push eax
call fcn.10044b40
push 0x1012cf28
lea ecx, [ebp - 0x68]
lea esi, [edi + 0x35f4]
call fcn.10086c40
push str.chams_shot_fadetime
lea ecx, [ebp - 0x40]
mov dword [ebp - 4], 0x175
call fcn.1002e7e0
push str.fade_time
lea ecx, [ebp - 0x80]
mov byte [ebp - 4], 0x76
call fcn.1002e7e0
lea eax, [ebp - 0x40]
mov byte [ebp - 4], 0x77
push eax
lea ecx, [edi + 0x362c]
call fcn.10045420
lea eax, [ebp - 0x80]
mov byte [edi + 0x365d], 1
push eax
lea ecx, [edi + 0x367c]
call fcn.10045420
xor eax, eax
mov ecx, 0xf
cmp byte [edi + 0x365d], al
cmovne eax, ecx
mov dword [edi + 0x36ac], eax
movd xmm0, eax
cvtdq2ps xmm0, xmm0
lea ecx, [edi + 0x3694]
mov dword [edi + 0x3668], 0
mov dword [edi + 0x366c], 0x41200000
mov dword [edi + 0x3664], 0x3e99999a
mov dword [edi + 0x3678], 1
mov dword [edi + 0x3670], 0x3dcccccd
addss xmm0, dword [0x101312cc]
cvttss2si eax, xmm0
mov dword [edi + 0x3604], eax
mov dword [edi + 0x3608], eax
lea eax, [ebp - 0x68]
push eax
call fcn.10086c10
lea ecx, [ebp - 0x80]
call fcn.1002e790
lea ecx, [ebp - 0x40]
call fcn.1002e790
lea ecx, [ebp - 0x68]
mov dword [ebp - 4], 0xffffffff
call fcn.100542a0
lea eax, [ebp - 0x18]
mov dword [ebp - 0x18], 0x10032f70
lea ecx, [esi + 0x58]
push eax
call fcn.10044b40
mov dword [ebp - 0x18], esi
lea ecx, [edi + 0x18]
mov dword [edi + 0x360c], 1
imul eax, dword [edi + 0x360c], 0xeb
add eax, 0x14
mov dword [edi + 0x35f8], eax
mov dword [edi + 0x3600], 0xaf
mov eax, dword [edi + 0x2c]
mov dword [edi + 0x3610], eax
lea eax, [ebp - 0x18]
push eax
call fcn.10044b40
push 0x1012dd64
lea ecx, [ebp - 0x40]
lea esi, [edi + 0x376c]
call fcn.1002e7e0
push str.weapon_chams
lea ecx, [ebp - 0x80]
mov dword [ebp - 4], 0x178
call fcn.1002e7e0
lea eax, [ebp - 0x40]
mov byte [ebp - 4], 0x79
push eax
lea ecx, [edi + 0x37a4]
call fcn.10045420
lea eax, [ebp - 0x80]
mov byte [edi + 0x37d5], 1
push eax
lea ecx, [edi + 0x37dc]
call fcn.10045420
lea ecx, [ebp - 0x80]
mov byte [edi + 0x37d8], 0
call fcn.1002e790
lea ecx, [ebp - 0x40]
mov dword [ebp - 4], 0xffffffff
call fcn.1002e790
lea eax, [ebp - 0x18]
mov dword [ebp - 0x18], 0x10032f80
lea ecx, [esi + 0x58]
push eax
call fcn.10044b40
mov dword [ebp - 0x18], esi
lea ecx, [edi + 0x18]
mov dword [edi + 0x3784], 1
imul eax, dword [edi + 0x3784], 0xeb
add eax, 0x14
mov dword [edi + 0x3770], eax
mov dword [edi + 0x3778], 0xaf
mov eax, dword [edi + 0x2c]
mov dword [edi + 0x3788], eax
lea eax, [ebp - 0x18]
push eax
call fcn.10044b40
lea ecx, [ebp - 0x25]
call fcn.10034920
push str.material
lea ecx, [ebp - 0x158]
mov esi, eax
call fcn.1002e7e0
push str.flat
lea ecx, [ebp - 0x140]
mov dword [ebp - 4], 0x17a
call fcn.1002e7e0
push str.metallic
lea ecx, [ebp - 0x128]
mov byte [ebp - 4], 0x7b
call fcn.1002e7e0
push str.gloss
lea ecx, [ebp - 0x110]
mov byte [ebp - 4], 0x7c
call fcn.1002e7e0
push str.glow
lea ecx, [ebp - 0xf8]
mov byte [ebp - 4], 0x7d
call fcn.1002e7e0
push str.outline_glow
lea ecx, [ebp - 0xe0]
mov byte [ebp - 4], 0x7e
call fcn.1002e7e0
lea eax, [ebp - 0xc8]
mov dword [ebp - 4], 0x17f
push eax
lea eax, [ebp - 0x158]
push eax
lea ecx, [ebp - 0x48]
call fcn.100867a0
push esi
lea ecx, [ebp - 0x5c]
push dword [eax + 4]
push dword [eax]
call fcn.100867c0
push str.weapon_chams_mat
lea ecx, [ebp - 0x40]
mov byte [ebp - 4], 0x80
call fcn.1002e7e0
push str.weapon_material
lea ecx, [ebp - 0x80]
mov byte [ebp - 4], 0x81
call fcn.1002e7e0
lea eax, [ebp - 0x40]
mov byte [ebp - 4], 0x82
push eax
lea ecx, [edi + 0x382c]
call fcn.10045420
lea eax, [ebp - 0x80]
mov byte [edi + 0x385d], 1
push eax
lea ecx, [edi + 0x3864]
call fcn.10045420
xor eax, eax
mov ecx, 0xf
cmp byte [edi + 0x385d], al
cmovne eax, ecx
lea ecx, [ebp - 0x5c]
mov dword [edi + 0x3890], eax
add eax, 0x14
mov dword [edi + 0x3804], eax
mov dword [edi + 0x3808], eax
call fcn.1002df10
lea ecx, [ebp - 0x5c]
mov esi, eax
call fcn.1004dbf0
mov dword [ebp - 0x18], eax
cmp esi, eax
je 0x10069a4a
lea eax, [edi + 0x387c]
mov edi, dword [ebp - 0x18]
mov dword [ebp - 0x20], eax
push esi
mov ecx, eax
call fcn.10053fe0
mov eax, dword [ebp - 0x20]
add esi, 0x18
cmp esi, edi
jne 0x10069a35
mov edi, dword [ebp - 0x24]
lea ecx, [edi + 0x387c]
call fcn.100452d0
test eax, eax
je 0x10069a63
mov dword [edi + 0x388c], 0
lea ecx, [ebp - 0x80]
call fcn.1002e790
lea ecx, [ebp - 0x40]
call fcn.1002e790
lea ecx, [ebp - 0x5c]
call fcn.1002dbc0
push fcn.1002e790
push 6
push 0x18
lea eax, [ebp - 0x158]
mov dword [ebp - 4], 0xffffffff
push eax
call fcn.1010e1b6
lea eax, [ebp - 0x18]
mov dword [ebp - 0x18], 0x10032f80
lea ecx, [edi + 0x384c]
push eax
call fcn.10044b40
lea eax, [edi + 0x37f4]
mov dword [ebp - 0x18], eax
lea ecx, [edi + 0x18]
mov dword [edi + 0x380c], 1
imul eax, dword [edi + 0x380c], 0xeb
add eax, 0x14
mov dword [edi + 0x37f8], eax
mov dword [edi + 0x3800], 0xaf
mov eax, dword [edi + 0x2c]
mov dword [edi + 0x3810], eax
lea eax, [ebp - 0x18]
push eax
call fcn.10044b40
push str.weapon_chams_col
lea ecx, [ebp - 0x40]
lea esi, [edi + 0x3894]
call fcn.1002e7e0
push str.weapon_color
lea ecx, [ebp - 0x80]
mov dword [ebp - 4], 0x183
call fcn.1002e7e0
lea eax, [ebp - 0x80]
mov byte [ebp - 4], 0x84
push eax
lea ecx, [edi + 0x3904]
call fcn.10045420
lea eax, [ebp - 0x40]
push eax
lea ecx, [edi + 0x38cc]
call fcn.10045420
lea ecx, [ebp - 0x80]
mov dword [edi + 0x391c], 0xff000000
mov dword [edi + 0x3934], 0
call fcn.1002e790
lea ecx, [ebp - 0x40]
mov dword [ebp - 4], 0xffffffff
call fcn.1002e790
lea eax, [ebp - 0x18]
mov dword [ebp - 0x18], 0x10032f80
lea ecx, [esi + 0x58]
push eax
call fcn.10044b40
mov dword [ebp - 0x18], esi
lea ecx, [edi + 0x18]
mov dword [edi + 0x38ac], 1
imul eax, dword [edi + 0x38ac], 0xeb
add eax, 0x14
mov dword [edi + 0x3898], eax
mov dword [edi + 0x38a0], 0xaf
mov eax, dword [edi + 0x2c]
mov dword [edi + 0x38b0], eax
lea eax, [ebp - 0x18]
push eax
call fcn.10044b40
push 0x1012c868
lea ecx, [ebp - 0x40]
lea esi, [edi + 0x3a0c]
call fcn.10086c40
mov dword [ebp - 4], 0x185
push str.weapon_chams_blend
lea ecx, [ebp - 0x80]
call fcn.1002e7e0
push 0x101298c6
lea ecx, [ebp - 0x68]
mov byte [ebp - 4], 0x86
call fcn.1002e7e0
lea eax, [ebp - 0x80]
mov byte [ebp - 4], 0x87
push eax
lea ecx, [edi + 0x3a44]
call fcn.10045420
lea eax, [ebp - 0x40]
mov byte [edi + 0x3a75], 0
push eax
lea ecx, [edi + 0x3aac]
mov dword [edi + 0x3ac4], 0
mov dword [edi + 0x3a1c], 7
mov dword [edi + 0x3a20], 7
mov dword [edi + 0x3a80], 0x3f800000
mov dword [edi + 0x3a84], 0x437f0000
mov dword [edi + 0x3a7c], 0x437f0000
mov dword [edi + 0x3a90], 0
mov dword [edi + 0x3a88], 0x3f800000
call fcn.10086c10
lea ecx, [ebp - 0x68]
call fcn.1002e790
lea ecx, [ebp - 0x80]
call fcn.1002e790
lea ecx, [ebp - 0x40]
mov dword [ebp - 4], 0xffffffff
call fcn.100542a0
lea eax, [ebp - 0x18]
mov dword [ebp - 0x18], 0x10032f80
lea ecx, [esi + 0x58]
push eax
call fcn.10044b40
mov dword [ebp - 0x18], esi
lea ecx, [edi + 0x18]
mov dword [edi + 0x3a24], 1
imul eax, dword [edi + 0x3a24], 0xeb
add eax, 0x14
mov dword [edi + 0x3a10], eax
mov dword [edi + 0x3a18], 0xaf
mov eax, dword [edi + 0x2c]
mov dword [edi + 0x3a28], eax
lea eax, [ebp - 0x18]
push eax
call fcn.10044b40
push str.weapon_chams_col2
lea ecx, [ebp - 0x40]
lea esi, [edi + 0x3950]
call fcn.1002e7e0
push str.weapon_color_2
lea ecx, [ebp - 0x80]
mov dword [ebp - 4], 0x188
call fcn.1002e7e0
lea eax, [ebp - 0x80]
mov byte [ebp - 4], 0x89
push eax
lea ecx, [edi + 0x39c0]
call fcn.10045420
lea eax, [ebp - 0x40]
push eax
lea ecx, [edi + 0x3988]
call fcn.10045420
lea ecx, [ebp - 0x80]
mov dword [edi + 0x39d8], 0xffffffff
mov dword [edi + 0x39f0], 0
call fcn.1002e790
lea ecx, [ebp - 0x40]
mov dword [ebp - 4], 0xffffffff
call fcn.1002e790
lea eax, [ebp - 0x18]
mov dword [ebp - 0x18], 0x10032f80
lea ecx, [esi + 0x58]
push eax
call fcn.10044b40
mov dword [ebp - 0x18], esi
lea ecx, [edi + 0x18]
mov dword [edi + 0x3968], 1
imul eax, dword [edi + 0x3968], 0xeb
add eax, 0x14
mov dword [edi + 0x3954], eax
mov dword [edi + 0x395c], 0xaf
mov eax, dword [edi + 0x2c]
mov dword [edi + 0x396c], eax
lea eax, [ebp - 0x18]
push eax
call fcn.10044b40
push 0x1012c868
lea ecx, [ebp - 0x40]
lea esi, [edi + 0x3ac8]
call fcn.10086c40
push str.weapon_chams_blend2
lea ecx, [ebp - 0x80]
mov dword [ebp - 4], 0x18a
call fcn.1002e7e0
push 0x101298c6
lea ecx, [ebp - 0x68]
mov byte [ebp - 4], 0x8b
call fcn.1002e7e0
lea eax, [ebp - 0x80]
mov byte [ebp - 4], 0x8c
push eax
lea ecx, [edi + 0x3b00]
call fcn.10045420
lea eax, [ebp - 0x40]
mov byte [edi + 0x3b31], 0
push eax
lea ecx, [edi + 0x3b68]
mov dword [edi + 0x3b80], 0
mov dword [edi + 0x3ad8], 7
mov dword [edi + 0x3adc], 7
mov dword [edi + 0x3b3c], 0x3f800000
mov dword [edi + 0x3b40], 0x437f0000
mov dword [edi + 0x3b38], 0x437f0000
mov dword [edi + 0x3b4c], 0
mov dword [edi + 0x3b44], 0x3f800000
call fcn.10086c10
lea ecx, [ebp - 0x68]
call fcn.1002e790
lea ecx, [ebp - 0x80]
call fcn.1002e790
lea ecx, [ebp - 0x40]
mov dword [ebp - 4], 0xffffffff
call fcn.100542a0
lea eax, [ebp - 0x18]
mov dword [ebp - 0x18], 0x10032f80
push eax
lea ecx, [edi + 0x3b20]
call fcn.10044b40
mov dword [ebp - 0x20], esi
lea ecx, [edi + 0x18]
mov dword [esi + 0x18], 1
imul eax, dword [esi + 0x18], 0xeb
add eax, 0x14
mov dword [esi + 4], eax
mov dword [esi + 0xc], 0xaf
mov eax, dword [edi + 0x2c]
mov dword [esi + 0x1c], eax
lea eax, [ebp - 0x20]
push eax
call fcn.10044b40
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.1010e0bc
mov esp, ebp
pop ebp
mov esp, ebx
pop ebx
ret