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

Disassembly:
push ebx
mov ebx, esp
sub esp, 8
and esp, 0xfffffff8
add esp, 4
push ebp
mov ebp, dword [ebx + 4]
mov dword [esp + 4], ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x100a4a17
mov eax, dword fs:[0]
push eax
push ebx
sub esp, 0x1b8
mov eax, dword [0x100bd364]
xor eax, ebp
mov dword [ebp - 0x14], eax
push esi
push edi
push eax
lea eax, [ebp - 0xc]
mov dword fs:[0], eax
mov edi, ecx
mov dword [ebp - 0x34], edi
push dword [ebp - 0x24]
lea ecx, [ebp - 0x80]
call fcn.10022900
push 7
push str.players
lea ecx, [ebp - 0x80]
mov dword [ebp - 4], 0
call fcn.10022920
lea eax, [ebp - 0x80]
mov dword [ebp - 4], 1
push eax
mov ecx, edi
call fcn.1003be50
lea ecx, [ebp - 0x80]
call fcn.10022100
push dword [ebp - 0x24]
lea ecx, [ebp - 0xb0]
call fcn.10022900
push 5
push str.enemy
lea ecx, [ebp - 0xb0]
mov dword [ebp - 4], 2
call fcn.10022920
mov dword [ebp - 4], 3
lea ecx, [ebp - 0x98]
push dword [ebp - 0x24]
call fcn.10022900
push 8
push str.friendly
lea ecx, [ebp - 0x98]
mov byte [ebp - 4], 4
call fcn.10022920
lea eax, [ebp - 0x2d]
mov dword [ebp - 4], 5
push eax
lea ecx, [ebp - 0x80]
push ecx
lea edx, [ebp - 0xb0]
push edx
lea ecx, [ebp - 0xc8]
call fcn.10070920
push dword [ebp - 0x24]
lea ecx, [ebp - 0x60]
call fcn.10022900
push 3
push 0x100aeea8
lea ecx, [ebp - 0x60]
mov byte [ebp - 4], 7
call fcn.10022920
push dword [ebp - 0x24]
lea ecx, [ebp - 0x80]
call fcn.10022900
push 5
push str.boxes
lea ecx, [ebp - 0x80]
mov byte [ebp - 4], 9
call fcn.10022920
lea ecx, [ebp - 0x48]
call fcn.10022cd0
lea eax, [ebp - 0x60]
mov byte [ebp - 4], 0xb
push eax
lea ecx, [edi + 0x68]
call fcn.1003be50
lea eax, [ebp - 0x80]
mov byte [edi + 0x99], 1
push eax
lea ecx, [edi + 0xa0]
call fcn.1003be50
mov esi, dword [ebp - 0xc8]
xor eax, eax
cmp byte [edi + 0x99], al
mov ecx, 0xf
cmovne eax, ecx
mov dword [edi + 0xd4], eax
add eax, 0x14
mov dword [edi + 0x40], eax
mov dword [edi + 0x44], eax
mov eax, dword [ebp - 0xc4]
mov dword [ebp - 0x18], eax
cmp esi, eax
je 0x1005127b
lea eax, [edi + 0xb8]
mov edi, eax
push esi
mov ecx, edi
call fcn.100435c0
add esi, 0x18
cmp esi, dword [ebp - 0x18]
jne 0x10051268
mov edi, dword [ebp - 0x34]
mov ecx, dword [ebp - 0x44]
mov eax, dword [ebp - 0x48]
mov dword [ebp - 0x2c], ecx
mov dword [ebp - 0x18], eax
cmp eax, ecx
je 0x1005133d
lea ecx, [edi + 0xc8]
mov eax, dword [eax]
mov dword [ebp - 0x1c], eax
lea eax, [ebp - 0x24]
push eax
call fcn.10021760
lea ecx, [edi + 0xc8]
mov esi, dword [eax]
lea eax, [ebp - 0xcc]
push eax
call fcn.10021770
push esi
lea edx, [ebp - 0x1c]
lea ecx, [ebp - 0xd0]
push dword [eax]
call fcn.100226d0
add esp, 8
lea ecx, [edi + 0xc8]
mov esi, eax
lea eax, [ebp - 0x64]
push eax
call fcn.10021760
mov ecx, dword [edi + 0xbc]
sub ecx, dword [edi + 0xb8]
mov esi, dword [esi]
mov eax, dword [eax]
mov dword [ebp - 0x28], eax
mov eax, 0x2aaaaaab
imul ecx
sar edx, 2
mov eax, edx
shr eax, 0x1f
add eax, edx
cmp dword [ebp - 0x1c], eax
jae 0x10051314
lea eax, [ebp - 0x1c]
push eax
lea ecx, [edi + 0xc8]
call fcn.100378a0
cmp esi, dword [ebp - 0x28]
jne 0x10051325
mov eax, dword [edi + 0x94]
test eax, eax
je 0x10051325
call eax
mov eax, dword [ebp - 0x18]
lea ecx, [edi + 0xc8]
add eax, 4
mov dword [ebp - 0x18], eax
cmp eax, dword [ebp - 0x2c]
jne 0x10051295
lea ecx, [ebp - 0x48]
call fcn.10021780
lea ecx, [ebp - 0x80]
call fcn.10022100
lea ecx, [ebp - 0x60]
call fcn.10022100
lea ecx, [ebp - 0xc8]
call fcn.10043430
push fcn.10022100
push 2
push 0x18
lea eax, [ebp - 0xb0]
mov dword [ebp - 4], 0xffffffff
push eax
call fcn.1009dc72
lea eax, [edi + 0x30]
mov dword [ebp - 0x2c], eax
lea ecx, [ebp - 0x2c]
mov dword [edi + 0x48], 0
imul eax, dword [edi + 0x48], 0xeb
push ecx
add eax, 0x14
mov dword [edi + 0x34], eax
mov dword [edi + 0x3c], 0xaf
mov eax, dword [edi + 0x2c]
mov dword [edi + 0x4c], eax
lea eax, [edi + 0x18]
mov ecx, eax
mov dword [ebp - 0x1c], eax
call fcn.10071530
push dword [ebp - 0x64]
mov esi, dword [0x100ad16c]
lea ecx, [ebp - 0x80]
add edi, 0xd8
call fcn.10022900
push 9
push str.box_enemy
lea ecx, [ebp - 0x80]
mov dword [ebp - 4], 0xc
call fcn.10022920
mov dword [ebp - 4], 0xd
lea ecx, [ebp - 0x60]
push dword [ebp - 0x64]
call fcn.10022900
push 0xf
push str.box_enemy_color
lea ecx, [ebp - 0x60]
mov byte [ebp - 4], 0xe
call fcn.10022920
mov ecx, dword [ebp - 0x34]
lea eax, [ebp - 0x60]
push eax
add ecx, 0x148
mov byte [ebp - 4], 0xf
call fcn.1003be50
mov ecx, dword [ebp - 0x34]
lea eax, [ebp - 0x80]
push eax
lea ecx, [ecx + 0x110]
call fcn.1003be50
mov eax, dword [ebp - 0x34]
lea ecx, [ebp - 0x60]
mov dword [eax + 0x160], esi
mov dword [eax + 0x174], 0
call fcn.10022100
lea ecx, [ebp - 0x80]
mov dword [ebp - 4], 0xffffffff
call fcn.10022100
mov dword [ebp - 0x2c], edi
mov dword [edi + 0x18], 0
imul eax, dword [edi + 0x18], 0xeb
add eax, 0x14
mov dword [edi + 4], eax
mov eax, dword [ebp - 0x34]
mov dword [edi + 0xc], 0xaf
mov eax, dword [eax + 0x2c]
mov dword [edi + 0x1c], eax
mov ecx, dword [ebp - 0x1c]
lea eax, [ebp - 0x2c]
push eax
call fcn.10071530
mov edi, dword [ebp - 0x34]
lea ecx, [ebp - 0x80]
push dword [ebp - 0x64]
lea esi, [edi + 0x188]
call fcn.10022900
push 7
push str.dormant
lea ecx, [ebp - 0x80]
mov dword [ebp - 4], 0x10
call fcn.10022920
mov dword [ebp - 4], 0x11
lea ecx, [ebp - 0x60]
push dword [ebp - 0x64]
call fcn.10022900
push 0xf
push str.dormant_enemies
lea ecx, [ebp - 0x60]
mov byte [ebp - 4], 0x12
call fcn.10022920
lea eax, [ebp - 0x80]
mov byte [ebp - 4], 0x13
push eax
lea ecx, [edi + 0x1c0]
call fcn.1003be50
lea eax, [ebp - 0x60]
mov byte [edi + 0x1f1], 1
push eax
lea ecx, [edi + 0x1f8]
call fcn.1003be50
lea ecx, [ebp - 0x60]
mov byte [edi + 0x1f4], 0
call fcn.10022100
lea ecx, [ebp - 0x80]
mov dword [ebp - 4], 0xffffffff
call fcn.10022100
mov dword [ebp - 0x2c], 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 - 0x2c]
push eax
call fcn.10071530
push dword [ebp - 0x64]
lea ecx, [ebp - 0x80]
lea esi, [edi + 0x210]
call fcn.10022900
push 9
push str.offscreen
lea ecx, [ebp - 0x80]
mov dword [ebp - 4], 0x14
call fcn.10022920
mov dword [ebp - 4], 0x15
lea ecx, [ebp - 0x60]
push dword [ebp - 0x64]
call fcn.10022900
push 0x13
push str.enemy_offscreen_esp
lea ecx, [ebp - 0x60]
mov byte [ebp - 4], 0x16
call fcn.10022920
lea eax, [ebp - 0x80]
mov byte [ebp - 4], 0x17
push eax
lea ecx, [edi + 0x248]
call fcn.1003be50
lea eax, [ebp - 0x60]
mov byte [edi + 0x279], 1
push eax
lea ecx, [edi + 0x280]
call fcn.1003be50
lea ecx, [ebp - 0x60]
mov byte [edi + 0x27c], 0
call fcn.10022100
lea ecx, [ebp - 0x80]
mov dword [ebp - 4], 0xffffffff
call fcn.10022100
mov dword [ebp - 0x2c], 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 - 0x2c]
push eax
call fcn.10071530
push dword [ebp - 0x64]
mov esi, dword [0x100ad16c]
lea ecx, [ebp - 0x80]
add edi, 0x298
call fcn.10022900
push 0xf
push str.offscreen_color
lea ecx, [ebp - 0x80]
mov dword [ebp - 4], 0x18
call fcn.10022920
mov dword [ebp - 4], 0x19
lea ecx, [ebp - 0x60]
push dword [ebp - 0x64]
call fcn.10022900
push 0x13
push str.offscreen_esp_color
lea ecx, [ebp - 0x60]
mov byte [ebp - 4], 0x1a
call fcn.10022920
mov ecx, dword [ebp - 0x34]
lea eax, [ebp - 0x60]
push eax
mov byte [ebp - 4], 0x1b
lea ecx, [ecx + 0x308]
call fcn.1003be50
mov ecx, dword [ebp - 0x34]
lea eax, [ebp - 0x80]
push eax
lea ecx, [ecx + 0x2d0]
call fcn.1003be50
mov eax, dword [ebp - 0x34]
lea ecx, [ebp - 0x60]
mov dword [eax + 0x320], esi
mov dword [eax + 0x334], 0
call fcn.10022100
lea ecx, [ebp - 0x80]
mov dword [ebp - 4], 0xffffffff
call fcn.10022100
mov ecx, dword [ebp - 0x1c]
mov dword [ebp - 0x2c], edi
mov dword [edi + 0x18], 0
imul eax, dword [edi + 0x18], 0xeb
add eax, 0x14
mov dword [edi + 4], eax
mov eax, dword [ebp - 0x34]
mov dword [edi + 0xc], 0xaf
mov eax, dword [eax + 0x2c]
mov dword [edi + 0x1c], eax
lea eax, [ebp - 0x2c]
push eax
call fcn.10071530
mov edi, dword [ebp - 0x34]
push dword [ebp - 0x64]
lea ecx, [ebp - 0x104]
call fcn.10022900
push 5
push str.enemy
lea ecx, [ebp - 0x104]
mov dword [ebp - 4], 0x1c
call fcn.10022920
mov dword [ebp - 4], 0x1d
lea ecx, [ebp - 0xec]
push dword [ebp - 0x64]
call fcn.10022900
push 8
push str.friendly
lea ecx, [ebp - 0xec]
mov byte [ebp - 4], 0x1e
call fcn.10022920
lea eax, [ebp - 0x2d]
mov dword [ebp - 4], 0x1f
push eax
lea ecx, [ebp - 0xd4]
push ecx
lea edx, [ebp - 0x104]
push edx
lea ecx, [ebp - 0x74]
call fcn.10070920
push dword [ebp - 0x64]
lea ecx, [ebp - 0x98]
call fcn.10022900
push 4
push str.name
lea ecx, [ebp - 0x98]
mov byte [ebp - 4], 0x21
call fcn.10022920
push dword [ebp - 0x64]
lea ecx, [ebp - 0x60]
call fcn.10022900
push 4
push str.name
lea ecx, [ebp - 0x60]
mov byte [ebp - 4], 0x23
call fcn.10022920
lea ecx, [ebp - 0xc8]
call fcn.10022cd0
lea eax, [ebp - 0x98]
mov byte [ebp - 4], 0x25
push eax
lea ecx, [edi + 0x380]
call fcn.1003be50
lea eax, [ebp - 0x60]
mov byte [edi + 0x3b1], 1
push eax
lea ecx, [edi + 0x3b8]
call fcn.1003be50
mov esi, dword [ebp - 0x74]
xor eax, eax
cmp byte [edi + 0x3b1], al
mov ecx, 0xf
cmovne eax, ecx
mov dword [edi + 0x3ec], eax
add eax, 0x14
mov dword [edi + 0x358], eax
mov dword [edi + 0x35c], eax
mov eax, dword [ebp - 0x70]
mov dword [ebp - 0x28], eax
cmp esi, eax
je 0x10051827
lea eax, [edi + 0x3d0]
mov edi, eax
push esi
mov ecx, edi
call fcn.100435c0
add esi, 0x18
cmp esi, dword [ebp - 0x28]
jne 0x10051814
mov edi, dword [ebp - 0x34]
mov ecx, dword [ebp - 0xc4]
mov eax, dword [ebp - 0xc8]
mov dword [ebp - 0x24], ecx
mov dword [ebp - 0x28], eax
cmp eax, ecx
je 0x100518ef
lea ecx, [edi + 0x3e0]
mov eax, dword [eax]
mov dword [ebp - 0x18], eax
lea eax, [ebp - 0x64]
push eax
call fcn.10021760
lea ecx, [edi + 0x3e0]
mov esi, dword [eax]
lea eax, [ebp - 0xd0]
push eax
call fcn.10021770
push esi
lea edx, [ebp - 0x18]
lea ecx, [ebp - 0xcc]
push dword [eax]
call fcn.100226d0
add esp, 8
lea ecx, [edi + 0x3e0]
mov esi, eax
lea eax, [ebp - 0x40]
push eax
call fcn.10021760
mov ecx, dword [edi + 0x3d4]
sub ecx, dword [edi + 0x3d0]
mov esi, dword [esi]
mov eax, dword [eax]
mov dword [ebp - 0x2c], eax
mov eax, 0x2aaaaaab
imul ecx
sar edx, 2
mov eax, edx
shr eax, 0x1f
add eax, edx
cmp dword [ebp - 0x18], eax
jae 0x100518c6
lea eax, [ebp - 0x18]
push eax
lea ecx, [edi + 0x3e0]
call fcn.100378a0
cmp esi, dword [ebp - 0x2c]
jne 0x100518d7
mov eax, dword [edi + 0x3ac]
test eax, eax
je 0x100518d7
call eax
mov eax, dword [ebp - 0x28]
lea ecx, [edi + 0x3e0]
add eax, 4
mov dword [ebp - 0x28], eax
cmp eax, dword [ebp - 0x24]
jne 0x10051847
lea ecx, [ebp - 0xc8]
call fcn.10021780
lea ecx, [ebp - 0x60]
call fcn.10022100
lea ecx, [ebp - 0x98]
call fcn.10022100
lea ecx, [ebp - 0x74]
call fcn.10043430
push fcn.10022100
push 2
push 0x18
lea eax, [ebp - 0x104]
mov dword [ebp - 4], 0xffffffff
push eax
call fcn.1009dc72
lea eax, [edi + 0x348]
mov dword [ebp - 0x24], eax
lea ecx, [edi + 0x18]
mov dword [edi + 0x360], 0
imul eax, dword [edi + 0x360], 0xeb
add eax, 0x14
mov dword [edi + 0x34c], eax
mov dword [edi + 0x354], 0xaf
mov eax, dword [edi + 0x2c]
mov dword [edi + 0x364], eax
lea eax, [ebp - 0x24]
push eax
call fcn.10071530
push dword [ebp - 0x40]
mov esi, dword [0x100ad16c]
lea ecx, [ebp - 0x60]
add edi, 0x3f0
call fcn.10022900
push 0xa
push str.name_color
lea ecx, [ebp - 0x60]
mov dword [ebp - 4], 0x26
call fcn.10022920
mov dword [ebp - 4], 0x27
lea ecx, [ebp - 0x98]
push dword [ebp - 0x40]
call fcn.10022900
push 0xa
push 0x100aef40
lea ecx, [ebp - 0x98]
mov byte [ebp - 4], 0x28
call fcn.10022920
mov ecx, dword [ebp - 0x34]
lea eax, [ebp - 0x98]
push eax
mov byte [ebp - 4], 0x29
lea ecx, [ecx + 0x460]
call fcn.1003be50
mov ecx, dword [ebp - 0x34]
lea eax, [ebp - 0x60]
push eax
lea ecx, [ecx + 0x428]
call fcn.1003be50
mov eax, dword [ebp - 0x34]
lea ecx, [ebp - 0x98]
mov dword [eax + 0x478], esi
mov dword [eax + 0x48c], 0
call fcn.10022100
lea ecx, [ebp - 0x60]
mov dword [ebp - 4], 0xffffffff
call fcn.10022100
mov dword [ebp - 0x24], edi
mov dword [edi + 0x18], 0
imul eax, dword [edi + 0x18], 0xeb
add eax, 0x14
mov dword [edi + 4], eax
mov eax, dword [ebp - 0x34]
mov dword [edi + 0xc], 0xaf
mov eax, dword [eax + 0x2c]
mov dword [edi + 0x1c], eax
lea eax, [ebp - 0x24]
push eax
mov ecx, dword [ebp - 0x1c]
call fcn.10071530
mov edi, dword [ebp - 0x34]
lea ecx, [ebp - 0x60]
push dword [ebp - 0x40]
lea esi, [edi + 0x4a0]
call fcn.10022900
push 6
push str.health
lea ecx, [ebp - 0x60]
mov dword [ebp - 4], 0x2a
call fcn.10022920
mov dword [ebp - 4], 0x2b
lea ecx, [ebp - 0x98]
push dword [ebp - 0x40]
call fcn.10022900
push 6
push str.health
lea ecx, [ebp - 0x98]
mov byte [ebp - 4], 0x2c
call fcn.10022920
lea eax, [ebp - 0x60]
mov byte [ebp - 4], 0x2d
push eax
lea ecx, [edi + 0x4d8]
call fcn.1003be50
lea eax, [ebp - 0x98]
mov byte [edi + 0x509], 1
push eax
lea ecx, [edi + 0x510]
call fcn.1003be50
lea ecx, [ebp - 0x98]
mov byte [edi + 0x50c], 0
call fcn.10022100
lea ecx, [ebp - 0x60]
mov dword [ebp - 4], 0xffffffff
call fcn.10022100
mov dword [ebp - 0x24], 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 eax, [ebp - 0x24]
lea esi, [edi + 0x18]
push eax
mov ecx, esi
call fcn.10071530
push dword [ebp - 0x40]
lea ecx, [ebp - 0x104]
call fcn.10022900
push 6
push str.normal
lea ecx, [ebp - 0x104]
mov dword [ebp - 4], 0x2e
call fcn.10022920
mov dword [ebp - 4], 0x2f
lea ecx, [ebp - 0xec]
push dword [ebp - 0x40]
call fcn.10022900
push 6
push str.custom
lea ecx, [ebp - 0xec]
mov byte [ebp - 4], 0x30
call fcn.10022920
lea eax, [ebp - 0x2d]
mov dword [ebp - 4], 0x31
lea ecx, [ebp - 0xd4]
push eax
lea edx, [ebp - 0x104]
push ecx
push edx
lea ecx, [ebp - 0x74]
call fcn.10070920
push dword [ebp - 0x40]
lea ecx, [ebp - 0x60]
call fcn.10022900
push 0xc
push 0x100aef58
lea ecx, [ebp - 0x60]
mov byte [ebp - 4], 0x33
call fcn.10022920
push dword [ebp - 0x40]
lea ecx, [ebp - 0x98]
call fcn.10022900
push 0xc
push str.health_style
lea ecx, [ebp - 0x98]
mov byte [ebp - 4], 0x35
call fcn.10022920
lea eax, [ebp - 0x60]
mov byte [ebp - 4], 0x36
push eax
lea ecx, [edi + 0x560]
call fcn.1003be50
lea eax, [ebp - 0x98]
mov byte [edi + 0x591], 1
push eax
lea ecx, [edi + 0x598]
call fcn.1003be50
xor eax, eax
mov ecx, 0xf
cmp byte [edi + 0x591], al
cmovne eax, ecx
mov ecx, dword [ebp - 0x70]
mov dword [edi + 0x5c4], eax
add eax, 0x14
mov dword [edi + 0x538], eax
mov dword [edi + 0x53c], eax
mov eax, dword [ebp - 0x74]
cmp eax, ecx
mov dword [ebp - 0x24], eax
lea eax, [edi + 0x5b0]
mov dword [ebp - 0x28], ecx
je 0x10051c6c
mov esi, dword [ebp - 0x24]
mov edi, eax
nop
push esi
mov ecx, edi
call fcn.100435c0
add esi, 0x18
cmp esi, dword [ebp - 0x28]
jne 0x10051c50
mov edi, dword [ebp - 0x34]
lea esi, [edi + 0x18]
lea eax, [edi + 0x5b0]
mov ecx, dword [eax + 4]
sub ecx, dword [eax]
mov eax, 0x2aaaaaab
imul ecx
sar edx, 2
mov eax, edx
shr eax, 0x1f
add eax, edx
je 0x10051c8e
mov dword [edi + 0x5c0], 0
lea ecx, [ebp - 0x98]
call fcn.10022100
lea ecx, [ebp - 0x60]
call fcn.10022100
lea ecx, [ebp - 0x74]
call fcn.10043430
push fcn.10022100
push 2
push 0x18
lea eax, [ebp - 0x104]
mov dword [ebp - 4], 0xffffffff
push eax
call fcn.1009dc72
lea eax, [ebp - 0x24]
mov dword [ebp - 0x24], 0x10025c90
lea ecx, [edi + 0x580]
push eax
call fcn.10071530
lea eax, [edi + 0x528]
mov ecx, esi
mov dword [ebp - 0x24], eax
mov dword [edi + 0x540], 0
imul eax, dword [edi + 0x540], 0xeb
add eax, 0x14
mov dword [edi + 0x52c], eax
mov dword [edi + 0x534], 0xaf
mov eax, dword [edi + 0x2c]
mov dword [edi + 0x544], eax
lea eax, [ebp - 0x24]
push eax
call fcn.10071530
push dword [ebp - 0x40]
lea ecx, [ebp - 0x60]
lea esi, [edi + 0x5c8]
call fcn.10022900
push 8
push str.health_1
lea ecx, [ebp - 0x60]
mov dword [ebp - 4], 0x37
call fcn.10022920
mov dword [ebp - 4], 0x38
lea ecx, [ebp - 0x98]
push dword [ebp - 0x40]
call fcn.10022900
push 0xc
push str.health_color
lea ecx, [ebp - 0x98]
mov byte [ebp - 4], 0x39
call fcn.10022920
lea eax, [ebp - 0x98]
mov byte [ebp - 4], 0x3a
push eax
lea ecx, [edi + 0x638]
call fcn.1003be50
lea eax, [ebp - 0x60]
push eax
lea ecx, [edi + 0x600]
call fcn.1003be50
lea ecx, [ebp - 0x98]
mov dword [edi + 0x650], 0xff783c84
mov dword [edi + 0x664], 0
call fcn.10022100
lea ecx, [ebp - 0x60]
mov dword [ebp - 4], 0xffffffff
call fcn.10022100
lea eax, [ebp - 0x24]
mov dword [ebp - 0x24], 0x10025ca0
lea ecx, [esi + 0x58]
push eax
call fcn.10071530
mov dword [ebp - 0x24], esi
mov dword [edi + 0x5e0], 0
imul eax, dword [edi + 0x5e0], 0xeb
add eax, 0x14
mov dword [edi + 0x5cc], eax
mov dword [edi + 0x5d4], 0xaf
mov eax, dword [edi + 0x2c]
mov dword [edi + 0x5e4], eax
lea ecx, [edi + 0x18]
lea eax, [ebp - 0x24]
push eax
call fcn.10071530
push dword [ebp - 0x40]
lea ecx, [ebp - 0x1c8]
call fcn.10022900
push 5
push str.money
lea ecx, [ebp - 0x1c8]
mov dword [ebp - 4], 0x3b
call fcn.10022920
mov dword [ebp - 4], 0x3c
lea ecx, [ebp - 0x1b0]
push dword [ebp - 0x40]
call fcn.10022900
push 5
push str.armor
lea ecx, [ebp - 0x1b0]
mov byte [ebp - 4], 0x3d
call fcn.10022920
push dword [ebp - 0x40]
lea ecx, [ebp - 0x198]
call fcn.10022900
push 6
push str.scoped
lea ecx, [ebp - 0x198]
mov byte [ebp - 4], 0x3f
call fcn.10022920
push dword [ebp - 0x40]
lea ecx, [ebp - 0x180]
call fcn.10022900
push 7
push str.flashed
lea ecx, [ebp - 0x180]
mov byte [ebp - 4], 0x41
call fcn.10022920
push dword [ebp - 0x40]
lea ecx, [ebp - 0x168]
call fcn.10022900
push 9
push str.reloading
lea ecx, [ebp - 0x168]
mov byte [ebp - 4], 0x43
call fcn.10022920
push dword [ebp - 0x40]
lea ecx, [ebp - 0x150]
call fcn.10022900
push 4
push str.bomb
lea ecx, [ebp - 0x150]
mov byte [ebp - 4], 0x45
call fcn.10022920
push dword [ebp - 0x40]
lea ecx, [ebp - 0x138]
call fcn.10022900
push 4
push str.fake
lea ecx, [ebp - 0x138]
mov byte [ebp - 4], 0x47
call fcn.10022920
push dword [ebp - 0x40]
lea ecx, [ebp - 0x120]
call fcn.10022900
mov byte [ebp - 4], 0x49
push 8
push str.resolver
lea ecx, [ebp - 0x120]
call fcn.10022920
lea eax, [ebp - 0x2d]
mov dword [ebp - 4], 0x4a
push eax
lea ecx, [ebp - 0x108]
push ecx
lea edx, [ebp - 0x1c8]
push edx
lea ecx, [ebp - 0xc8]
call fcn.10070920
push dword [ebp - 0x40]
lea ecx, [ebp - 0x60]
call fcn.10022900
push 0xb
push str.flags_enemy
lea ecx, [ebp - 0x60]
mov byte [ebp - 4], 0x4c
call fcn.10022920
push dword [ebp - 0x40]
lea ecx, [ebp - 0x98]
call fcn.10022900
push 0xb
push 0x100aefdc
lea ecx, [ebp - 0x98]
mov byte [ebp - 4], 0x4e
call fcn.10022920
lea ecx, [ebp - 0x78]
call fcn.10022cd0
lea eax, [ebp - 0x60]
mov byte [ebp - 4], 0x50
push eax
lea ecx, [edi + 0x760]
call fcn.1003be50
lea eax, [ebp - 0x98]
mov byte [edi + 0x791], 1
push eax
lea ecx, [edi + 0x798]
call fcn.1003be50
mov esi, dword [ebp - 0xc8]
xor eax, eax
cmp byte [edi + 0x791], al
mov ecx, 0xf
cmovne eax, ecx
mov dword [edi + 0x7cc], eax
add eax, 0x14
mov dword [edi + 0x738], eax
mov dword [edi + 0x73c], eax
mov eax, dword [ebp - 0xc4]
mov dword [ebp - 0x2c], eax
cmp esi, eax
je 0x10052033
lea eax, [edi + 0x7b0]
mov dword [ebp - 0x24], eax
mov edi, eax
nop dword [eax]
push esi
mov ecx, edi
call fcn.100435c0
add esi, 0x18
cmp esi, dword [ebp - 0x2c]
jne 0x10052020
mov edi, dword [ebp - 0x34]
mov ecx, dword [ebp - 0x74]
mov eax, dword [ebp - 0x78]
mov dword [ebp - 0x2c], ecx
mov dword [ebp - 0x28], eax
cmp eax, ecx
je 0x100520f8
lea ecx, [edi + 0x7c0]
nop dword [eax]
mov eax, dword [eax]
mov dword [ebp - 0x18], eax
lea eax, [ebp - 0x40]
push eax
call fcn.10021760
lea ecx, [edi + 0x7c0]
mov esi, dword [eax]
lea eax, [ebp - 0x64]
push eax
call fcn.10021770
push esi
lea edx, [ebp - 0x18]
lea ecx, [ebp - 0xd0]
push dword [eax]
call fcn.100226d0
add esp, 8
lea ecx, [edi + 0x7c0]
mov esi, eax
lea eax, [ebp - 0xcc]
push eax
call fcn.10021760
mov ecx, dword [edi + 0x7b4]
sub ecx, dword [edi + 0x7b0]
mov esi, dword [esi]
mov eax, dword [eax]
mov dword [ebp - 0x24], eax
mov eax, 0x2aaaaaab
imul ecx
sar edx, 2
mov eax, edx
shr eax, 0x1f
add eax, edx
cmp dword [ebp - 0x18], eax
jae 0x100520cf
lea eax, [ebp - 0x18]
push eax
lea ecx, [edi + 0x7c0]
call fcn.100378a0
cmp esi, dword [ebp - 0x24]
jne 0x100520e0
mov eax, dword [edi + 0x78c]
test eax, eax
je 0x100520e0
call eax
mov eax, dword [ebp - 0x28]
lea ecx, [edi + 0x7c0]
add eax, 4
mov dword [ebp - 0x28], eax
cmp eax, dword [ebp - 0x2c]
jne 0x10052050
lea ecx, [ebp - 0x78]
call fcn.10021780
lea ecx, [ebp - 0x98]
call fcn.10022100
lea ecx, [ebp - 0x60]
call fcn.10022100
lea ecx, [ebp - 0xc8]
call fcn.10043430
push fcn.10022100
push 8
push 0x18
lea eax, [ebp - 0x1c8]
mov dword [ebp - 4], 0xffffffff
push eax
call fcn.1009dc72
lea eax, [edi + 0x728]
mov dword [ebp - 0x24], eax
lea ecx, [edi + 0x18]
mov dword [edi + 0x740], 0
imul eax, dword [edi + 0x740], 0xeb
add eax, 0x14
mov dword [edi + 0x72c], eax
mov dword [edi + 0x734], 0xaf
mov eax, dword [edi + 0x2c]
mov dword [edi + 0x744], eax
lea eax, [ebp - 0x24]
push eax
call fcn.10071530
push dword [ebp - 0x40]
lea ecx, [ebp - 0x104]
call fcn.10022900
push 5
push str.enemy
lea ecx, [ebp - 0x104]
mov dword [ebp - 4], 0x51
call fcn.10022920
mov dword [ebp - 4], 0x52
lea ecx, [ebp - 0xec]
push dword [ebp - 0x40]
call fcn.10022900
push 8
push str.friendly
lea ecx, [ebp - 0xec]
mov byte [ebp - 4], 0x53
call fcn.10022920
lea eax, [ebp - 0x2d]
mov dword [ebp - 4], 0x54
push eax
lea ecx, [ebp - 0xd4]
push ecx
lea edx, [ebp - 0x104]
push edx
lea ecx, [ebp - 0xc8]
call fcn.10070920
push dword [ebp - 0x40]
lea ecx, [ebp - 0x60]
call fcn.10022900
push 6
push str.weapon
lea ecx, [ebp - 0x60]
mov byte [ebp - 4], 0x56
call fcn.10022920
push dword [ebp - 0x40]
lea ecx, [ebp - 0x98]
call fcn.10022900
push 6
push str.weapon
lea ecx, [ebp - 0x98]
mov byte [ebp - 4], 0x58
call fcn.10022920
lea ecx, [ebp - 0x78]
call fcn.10022cd0
lea eax, [ebp - 0x60]
mov byte [ebp - 4], 0x5a
push eax
lea ecx, [edi + 0x808]
call fcn.1003be50
lea eax, [ebp - 0x98]
mov byte [edi + 0x839], 1
push eax
lea ecx, [edi + 0x840]
call fcn.1003be50
mov esi, dword [ebp - 0xc8]
xor eax, eax
cmp byte [edi + 0x839], al
mov ecx, 0xf
cmovne eax, ecx
mov dword [edi + 0x874], eax
add eax, 0x14
mov dword [edi + 0x7e0], eax
mov dword [edi + 0x7e4], eax
mov eax, dword [ebp - 0xc4]
mov dword [ebp - 0x2c], eax
cmp esi, eax
je 0x100522c3
lea eax, [edi + 0x858]
mov dword [ebp - 0x24], eax
mov edi, eax
nop
push esi
mov ecx, edi
call fcn.100435c0
add esi, 0x18
cmp esi, dword [ebp - 0x2c]
jne 0x100522b0
mov edi, dword [ebp - 0x34]
mov ecx, dword [ebp - 0x74]
mov eax, dword [ebp - 0x78]
mov dword [ebp - 0x2c], ecx
mov dword [ebp - 0x28], eax
cmp eax, ecx
je 0x10052388
lea ecx, [edi + 0x868]
nop dword [eax]
mov eax, dword [eax]
mov dword [ebp - 0x18], eax
lea eax, [ebp - 0x40]
push eax
call fcn.10021760
lea ecx, [edi + 0x868]
mov esi, dword [eax]
lea eax, [ebp - 0x64]
push eax
call fcn.10021770
push esi
lea edx, [ebp - 0x18]
lea ecx, [ebp - 0xd0]
push dword [eax]
call fcn.100226d0
add esp, 8
lea ecx, [edi + 0x868]
mov esi, eax
lea eax, [ebp - 0xcc]
push eax
call fcn.10021760
mov ecx, dword [edi + 0x85c]
sub ecx, dword [edi + 0x858]
mov esi, dword [esi]
mov eax, dword [eax]
mov dword [ebp - 0x24], eax
mov eax, 0x2aaaaaab
imul ecx
sar edx, 2
mov eax, edx
shr eax, 0x1f
add eax, edx
cmp dword [ebp - 0x18], eax
jae 0x1005235f
lea eax, [ebp - 0x18]
push eax
lea ecx, [edi + 0x868]
call fcn.100378a0
cmp esi, dword [ebp - 0x24]
jne 0x10052370
mov eax, dword [edi + 0x834]
test eax, eax
je 0x10052370
call eax
mov eax, dword [ebp - 0x28]
lea ecx, [edi + 0x868]
add eax, 4
mov dword [ebp - 0x28], eax
cmp eax, dword [ebp - 0x2c]
jne 0x100522e0
lea ecx, [ebp - 0x78]
call fcn.10021780
lea ecx, [ebp - 0x98]
call fcn.10022100
lea ecx, [ebp - 0x60]
call fcn.10022100
lea ecx, [ebp - 0xc8]
call fcn.10043430
push fcn.10022100
push 2
push 0x18
lea eax, [ebp - 0x104]
mov dword [ebp - 4], 0xffffffff
push eax
call fcn.1009dc72
lea eax, [edi + 0x7d0]
mov dword [ebp - 0x24], eax
lea ecx, [edi + 0x18]
mov dword [edi + 0x7e8], 0
imul eax, dword [edi + 0x7e8], 0xeb
add eax, 0x14
mov dword [edi + 0x7d4], eax
mov dword [edi + 0x7dc], 0xaf
mov eax, dword [edi + 0x2c]
mov dword [edi + 0x7ec], eax
lea eax, [ebp - 0x24]
push eax
call fcn.10071530
push dword [ebp - 0x40]
lea ecx, [ebp - 0x104]
call fcn.10022900
push 4
push str.text
lea ecx, [ebp - 0x104]
mov dword [ebp - 4], 0x5b
call fcn.10022920
mov dword [ebp - 4], 0x5c
lea ecx, [ebp - 0xec]
push dword [ebp - 0x40]
call fcn.10022900
push 4
push str.icon
lea ecx, [ebp - 0xec]
mov byte [ebp - 4], 0x5d
call fcn.10022920
lea eax, [ebp - 0x2d]
mov dword [ebp - 4], 0x5e
push eax
lea ecx, [ebp - 0xd4]
push ecx
lea edx, [ebp - 0x104]
push edx
lea ecx, [ebp - 0xc8]
call fcn.10070920
push dword [ebp - 0x40]
lea ecx, [ebp - 0x98]
call fcn.10022900
push 0xb
push str.weapon_mode
lea ecx, [ebp - 0x98]
mov byte [ebp - 4], 0x60
call fcn.10022920
push dword [ebp - 0x40]
lea ecx, [ebp - 0x60]
call fcn.10022900
push 0
push 0x100abd7e
lea ecx, [ebp - 0x60]
mov byte [ebp - 4], 0x62
call fcn.10022920
lea ecx, [ebp - 0x78]
call fcn.10022cd0
lea eax, [ebp - 0x98]
mov byte [ebp - 4], 0x64
push eax
lea ecx, [edi + 0x8b0]
call fcn.1003be50
mov eax, dword [ebp - 0xc4]
mov esi, dword [ebp - 0xc8]
mov byte [edi + 0x8e1], 0
mov dword [edi + 0x91c], 0
mov dword [edi + 0x888], 0x14
mov dword [edi + 0x88c], 0x14
mov dword [ebp - 0x2c], eax
cmp esi, eax
je 0x1005253b
lea eax, [edi + 0x900]
mov dword [ebp - 0x24], eax
mov edi, eax
push esi
mov ecx, edi
call fcn.100435c0
add esi, 0x18
cmp esi, dword [ebp - 0x2c]
jne 0x10052528
mov edi, dword [ebp - 0x34]
mov ecx, dword [ebp - 0x74]
mov eax, dword [ebp - 0x78]
mov dword [ebp - 0x2c], ecx
mov dword [ebp - 0x28], eax
cmp eax, ecx
je 0x100525fd
lea ecx, [edi + 0x910]
mov eax, dword [eax]
mov dword [ebp - 0x18], eax
lea eax, [ebp - 0x40]
push eax
call fcn.10021760
lea ecx, [edi + 0x910]
mov esi, dword [eax]
lea eax, [ebp - 0x64]
push eax
call fcn.10021770
push esi
lea edx, [ebp - 0x18]
lea ecx, [ebp - 0xd0]
push dword [eax]
call fcn.100226d0
add esp, 8
lea ecx, [edi + 0x910]
mov esi, eax
lea eax, [ebp - 0xcc]
push eax
call fcn.10021760
mov ecx, dword [edi + 0x904]
sub ecx, dword [edi + 0x900]
mov esi, dword [esi]
mov eax, dword [eax]
mov dword [ebp - 0x24], eax
mov eax, 0x2aaaaaab
imul ecx
sar edx, 2
mov eax, edx
shr eax, 0x1f
add eax, edx
cmp dword [ebp - 0x18], eax
jae 0x100525d4
lea eax, [ebp - 0x18]
push eax
lea ecx, [edi + 0x910]
call fcn.100378a0
cmp esi, dword [ebp - 0x24]
jne 0x100525e5
mov eax, dword [edi + 0x8dc]
test eax, eax
je 0x100525e5
call eax
mov eax, dword [ebp - 0x28]
lea ecx, [edi + 0x910]
add eax, 4
mov dword [ebp - 0x28], eax
cmp eax, dword [ebp - 0x2c]
jne 0x10052555
lea ecx, [ebp - 0x78]
call fcn.10021780
lea ecx, [ebp - 0x60]
call fcn.10022100
lea ecx, [ebp - 0x98]
call fcn.10022100
lea ecx, [ebp - 0xc8]
call fcn.10043430
push fcn.10022100
push 2
push 0x18
lea eax, [ebp - 0x104]
mov dword [ebp - 4], 0xffffffff
push eax
call fcn.1009dc72
lea eax, [edi + 0x878]
mov dword [ebp - 0x24], eax
lea ecx, [edi + 0x18]
mov dword [edi + 0x890], 0
imul eax, dword [edi + 0x890], 0xeb
add eax, 0x14
mov dword [edi + 0x87c], eax
mov dword [edi + 0x884], 0xaf
mov eax, dword [edi + 0x2c]
mov dword [edi + 0x894], eax
lea eax, [ebp - 0x24]
push eax
call fcn.10071530
push dword [ebp - 0x40]
lea ecx, [ebp - 0x60]
lea esi, [edi + 0x9a8]
call fcn.10022900
push 8
push str.distance
lea ecx, [ebp - 0x60]
mov dword [ebp - 4], 0x65
call fcn.10022920
mov dword [ebp - 4], 0x66
lea ecx, [ebp - 0x98]
push dword [ebp - 0x40]
call fcn.10022900
push 8
push str.distance
lea ecx, [ebp - 0x98]
mov byte [ebp - 4], 0x67
call fcn.10022920
lea eax, [ebp - 0x60]
mov byte [ebp - 4], 0x68
push eax
lea ecx, [edi + 0x9e0]
call fcn.1003be50
lea eax, [ebp - 0x98]
mov byte [edi + 0xa11], 1
push eax
lea ecx, [edi + 0xa18]
call fcn.1003be50
lea ecx, [ebp - 0x98]
mov byte [edi + 0xa14], 0
call fcn.10022100
lea ecx, [ebp - 0x60]
mov dword [ebp - 4], 0xffffffff
call fcn.10022100
mov dword [ebp - 0x24], 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 - 0x24]
push eax
call fcn.10071530
push dword [ebp - 0x40]
lea esi, [edi + 0x920]
lea ecx, [ebp - 0x60]
call fcn.10022900
push 4
push str.ammo
lea ecx, [ebp - 0x60]
mov dword [ebp - 4], 0x69
call fcn.10022920
mov dword [ebp - 4], 0x6a
lea ecx, [ebp - 0x98]
push dword [ebp - 0x40]
call fcn.10022900
push 4
push str.ammo
lea ecx, [ebp - 0x98]
mov byte [ebp - 4], 0x6b
call fcn.10022920
lea eax, [ebp - 0x60]
mov byte [ebp - 4], 0x6c
push eax
lea ecx, [edi + 0x958]
call fcn.1003be50
lea eax, [ebp - 0x98]
mov byte [edi + 0x989], 1
push eax
lea ecx, [edi + 0x990]
call fcn.1003be50
lea ecx, [ebp - 0x98]
mov byte [edi + 0x98c], 0
call fcn.10022100
lea ecx, [ebp - 0x60]
mov dword [ebp - 4], 0xffffffff
call fcn.10022100
mov dword [ebp - 0x24], 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 - 0x24]
push eax
call fcn.10071530
push dword [ebp - 0x40]
mov esi, dword [0x100ad174]
lea ecx, [ebp - 0x60]
add edi, 0xa30
call fcn.10022900
push 0xa
push str.ammo_color
lea ecx, [ebp - 0x60]
mov dword [ebp - 4], 0x6d
call fcn.10022920
mov dword [ebp - 4], 0x6e
lea ecx, [ebp - 0x98]
push dword [ebp - 0x40]
call fcn.10022900
push 5
push str.color
lea ecx, [ebp - 0x98]
mov byte [ebp - 4], 0x6f
call fcn.10022920
mov ecx, dword [ebp - 0x34]
lea eax, [ebp - 0x98]
push eax
mov byte [ebp - 4], 0x70
lea ecx, [ecx + 0xaa0]
call fcn.1003be50
mov ecx, dword [ebp - 0x34]
lea eax, [ebp - 0x60]
push eax
lea ecx, [ecx + 0xa68]
call fcn.1003be50
mov eax, dword [ebp - 0x34]
lea ecx, [ebp - 0x98]
mov dword [eax + 0xab8], esi
mov dword [eax + 0xacc], 0
call fcn.10022100
lea ecx, [ebp - 0x60]
mov dword [ebp - 4], 0xffffffff
call fcn.10022100
mov ecx, dword [ebp - 0x1c]
mov dword [ebp - 0x24], edi
mov dword [edi + 0x18], 0
imul eax, dword [edi + 0x18], 0xeb
add eax, 0x14
mov dword [edi + 4], eax
mov eax, dword [ebp - 0x34]
mov dword [edi + 0xc], 0xaf
mov eax, dword [eax + 0x2c]
mov dword [edi + 0x1c], eax
lea eax, [ebp - 0x24]
push eax
call fcn.10071530
mov edi, dword [ebp - 0x34]
lea ecx, [ebp - 0x60]
push dword [ebp - 0x40]
lea esi, [edi + 0xae0]
call fcn.10022900
push 0xa
push 0x100af02c
lea ecx, [ebp - 0x60]
mov dword [ebp - 4], 0x71
call fcn.10022920
mov dword [ebp - 4], 0x72
lea ecx, [ebp - 0x98]
push dword [ebp - 0x40]
call fcn.10022900
push 0xa
push str.lby_update
lea ecx, [ebp - 0x98]
mov byte [ebp - 4], 0x73
call fcn.10022920
lea eax, [ebp - 0x60]
mov byte [ebp - 4], 0x74
push eax
lea ecx, [edi + 0xb18]
call fcn.1003be50
lea eax, [ebp - 0x98]
mov byte [edi + 0xb49], 1
push eax
lea ecx, [edi + 0xb50]
call fcn.1003be50
lea ecx, [ebp - 0x98]
mov byte [edi + 0xb4c], 0
call fcn.10022100
lea ecx, [ebp - 0x60]
mov dword [ebp - 4], 0xffffffff
call fcn.10022100
mov dword [ebp - 0x24], 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 - 0x24]
push eax
call fcn.10071530
push dword [ebp - 0x40]
mov esi, dword [0x100ad190]
lea ecx, [ebp - 0x60]
add edi, 0xb68
call fcn.10022900
push 0x10
mov dword [ebp - 4], 0x75
push str.lby_update_color
lea ecx, [ebp - 0x60]
call fcn.10022920
mov dword [ebp - 4], 0x76
lea ecx, [ebp - 0x98]
push dword [ebp - 0x40]
call fcn.10022900
push 5
push str.color
lea ecx, [ebp - 0x98]
mov byte [ebp - 4], 0x77
call fcn.10022920
mov ecx, dword [ebp - 0x34]
lea eax, [ebp - 0x98]
push eax
mov byte [ebp - 4], 0x78
lea ecx, [ecx + 0xbd8]
call fcn.1003be50
mov ecx, dword [ebp - 0x34]
lea eax, [ebp - 0x60]
push eax
lea ecx, [ecx + 0xba0]
call fcn.1003be50
mov eax, dword [ebp - 0x34]
lea ecx, [ebp - 0x98]
mov dword [eax + 0xbf0], esi
mov dword [eax + 0xc04], 0
call fcn.10022100
lea ecx, [ebp - 0x60]
mov dword [ebp - 4], 0xffffffff
call fcn.10022100
mov ecx, dword [ebp - 0x1c]
mov dword [ebp - 0x24], edi
mov dword [edi + 0x18], 0
imul eax, dword [edi + 0x18], 0xeb
add eax, 0x14
mov dword [edi + 4], eax
mov eax, dword [ebp - 0x34]
mov dword [edi + 0xc], 0xaf
mov eax, dword [eax + 0x2c]
mov dword [edi + 0x1c], eax
lea eax, [ebp - 0x24]
push eax
call fcn.10071530
push dword [ebp - 0x40]
mov edi, dword [ebp - 0x34]
lea ecx, [ebp - 0x1b0]
call fcn.10022900
push 4
push str.glow
lea ecx, [ebp - 0x1b0]
mov dword [ebp - 4], 0x79
call fcn.10022920
mov dword [ebp - 4], 0x7a
lea ecx, [ebp - 0x198]
push dword [ebp - 0x40]
call fcn.10022900
push 0xd
push str.visible_chams
lea ecx, [ebp - 0x198]
mov byte [ebp - 4], 0x7b
call fcn.10022920
push dword [ebp - 0x40]
lea ecx, [ebp - 0x180]
call fcn.10022900
push 0xf
push str.invisible_chams
lea ecx, [ebp - 0x180]
mov byte [ebp - 4], 0x7d
call fcn.10022920
push dword [ebp - 0x40]
lea ecx, [ebp - 0x168]
call fcn.10022900
push 0xd
push str.history_chams
lea ecx, [ebp - 0x168]
mov byte [ebp - 4], 0x7f
call fcn.10022920
push dword [ebp - 0x40]
lea ecx, [ebp - 0x150]
call fcn.10022900
push 0xa
push str.shot_chams
lea ecx, [ebp - 0x150]
mov byte [ebp - 4], 0x81
call fcn.10022920
push dword [ebp - 0x40]
lea ecx, [ebp - 0x138]
call fcn.10022900
push 0xe
push str.weapon_chams_1
lea ecx, [ebp - 0x138]
mov byte [ebp - 4], 0x83
call fcn.10022920
push dword [ebp - 0x40]
lea ecx, [ebp - 0x120]
call fcn.10022900
push 0xe
push str.weapon_chams_2
lea ecx, [ebp - 0x120]
mov byte [ebp - 4], 0x85
call fcn.10022920
lea eax, [ebp - 0x2d]
mov dword [ebp - 4], 0x86
push eax
lea ecx, [ebp - 0x108]
push ecx
lea edx, [ebp - 0x1b0]
push edx
lea ecx, [ebp - 0xc8]
call fcn.10070920
push dword [ebp - 0x40]
lea ecx, [ebp - 0x60]
call fcn.10022900
push 0xf
push str.rainbow_visuals
lea ecx, [ebp - 0x60]
mov byte [ebp - 4], 0x88
call fcn.10022920
push dword [ebp - 0x40]
lea ecx, [ebp - 0x98]
call fcn.10022900
push 0x17
push str.rainbow_visual_elements
lea ecx, [ebp - 0x98]
mov byte [ebp - 4], 0x8a
call fcn.10022920
lea ecx, [ebp - 0x78]
call fcn.10022cd0
lea eax, [ebp - 0x60]
mov byte [ebp - 4], 0x8c
push eax
lea ecx, [edi + 0xc50]
call fcn.1003be50
lea eax, [ebp - 0x98]
mov byte [edi + 0xc81], 1
push eax
lea ecx, [edi + 0xc88]
call fcn.1003be50
xor eax, eax
cmp byte [edi + 0xc81], al
mov ecx, 0xf
mov esi, dword [ebp - 0xc8]
cmovne eax, ecx
mov dword [edi + 0xcbc], eax
add eax, 0x14
mov dword [edi + 0xc28], eax
mov dword [edi + 0xc2c], eax
mov eax, dword [ebp - 0xc4]
mov dword [ebp - 0x2c], eax
cmp esi, eax
je 0x10052cb3
lea eax, [edi + 0xca0]
mov edi, eax
nop dword [eax]
push esi
mov ecx, edi
call fcn.100435c0
add esi, 0x18
cmp esi, dword [ebp - 0x2c]
jne 0x10052ca0
mov edi, dword [ebp - 0x34]
mov ecx, dword [ebp - 0x74]
mov eax, dword [ebp - 0x78]
mov dword [ebp - 0x2c], ecx
mov dword [ebp - 0x28], eax
cmp eax, ecx
je 0x10052d78
lea ecx, [edi + 0xcb0]
nop dword [eax]
mov eax, dword [eax]
mov dword [ebp - 0x18], eax
lea eax, [ebp - 0x40]
push eax
call fcn.10021760
lea ecx, [edi + 0xcb0]
mov esi, dword [eax]
lea eax, [ebp - 0x64]
push eax
call fcn.10021770
push esi
lea edx, [ebp - 0x18]
lea ecx, [ebp - 0xd0]
push dword [eax]
call fcn.100226d0
add esp, 8
lea ecx, [edi + 0xcb0]
mov esi, eax
lea eax, [ebp - 0xcc]
push eax
call fcn.10021760
mov ecx, dword [edi + 0xca4]
sub ecx, dword [edi + 0xca0]
mov esi, dword [esi]
mov eax, dword [eax]
mov dword [ebp - 0x24], eax
mov eax, 0x2aaaaaab
imul ecx
sar edx, 2
mov eax, edx
shr eax, 0x1f
add eax, edx
cmp dword [ebp - 0x18], eax
jae 0x10052d4f
lea eax, [ebp - 0x18]
push eax
lea ecx, [edi + 0xcb0]
call fcn.100378a0
cmp esi, dword [ebp - 0x24]
jne 0x10052d60
mov eax, dword [edi + 0xc7c]
test eax, eax
je 0x10052d60
call eax
mov eax, dword [ebp - 0x28]
lea ecx, [edi + 0xcb0]
add eax, 4
mov dword [ebp - 0x28], eax
cmp eax, dword [ebp - 0x2c]
jne 0x10052cd0
lea ecx, [ebp - 0x78]
call fcn.10021780
lea ecx, [ebp - 0x98]
call fcn.10022100
lea ecx, [ebp - 0x60]
call fcn.10022100
lea ecx, [ebp - 0xc8]
call fcn.10043430
push fcn.10022100
push 7
push 0x18
lea eax, [ebp - 0x1b0]
mov dword [ebp - 4], 0xffffffff
push eax
call fcn.1009dc72
lea eax, [edi + 0xc18]
mov dword [ebp - 0x24], eax
lea ecx, [edi + 0x18]
mov dword [edi + 0xc30], 1
imul eax, dword [edi + 0xc30], 0xeb
add eax, 0x14
mov dword [edi + 0xc1c], eax
mov dword [edi + 0xc24], 0xaf
mov eax, dword [edi + 0x2c]
mov dword [edi + 0xc34], eax
lea eax, [ebp - 0x24]
push eax
call fcn.10071530
push dword [ebp - 0x40]
lea ecx, [ebp - 0x80]
lea esi, [edi + 0x2410]
call fcn.10022900
push 0
push 0x100ae638
lea ecx, [ebp - 0x80]
mov dword [ebp - 4], 0x8d
call fcn.10043660
mov dword [ebp - 4], 0x8e
lea ecx, [ebp - 0x60]
push dword [ebp - 0x40]
call fcn.10022900
push 0xd
push str.rainbow_speed
lea ecx, [ebp - 0x60]
mov byte [ebp - 4], 0x8f
call fcn.10022920
push dword [ebp - 0x40]
lea ecx, [ebp - 0x98]
call fcn.10022900
push 0xd
push 0x100af0e4
lea ecx, [ebp - 0x98]
mov byte [ebp - 4], 0x91
call fcn.10022920
lea eax, [ebp - 0x60]
mov byte [ebp - 4], 0x92
push eax
lea ecx, [edi + 0x2448]
call fcn.1003be50
lea eax, [ebp - 0x98]
mov byte [edi + 0x2479], 1
push eax
lea ecx, [edi + 0x2498]
call fcn.1003be50
xor eax, eax
mov dword [edi + 0x2484], 0x3f800000
cmp byte [edi + 0x2479], al
mov ecx, 0xf
mov dword [edi + 0x2488], 0x42480000
cmovne eax, ecx
mov dword [edi + 0x2480], 0x3f800000
mov dword [edi + 0x24c8], eax
add eax, 8
mov dword [edi + 0x2420], eax
mov dword [edi + 0x2424], eax
lea eax, [ebp - 0x80]
mov dword [edi + 0x2494], 0
push eax
lea ecx, [edi + 0x24b0]
mov dword [edi + 0x248c], 0x3f800000
call fcn.10070cd0
lea ecx, [ebp - 0x98]
call fcn.10022100
lea ecx, [ebp - 0x60]
call fcn.10022100
lea ecx, [ebp - 0x80]
mov dword [ebp - 4], 0xffffffff
call fcn.10043260
mov dword [ebp - 0x24], esi
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 - 0x24]
lea esi, [edi + 0x18]
push eax
mov ecx, esi
call fcn.10071530
push dword [ebp - 0x40]
lea ecx, [ebp - 0x198]
call fcn.10022900
push 5
push str.local
lea ecx, [ebp - 0x198]
mov dword [ebp - 4], 0x93
call fcn.10022920
mov dword [ebp - 4], 0x94
lea ecx, [ebp - 0x180]
push dword [ebp - 0x40]
call fcn.10022900
push 5
push str.enemy
lea ecx, [ebp - 0x180]
mov byte [ebp - 4], 0x95
call fcn.10022920
push dword [ebp - 0x40]
lea ecx, [ebp - 0x168]
call fcn.10022900
push 8
push str.friendly
lea ecx, [ebp - 0x168]
mov byte [ebp - 4], 0x97
call fcn.10022920
push dword [ebp - 0x40]
lea ecx, [ebp - 0x150]
call fcn.10022900
push 7
push str.history
lea ecx, [ebp - 0x150]
mov byte [ebp - 4], 0x99
call fcn.10022920
push dword [ebp - 0x40]
lea ecx, [ebp - 0x138]
call fcn.10022900
push 4
push str.fake
lea ecx, [ebp - 0x138]
mov byte [ebp - 4], 0x9b
call fcn.10022920
push dword [ebp - 0x40]
lea ecx, [ebp - 0x120]
call fcn.10022900
push 6
push str.weapon
lea ecx, [ebp - 0x120]
mov byte [ebp - 4], 0x9d
call fcn.10022920
lea eax, [ebp - 0x2d]
mov dword [ebp - 4], 0x9e
push eax
lea ecx, [ebp - 0x108]
push ecx
lea edx, [ebp - 0x198]
push edx
lea ecx, [ebp - 0x74]
call fcn.10070920
push dword [ebp - 0x40]
lea ecx, [ebp - 0x60]
call fcn.10022900
push 0x16
push str.chams_entity_selection
lea ecx, [ebp - 0x60]
mov byte [ebp - 4], 0xa0
call fcn.10022920
push dword [ebp - 0x40]
lea ecx, [ebp - 0x98]
call fcn.10022900
push 0xf
push str.chams_selection
lea ecx, [ebp - 0x98]
mov byte [ebp - 4], 0xa2
call fcn.10022920
lea eax, [ebp - 0x60]
mov byte [ebp - 4], 0xa3
push eax
lea ecx, [edi + 0xcf8]
call fcn.1003be50
lea eax, [ebp - 0x98]
mov byte [edi + 0xd29], 1
push eax
lea ecx, [edi + 0xd30]
call fcn.1003be50
xor eax, eax
mov ecx, 0xf
cmp byte [edi + 0xd29], al
cmovne eax, ecx
mov ecx, dword [ebp - 0x70]
mov dword [edi + 0xd5c], eax
add eax, 0x14
mov dword [edi + 0xcd0], eax
mov dword [edi + 0xcd4], eax
mov eax, dword [ebp - 0x74]
cmp eax, ecx
mov dword [ebp - 0x24], eax
lea eax, [edi + 0xd48]
mov dword [ebp - 0x28], ecx
je 0x1005312c
mov esi, dword [ebp - 0x24]
mov edi, eax
mov dword [ebp - 0x2c], eax
nop dword [eax]
push esi
mov ecx, edi
call fcn.100435c0
add esi, 0x18
cmp esi, dword [ebp - 0x28]
jne 0x10053110
mov edi, dword [ebp - 0x34]
lea esi, [edi + 0x18]
lea eax, [edi + 0xd48]
mov ecx, dword [eax + 4]
sub ecx, dword [eax]
mov eax, 0x2aaaaaab
imul ecx
sar edx, 2
mov eax, edx
shr eax, 0x1f
add eax, edx
je 0x1005314e
mov dword [edi + 0xd58], 0
lea ecx, [ebp - 0x98]
call fcn.10022100
lea ecx, [ebp - 0x60]
call fcn.10022100
lea ecx, [ebp - 0x74]
call fcn.10043430
push fcn.10022100
push 6
push 0x18
lea eax, [ebp - 0x198]
mov dword [ebp - 4], 0xffffffff
push eax
call fcn.1009dc72
lea eax, [edi + 0xcc0]
mov ecx, esi
mov dword [ebp - 0x24], eax
mov dword [edi + 0xcd8], 1
imul eax, dword [edi + 0xcd8], 0xeb
add eax, 0x14
mov dword [edi + 0xcc4], eax
mov dword [edi + 0xccc], 0xaf
mov eax, dword [edi + 0x2c]
mov dword [edi + 0xcdc], eax
lea eax, [ebp - 0x24]
push eax
call fcn.10071530
push dword [ebp - 0x40]
lea ecx, [ebp - 0x60]
lea esi, [edi + 0xd60]
call fcn.10022900
push 0xb
push str.chams_local
lea ecx, [ebp - 0x60]
mov dword [ebp - 4], 0xa4
call fcn.10022920
mov dword [ebp - 4], 0xa5
lea ecx, [ebp - 0x98]
push dword [ebp - 0x40]
call fcn.10022900
push 0xb
push 0x100af13c
lea ecx, [ebp - 0x98]
mov byte [ebp - 4], 0xa6
call fcn.10022920
lea eax, [ebp - 0x60]
mov byte [ebp - 4], 0xa7
push eax
lea ecx, [edi + 0xd98]
call fcn.1003be50
lea eax, [ebp - 0x98]
mov byte [edi + 0xdc9], 1
push eax
lea ecx, [edi + 0xdd0]
call fcn.1003be50
lea ecx, [ebp - 0x98]
mov byte [edi + 0xdcc], 0
call fcn.10022100
lea ecx, [ebp - 0x60]
mov dword [ebp - 4], 0xffffffff
call fcn.10022100
lea eax, [ebp - 0x24]
mov dword [ebp - 0x24], 0x10026640
lea ecx, [esi + 0x58]
push eax
call fcn.10071530
mov dword [ebp - 0x24], esi
lea esi, [edi + 0x18]
mov dword [edi + 0xd78], 1
mov ecx, esi
imul eax, dword [edi + 0xd78], 0xeb
add eax, 0x14
mov dword [edi + 0xd64], eax
mov dword [edi + 0xd6c], 0xaf
mov eax, dword [edi + 0x2c]
mov dword [edi + 0xd7c], eax
lea eax, [ebp - 0x24]
push eax
call fcn.10071530
push dword [ebp - 0x40]
lea ecx, [ebp - 0x180]
call fcn.10022900
push 8
push str.material
lea ecx, [ebp - 0x180]
mov dword [ebp - 4], 0xa8
call fcn.10022920
mov dword [ebp - 4], 0xa9
lea ecx, [ebp - 0x168]
push dword [ebp - 0x40]
call fcn.10022900
push 4
push str.flat
lea ecx, [ebp - 0x168]
mov byte [ebp - 4], 0xaa
call fcn.10022920
push dword [ebp - 0x40]
lea ecx, [ebp - 0x150]
call fcn.10022900
push 8
push str.metallic
lea ecx, [ebp - 0x150]
mov byte [ebp - 4], 0xac
call fcn.10022920
push dword [ebp - 0x40]
lea ecx, [ebp - 0x138]
call fcn.10022900
push 5
push str.gloss
lea ecx, [ebp - 0x138]
mov byte [ebp - 4], 0xae
call fcn.10022920
push dword [ebp - 0x40]
lea ecx, [ebp - 0x120]
call fcn.10022900
push 4
push str.glow
lea ecx, [ebp - 0x120]
mov byte [ebp - 4], 0xb0
call fcn.10022920
lea eax, [ebp - 0x2d]
mov dword [ebp - 4], 0xb1
push eax
lea ecx, [ebp - 0x108]
push ecx
lea edx, [ebp - 0x180]
push edx
lea ecx, [ebp - 0x74]
call fcn.10070920
push dword [ebp - 0x40]
lea ecx, [ebp - 0x60]
call fcn.10022900
push 0xf
push str.chams_local_mat
lea ecx, [ebp - 0x60]
mov byte [ebp - 4], 0xb3
call fcn.10022920
push dword [ebp - 0x40]
lea ecx, [ebp - 0x98]
call fcn.10022900
push 0x14
push str.chams_local_material
lea ecx, [ebp - 0x98]
mov byte [ebp - 4], 0xb5
call fcn.10022920
lea eax, [ebp - 0x60]
mov byte [ebp - 4], 0xb6
push eax
lea ecx, [edi + 0xea8]
call fcn.1003be50
lea eax, [ebp - 0x98]
mov byte [edi + 0xed9], 1
push eax
lea ecx, [edi + 0xee0]
call fcn.1003be50
xor eax, eax
mov ecx, 0xf
cmp byte [edi + 0xed9], al
cmovne eax, ecx
mov ecx, dword [ebp - 0x70]
mov dword [edi + 0xf0c], eax
add eax, 0x14
mov dword [edi + 0xe80], eax
mov dword [edi + 0xe84], eax
mov eax, dword [ebp - 0x74]
cmp eax, ecx
mov dword [ebp - 0x24], eax
lea eax, [edi + 0xef8]
mov dword [ebp - 0x28], ecx
je 0x1005346c
mov esi, dword [ebp - 0x24]
mov edi, eax
mov dword [ebp - 0x2c], eax
nop dword [eax]
push esi
mov ecx, edi
call fcn.100435c0
add esi, 0x18
cmp esi, dword [ebp - 0x28]
jne 0x10053450
mov edi, dword [ebp - 0x34]
lea esi, [edi + 0x18]
lea eax, [edi + 0xef8]
mov ecx, dword [eax + 4]
sub ecx, dword [eax]
mov eax, 0x2aaaaaab
imul ecx
sar edx, 2
mov eax, edx
shr eax, 0x1f
add eax, edx
je 0x1005348e
mov dword [edi + 0xf08], 0
lea ecx, [ebp - 0x98]
call fcn.10022100
lea ecx, [ebp - 0x60]
call fcn.10022100
lea ecx, [ebp - 0x74]
call fcn.10043430
push fcn.10022100
push 5
push 0x18
lea eax, [ebp - 0x180]
mov dword [ebp - 4], 0xffffffff
push eax
call fcn.1009dc72
lea eax, [ebp - 0x24]
mov dword [ebp - 0x24], 0x10026640
lea ecx, [edi + 0xec8]
push eax
call fcn.10071530
lea eax, [edi + 0xe70]
mov ecx, esi
mov dword [ebp - 0x24], eax
mov dword [edi + 0xe88], 1
imul eax, dword [edi + 0xe88], 0xeb
add eax, 0x14
mov dword [edi + 0xe74], eax
mov dword [edi + 0xe7c], 0xaf
mov eax, dword [edi + 0x2c]
mov dword [edi + 0xe8c], eax
lea eax, [ebp - 0x24]
push eax
call fcn.10071530
push dword [ebp - 0x40]
lea ecx, [ebp - 0x60]
lea esi, [edi + 0xf10]
call fcn.10022900
push 0xf
push str.chams_local_col
lea ecx, [ebp - 0x60]
mov dword [ebp - 4], 0xb7
call fcn.10022920
mov dword [ebp - 4], 0xb8
lea ecx, [ebp - 0x98]
push dword [ebp - 0x40]
call fcn.10022900
push 5
push str.color
lea ecx, [ebp - 0x98]
mov byte [ebp - 4], 0xb9
call fcn.10022920
lea eax, [ebp - 0x98]
mov byte [ebp - 4], 0xba
push eax
lea ecx, [edi + 0xf80]
call fcn.1003be50
lea eax, [ebp - 0x60]
push eax
lea ecx, [edi + 0xf48]
call fcn.1003be50
lea ecx, [ebp - 0x98]
mov dword [edi + 0xf98], 0xff323232
mov dword [edi + 0xfac], 0
call fcn.10022100
lea ecx, [ebp - 0x60]
mov dword [ebp - 4], 0xffffffff
call fcn.10022100
lea eax, [ebp - 0x24]
mov dword [ebp - 0x24], 0x10026640
lea ecx, [esi + 0x58]
push eax
call fcn.10071530
mov dword [ebp - 0x24], esi
mov dword [edi + 0xf28], 1
imul eax, dword [edi + 0xf28], 0xeb
add eax, 0x14
mov dword [edi + 0xf14], eax
mov dword [edi + 0xf1c], 0xaf
mov eax, dword [edi + 0x2c]
mov dword [edi + 0xf2c], eax
lea ecx, [edi + 0x18]
lea eax, [ebp - 0x24]
push eax
call fcn.10071530
push dword [ebp - 0x40]
lea ecx, [ebp - 0x60]
lea esi, [edi + 0xfc0]
call fcn.10022900
push 0x10
push str.chams_local2_col
lea ecx, [ebp - 0x60]
mov dword [ebp - 4], 0xbb
call fcn.10022920
mov dword [ebp - 4], 0xbc
lea ecx, [ebp - 0x98]
push dword [ebp - 0x40]
call fcn.10022900
push 0xa
push str.glow_color
lea ecx, [ebp - 0x98]
mov byte [ebp - 4], 0xbd
call fcn.10022920
lea eax, [ebp - 0x98]
mov byte [ebp - 4], 0xbe
push eax
lea ecx, [edi + 0x1030]
call fcn.1003be50
lea eax, [ebp - 0x60]
push eax
lea ecx, [edi + 0xff8]
call fcn.1003be50
lea ecx, [ebp - 0x98]
mov dword [edi + 0x1048], 0xff3b2d09
mov dword [edi + 0x105c], 0
call fcn.10022100
lea ecx, [ebp - 0x60]
mov dword [ebp - 4], 0xffffffff
call fcn.10022100
lea eax, [ebp - 0x24]
mov dword [ebp - 0x24], 0x10026650
lea ecx, [esi + 0x58]
push eax
call fcn.10071530
mov dword [ebp - 0x24], esi
lea ecx, [edi + 0x18]
mov dword [edi + 0xfd8], 1
imul eax, dword [edi + 0xfd8], 0xeb
add eax, 0x14
mov dword [edi + 0xfc4], eax
mov dword [edi + 0xfcc], 0xaf
mov eax, dword [edi + 0x2c]
mov dword [edi + 0xfdc], eax
lea eax, [ebp - 0x24]
push eax
call fcn.10071530
push dword [ebp - 0x40]
lea ecx, [ebp - 0x60]
lea esi, [edi + 0x1070]
call fcn.10022900
push 1
push 0x100ae6e0
lea ecx, [ebp - 0x60]
mov dword [ebp - 4], 0xbf
call fcn.10043660
mov dword [ebp - 4], 0xc0
lea ecx, [ebp - 0x98]
push dword [ebp - 0x40]
call fcn.10022900
push 0x11
push str.chams_local_blend
lea ecx, [ebp - 0x98]
mov byte [ebp - 4], 0xc1
call fcn.10022920
push dword [ebp - 0x40]
lea ecx, [ebp - 0x80]
call fcn.10022900
push 0
push 0x100abd7e
lea ecx, [ebp - 0x80]
mov byte [ebp - 4], 0xc3
call fcn.10022920
lea eax, [ebp - 0x98]
mov byte [ebp - 4], 0xc4
push eax
lea ecx, [edi + 0x10a8]
call fcn.1003be50
lea eax, [ebp - 0x60]
mov byte [edi + 0x10d9], 0
push eax
lea ecx, [edi + 0x1110]
mov dword [edi + 0x1128], 0
mov dword [edi + 0x1080], 8
mov dword [edi + 0x1084], 8
mov dword [edi + 0x10e4], 0
mov dword [edi + 0x10e8], 0x42c80000
mov dword [edi + 0x10e0], 0x42c80000
mov dword [edi + 0x10f4], 0
mov dword [edi + 0x10ec], 0x3f800000
call fcn.10070cd0
lea ecx, [ebp - 0x80]
call fcn.10022100
lea ecx, [ebp - 0x98]
call fcn.10022100
lea ecx, [ebp - 0x60]
mov dword [ebp - 4], 0xffffffff
call fcn.10043260
lea eax, [ebp - 0x24]
mov dword [ebp - 0x24], 0x10026640
lea ecx, [esi + 0x58]
push eax
call fcn.10071530
mov dword [ebp - 0x24], esi
lea ecx, [edi + 0x18]
mov dword [edi + 0x1088], 1
imul eax, dword [edi + 0x1088], 0xeb
add eax, 0x14
mov dword [edi + 0x1074], eax
mov dword [edi + 0x107c], 0xaf
mov eax, dword [edi + 0x2c]
mov dword [edi + 0x108c], eax
lea eax, [ebp - 0x24]
push eax
call fcn.10071530
push dword [ebp - 0x40]
lea ecx, [ebp - 0x60]
lea esi, [edi + 0x112c]
call fcn.10022900
push 0x11
push str.chams_local_scope
lea ecx, [ebp - 0x60]
mov dword [ebp - 4], 0xc5
call fcn.10022920
mov dword [ebp - 4], 0xc6
lea ecx, [ebp - 0x98]
push dword [ebp - 0x40]
call fcn.10022900
push 0x11
push str.blend_when_scoped
lea ecx, [ebp - 0x98]
mov byte [ebp - 4], 0xc7
call fcn.10022920
lea eax, [ebp - 0x60]
mov byte [ebp - 4], 0xc8
push eax
lea ecx, [edi + 0x1164]
call fcn.1003be50
mov byte [edi + 0x1195], 1
lea eax, [ebp - 0x98]
push eax
lea ecx, [edi + 0x119c]
call fcn.1003be50
lea ecx, [ebp - 0x98]
mov byte [edi + 0x1198], 0
call fcn.10022100
lea ecx, [ebp - 0x60]
mov dword [ebp - 4], 0xffffffff
call fcn.10022100
lea eax, [ebp - 0x24]
mov dword [ebp - 0x24], 0x10026640
lea ecx, [esi + 0x58]
push eax
call fcn.10071530
mov dword [ebp - 0x24], esi
lea ecx, [edi + 0x18]
mov dword [edi + 0x1144], 1
imul eax, dword [edi + 0x1144], 0xeb
add eax, 0x14
mov dword [edi + 0x1130], eax
mov dword [edi + 0x1138], 0xaf
mov eax, dword [edi + 0x2c]
mov dword [edi + 0x1148], eax
lea eax, [ebp - 0x24]
push eax
call fcn.10071530
push dword [ebp - 0x40]
lea ecx, [ebp - 0x60]
lea esi, [edi + 0x11b4]
call fcn.10022900
push 1
push 0x100ae6e0
lea ecx, [ebp - 0x60]
mov dword [ebp - 4], 0xc9
call fcn.10043660
mov dword [ebp - 4], 0xca
lea ecx, [ebp - 0x98]
push dword [ebp - 0x40]
call fcn.10022900
push 0x17
push str.chams_local_scope_blend
lea ecx, [ebp - 0x98]
mov byte [ebp - 4], 0xcb
call fcn.10022920
push dword [ebp - 0x40]
lea ecx, [ebp - 0x80]
call fcn.10022900
push 0
push 0x100abd7e
lea ecx, [ebp - 0x80]
mov byte [ebp - 4], 0xcd
call fcn.10022920
lea eax, [ebp - 0x98]
mov byte [ebp - 4], 0xce
push eax
lea ecx, [edi + 0x11ec]
call fcn.1003be50
lea eax, [ebp - 0x60]
mov byte [edi + 0x121d], 0
push eax
lea ecx, [edi + 0x1254]
mov dword [edi + 0x126c], 0
mov dword [edi + 0x11c4], 8
mov dword [edi + 0x11c8], 8
mov dword [edi + 0x1228], 0
mov dword [edi + 0x122c], 0x42c80000
mov dword [edi + 0x1224], 0x42c80000
mov dword [edi + 0x1238], 0
mov dword [edi + 0x1230], 0x3f800000
call fcn.10070cd0
lea ecx, [ebp - 0x80]
call fcn.10022100
lea ecx, [ebp - 0x98]
call fcn.10022100
lea ecx, [ebp - 0x60]
mov dword [ebp - 4], 0xffffffff
call fcn.10043260
lea eax, [ebp - 0x24]
mov dword [ebp - 0x24], 0x10026640
lea ecx, [esi + 0x58]
push eax
call fcn.10071530
mov dword [ebp - 0x24], esi
lea esi, [edi + 0x18]
mov dword [edi + 0x11cc], 1
mov ecx, esi
imul eax, dword [edi + 0x11cc], 0xeb
add eax, 0x14
mov dword [edi + 0x11b8], eax
mov dword [edi + 0x11c0], 0xaf
mov eax, dword [edi + 0x2c]
mov dword [edi + 0x11d0], eax
lea eax, [ebp - 0x24]
push eax
call fcn.10071530
push dword [ebp - 0x40]
lea ecx, [ebp - 0x104]
call fcn.10022900
push 7
push str.visible
lea ecx, [ebp - 0x104]
mov dword [ebp - 4], 0xcf
call fcn.10022920
mov dword [ebp - 4], 0xd0
lea ecx, [ebp - 0xec]
push dword [ebp - 0x40]
call fcn.10022900
push 9
push str.invisible
lea ecx, [ebp - 0xec]
mov byte [ebp - 4], 0xd1
call fcn.10022920
lea eax, [ebp - 0x2d]
mov dword [ebp - 4], 0xd2
push eax
lea ecx, [ebp - 0xd4]
push ecx
lea edx, [ebp - 0x104]
push edx
lea ecx, [ebp - 0xc8]
call fcn.10070920
push dword [ebp - 0x40]
lea ecx, [ebp - 0x60]
call fcn.10022900
push 0xb
push 0x100af230
lea ecx, [ebp - 0x60]
mov byte [ebp - 4], 0xd4
call fcn.10022920
push dword [ebp - 0x40]
lea ecx, [ebp - 0x98]
call fcn.10022900
push 0xb
push str.chams_enemy
lea ecx, [ebp - 0x98]
mov byte [ebp - 4], 0xd6
call fcn.10022920
lea ecx, [ebp - 0x78]
call fcn.10022cd0
lea eax, [ebp - 0x60]
mov byte [ebp - 4], 0xd8
push eax
lea ecx, [edi + 0x12a8]
call fcn.1003be50
mov byte [edi + 0x12d9], 1
lea eax, [ebp - 0x98]
push eax
lea ecx, [edi + 0x12e0]
call fcn.1003be50
xor eax, eax
mov ecx, 0xf
cmp byte [edi + 0x12d9], al
cmovne eax, ecx
mov ecx, dword [ebp - 0xc4]
mov dword [edi + 0x1314], eax
add eax, 0x14
mov dword [edi + 0x1280], eax
mov dword [edi + 0x1284], eax
mov eax, dword [ebp - 0xc8]
mov dword [ebp - 0x28], ecx
mov dword [ebp - 0x24], eax
cmp eax, ecx
je 0x10053c0b
mov esi, dword [ebp - 0x24]
lea eax, [edi + 0x12f8]
mov dword [ebp - 0x2c], eax
mov edi, eax
push esi
mov ecx, edi
call fcn.100435c0
add esi, 0x18
cmp esi, dword [ebp - 0x28]
jne 0x10053bf5
mov edi, dword [ebp - 0x34]
lea esi, [edi + 0x18]
mov ecx, dword [ebp - 0x74]
mov eax, dword [ebp - 0x78]
mov dword [ebp - 0x2c], ecx
mov dword [ebp - 0x28], eax
cmp eax, ecx
je 0x10053cd0
lea ecx, [edi + 0x1308]
mov eax, dword [eax]
mov dword [ebp - 0x18], eax
lea eax, [ebp - 0x40]
push eax
call fcn.10021760
lea ecx, [edi + 0x1308]
mov esi, dword [eax]
lea eax, [ebp - 0x64]
push eax
call fcn.10021770
push esi
lea edx, [ebp - 0x18]
lea ecx, [ebp - 0xd0]
push dword [eax]
call fcn.100226d0
add esp, 8
lea ecx, [edi + 0x1308]
mov esi, eax
lea eax, [ebp - 0xcc]
push eax
call fcn.10021760
mov ecx, dword [edi + 0x12fc]
sub ecx, dword [edi + 0x12f8]
mov esi, dword [esi]
mov eax, dword [eax]
mov dword [ebp - 0x24], eax
mov eax, 0x2aaaaaab
imul ecx
sar edx, 2
mov eax, edx
shr eax, 0x1f
add eax, edx
cmp dword [ebp - 0x18], eax
jae 0x10053ca4
lea eax, [ebp - 0x18]
push eax
lea ecx, [edi + 0x1308]
call fcn.100378a0
cmp esi, dword [ebp - 0x24]
jne 0x10053cb5
mov eax, dword [edi + 0x12d4]
test eax, eax
je 0x10053cb5
call eax
mov eax, dword [ebp - 0x28]
lea ecx, [edi + 0x1308]
add eax, 4
mov dword [ebp - 0x28], eax
cmp eax, dword [ebp - 0x2c]
jne 0x10053c25
lea esi, [edi + 0x18]
lea ecx, [ebp - 0x78]
call fcn.10021780
lea ecx, [ebp - 0x98]
call fcn.10022100
lea ecx, [ebp - 0x60]
call fcn.10022100
lea ecx, [ebp - 0xc8]
call fcn.10043430
push fcn.10022100
push 2
push 0x18
lea eax, [ebp - 0x104]
mov dword [ebp - 4], 0xffffffff
push eax
call fcn.1009dc72
lea eax, [ebp - 0x24]
mov dword [ebp - 0x24], 0x10026670
lea ecx, [edi + 0x12c8]
push eax
call fcn.10071530
lea eax, [edi + 0x1270]
mov ecx, esi
mov dword [ebp - 0x24], eax
mov dword [edi + 0x1288], 1
imul eax, dword [edi + 0x1288], 0xeb
add eax, 0x14
mov dword [edi + 0x1274], eax
mov dword [edi + 0x127c], 0xaf
mov eax, dword [edi + 0x2c]
mov dword [edi + 0x128c], eax
lea eax, [ebp - 0x24]
push eax
call fcn.10071530
push dword [ebp - 0x40]
lea ecx, [ebp - 0x198]
call fcn.10022900
push 8
push str.material
lea ecx, [ebp - 0x198]
mov dword [ebp - 4], 0xd9
call fcn.10022920
mov dword [ebp - 4], 0xda
lea ecx, [ebp - 0x180]
push dword [ebp - 0x40]
call fcn.10022900
push 4
push str.flat
lea ecx, [ebp - 0x180]
mov byte [ebp - 4], 0xdb
call fcn.10022920
push dword [ebp - 0x40]
lea ecx, [ebp - 0x168]
call fcn.10022900
push 8
push str.metallic
lea ecx, [ebp - 0x168]
mov byte [ebp - 4], 0xdd
call fcn.10022920
push dword [ebp - 0x40]
lea ecx, [ebp - 0x150]
call fcn.10022900
push 5
push str.gloss
lea ecx, [ebp - 0x150]
mov byte [ebp - 4], 0xdf
call fcn.10022920
push dword [ebp - 0x40]
lea ecx, [ebp - 0x138]
call fcn.10022900
push 4
mov byte [ebp - 4], 0xe1
push str.glow
lea ecx, [ebp - 0x138]
call fcn.10022920
push dword [ebp - 0x40]
lea ecx, [ebp - 0x120]
call fcn.10022900
push 0xc
push str.outline_glow
lea ecx, [ebp - 0x120]
mov byte [ebp - 4], 0xe3
call fcn.10022920
lea eax, [ebp - 0x2d]
mov dword [ebp - 4], 0xe4
push eax
lea ecx, [ebp - 0x108]
push ecx
lea edx, [ebp - 0x198]
push edx
lea ecx, [ebp - 0x74]
call fcn.10070920
push dword [ebp - 0x40]
lea ecx, [ebp - 0x60]
call fcn.10022900
push 0xf
push str.chams_enemy_mat
lea ecx, [ebp - 0x60]
mov byte [ebp - 4], 0xe6
call fcn.10022920
push dword [ebp - 0x40]
lea ecx, [ebp - 0x98]
call fcn.10022900
push 0x14
push str.chams_enemy_material
lea ecx, [ebp - 0x98]
mov byte [ebp - 4], 0xe8
call fcn.10022920
lea eax, [ebp - 0x60]
mov byte [ebp - 4], 0xe9
push eax
lea ecx, [edi + 0x1350]
call fcn.1003be50
lea eax, [ebp - 0x98]
mov byte [edi + 0x1381], 1
push eax
lea ecx, [edi + 0x1388]
call fcn.1003be50
xor eax, eax
mov ecx, 0xf
cmp byte [edi + 0x1381], al
cmovne eax, ecx
mov ecx, dword [ebp - 0x70]
mov dword [edi + 0x13b4], eax
add eax, 0x14
mov dword [edi + 0x1328], eax
mov dword [edi + 0x132c], eax
mov eax, dword [ebp - 0x74]
cmp eax, ecx
mov dword [ebp - 0x24], eax
lea eax, [edi + 0x13a0]
mov dword [ebp - 0x28], ecx
je 0x10053f3c
mov esi, dword [ebp - 0x24]
mov edi, eax
mov dword [ebp - 0x2c], eax
push esi
mov ecx, edi
call fcn.100435c0
add esi, 0x18
cmp esi, dword [ebp - 0x28]
jne 0x10053f20
mov edi, dword [ebp - 0x34]
lea esi, [edi + 0x18]
lea eax, [edi + 0x13a0]
mov ecx, dword [eax + 4]
sub ecx, dword [eax]
mov eax, 0x2aaaaaab
imul ecx
sar edx, 2
mov eax, edx
shr eax, 0x1f
add eax, edx
je 0x10053f5e
mov dword [edi + 0x13b0], 0
lea ecx, [ebp - 0x98]
call fcn.10022100
lea ecx, [ebp - 0x60]
call fcn.10022100
lea ecx, [ebp - 0x74]
call fcn.10043430
push fcn.10022100
push 6
push 0x18
lea eax, [ebp - 0x198]
mov dword [ebp - 4], 0xffffffff
push eax
call fcn.1009dc72
lea eax, [ebp - 0x24]
mov dword [ebp - 0x24], 0x10026670
lea ecx, [edi + 0x1370]
push eax
call fcn.10071530
lea eax, [edi + 0x1318]
mov ecx, esi
mov dword [ebp - 0x24], eax
mov dword [edi + 0x1330], 1
imul eax, dword [edi + 0x1330], 0xeb
add eax, 0x14
mov dword [edi + 0x131c], eax
mov dword [edi + 0x1324], 0xaf
mov eax, dword [edi + 0x2c]
mov dword [edi + 0x1334], eax
lea eax, [ebp - 0x24]
push eax
call fcn.10071530
push dword [ebp - 0x40]
lea ecx, [ebp - 0x60]
lea esi, [edi + 0x13b8]
call fcn.10022900
push 0xf
push str.chams_enemy_vis
lea ecx, [ebp - 0x60]
mov dword [ebp - 4], 0xea
call fcn.10022920
mov dword [ebp - 4], 0xeb
lea ecx, [ebp - 0x98]
push dword [ebp - 0x40]
call fcn.10022900
push 0xd
push str.color_visible
lea ecx, [ebp - 0x98]
mov byte [ebp - 4], 0xec
call fcn.10022920
lea eax, [ebp - 0x98]
mov byte [ebp - 4], 0xed
push eax
lea ecx, [edi + 0x1428]
call fcn.1003be50
lea eax, [ebp - 0x60]
push eax
lea ecx, [edi + 0x13f0]
call fcn.1003be50
lea ecx, [ebp - 0x98]
mov dword [edi + 0x1440], 0xff3cc896
mov dword [edi + 0x1454], 0
call fcn.10022100
lea ecx, [ebp - 0x60]
mov dword [ebp - 4], 0xffffffff
call fcn.10022100
lea eax, [ebp - 0x24]
mov dword [ebp - 0x24], 0x10026670
lea ecx, [esi + 0x58]
push eax
call fcn.10071530
mov dword [ebp - 0x24], esi
mov dword [edi + 0x13d0], 1
imul eax, dword [edi + 0x13d0], 0xeb
add eax, 0x14
mov dword [edi + 0x13bc], eax
mov dword [edi + 0x13c4], 0xaf
mov eax, dword [edi + 0x2c]
mov dword [edi + 0x13d4], eax
lea ecx, [edi + 0x18]
lea eax, [ebp - 0x24]
push eax
call fcn.10071530
push dword [ebp - 0x40]
lea ecx, [ebp - 0x60]
lea esi, [edi + 0x1468]
call fcn.10022900
push 0x10
push str.chams_enemy2_vis
lea ecx, [ebp - 0x60]
mov dword [ebp - 4], 0xee
call fcn.10022920
mov dword [ebp - 4], 0xef
lea ecx, [ebp - 0x98]
push dword [ebp - 0x40]
call fcn.10022900
push 0xa
push str.glow_color
lea ecx, [ebp - 0x98]
mov byte [ebp - 4], 0xf0
call fcn.10022920
lea eax, [ebp - 0x98]
mov byte [ebp - 4], 0xf1
push eax
lea ecx, [edi + 0x14d8]
call fcn.1003be50
lea eax, [ebp - 0x60]
push eax
lea ecx, [edi + 0x14a0]
call fcn.1003be50
lea ecx, [ebp - 0x98]
mov dword [edi + 0x14f0], 0xffc8ffff
mov dword [edi + 0x1504], 0
call fcn.10022100
lea ecx, [ebp - 0x60]
mov dword [ebp - 4], 0xffffffff
call fcn.10022100
lea eax, [ebp - 0x24]
mov dword [ebp - 0x24], 0x10026680
lea ecx, [esi + 0x58]
push eax
call fcn.10071530
mov dword [ebp - 0x24], esi
lea ecx, [edi + 0x18]
mov dword [edi + 0x1480], 1
imul eax, dword [edi + 0x1480], 0xeb
add eax, 0x14
mov dword [edi + 0x146c], eax
mov dword [edi + 0x1474], 0xaf
mov eax, dword [edi + 0x2c]
mov dword [edi + 0x1484], eax
lea eax, [ebp - 0x24]
push eax
call fcn.10071530
push dword [ebp - 0x40]
lea ecx, [ebp - 0x60]
lea esi, [edi + 0x1518]
call fcn.10022900
push 0x11
push str.chams_enemy_invis
lea ecx, [ebp - 0x60]
mov dword [ebp - 4], 0xf2
call fcn.10022920
mov dword [ebp - 4], 0xf3
lea ecx, [ebp - 0x98]
push dword [ebp - 0x40]
call fcn.10022900
push 0xf
push str.color_invisible
lea ecx, [ebp - 0x98]
mov byte [ebp - 4], 0xf4
call fcn.10022920
lea eax, [ebp - 0x98]
mov byte [ebp - 4], 0xf5
push eax
lea ecx, [edi + 0x1588]
call fcn.1003be50
lea eax, [ebp - 0x60]
push eax
lea ecx, [edi + 0x1550]
call fcn.1003be50
lea ecx, [ebp - 0x98]
mov dword [edi + 0x15a0], 0xffb4783c
mov dword [edi + 0x15b4], 0
call fcn.10022100
lea ecx, [ebp - 0x60]
mov dword [ebp - 4], 0xffffffff
call fcn.10022100
lea eax, [ebp - 0x24]
mov dword [ebp - 0x24], 0x10026670
lea ecx, [esi + 0x58]
push eax
call fcn.10071530
mov dword [ebp - 0x24], esi
lea ecx, [edi + 0x18]
mov dword [edi + 0x1530], 1
imul eax, dword [edi + 0x1530], 0xeb
add eax, 0x14
mov dword [edi + 0x151c], eax
mov dword [edi + 0x1524], 0xaf
mov eax, dword [edi + 0x2c]
mov dword [edi + 0x1534], eax
lea eax, [ebp - 0x24]
push eax
call fcn.10071530
push dword [ebp - 0x40]
lea ecx, [ebp - 0x60]
lea esi, [edi + 0x15c8]
call fcn.10022900
push 0x12
push str.chams_enemy2_invis
lea ecx, [ebp - 0x60]
mov dword [ebp - 4], 0xf6
call fcn.10022920
mov dword [ebp - 4], 0xf7
lea ecx, [ebp - 0x98]
push dword [ebp - 0x40]
call fcn.10022900
push 0xa
push str.glow_color
lea ecx, [ebp - 0x98]
mov byte [ebp - 4], 0xf8
call fcn.10022920
lea eax, [ebp - 0x98]
mov byte [ebp - 4], 0xf9
push eax
lea ecx, [edi + 0x1638]
call fcn.1003be50
lea eax, [ebp - 0x60]
push eax
lea ecx, [edi + 0x1600]
call fcn.1003be50
lea ecx, [ebp - 0x98]
mov dword [edi + 0x1650], 0xb4c8ffff
mov dword [edi + 0x1664], 0
call fcn.10022100
lea ecx, [ebp - 0x60]
mov dword [ebp - 4], 0xffffffff
call fcn.10022100
lea eax, [ebp - 0x24]
mov dword [ebp - 0x24], 0x10026680
lea ecx, [esi + 0x58]
push eax
call fcn.10071530
mov dword [ebp - 0x24], esi
mov dword [edi + 0x15e0], 1
imul eax, dword [edi + 0x15e0], 0xeb
add eax, 0x14
mov dword [edi + 0x15cc], eax
lea ecx, [edi + 0x18]
mov dword [edi + 0x15d4], 0xaf
mov eax, dword [edi + 0x2c]
mov dword [edi + 0x15e4], eax
lea eax, [ebp - 0x24]
push eax
call fcn.10071530
push 0x100ae6e0
lea ecx, [ebp - 0x80]
lea esi, [edi + 0x195c]
call fcn.10070d00
push str.chams_enemy_blend
lea ecx, [ebp - 0x60]
mov dword [ebp - 4], 0xfa
call fcn.10022150
push str.visible
lea ecx, [ebp - 0x98]
mov byte [ebp - 4], 0xfb
call fcn.10022150
lea eax, [ebp - 0x60]
mov byte [ebp - 4], 0xfc
push eax
lea ecx, [edi + 0x1994]
call fcn.1003be50
lea eax, [ebp - 0x98]
mov byte [edi + 0x19c5], 1
push eax
lea ecx, [edi + 0x19e4]
call fcn.1003be50
xor eax, eax
mov dword [edi + 0x19d0], 0
cmp byte [edi + 0x19c5], al
mov ecx, 0xf
mov dword [edi + 0x19d4], 0x42c80000
cmovne eax, ecx
mov dword [edi + 0x19cc], 0x42c80000
mov dword [edi + 0x1a14], eax
lea ecx, [edi + 0x19fc]
add eax, 8
mov dword [edi + 0x19e0], 0
mov dword [edi + 0x196c], eax
mov dword [edi + 0x1970], eax
lea eax, [ebp - 0x80]
push eax
mov dword [edi + 0x19d8], 0x3f800000
call fcn.10070cd0
lea ecx, [ebp - 0x98]
call fcn.10022100
lea ecx, [ebp - 0x60]
call fcn.10022100
lea ecx, [ebp - 0x80]
mov dword [ebp - 4], 0xffffffff
call fcn.10043260
lea eax, [ebp - 0x24]
mov dword [ebp - 0x24], 0x10026670
lea ecx, [esi + 0x58]
push eax
call fcn.10071530
mov dword [ebp - 0x24], esi
lea ecx, [edi + 0x18]
mov dword [edi + 0x1974], 1
imul eax, dword [edi + 0x1974], 0xeb
add eax, 0x14
mov dword [edi + 0x1960], eax
mov dword [edi + 0x1968], 0xaf
mov eax, dword [edi + 0x2c]
mov dword [edi + 0x1978], eax
lea eax, [ebp - 0x24]
push eax
call fcn.10071530
push 0x100ae6e0
lea ecx, [ebp - 0x80]
lea esi, [edi + 0x1aa0]
call fcn.10070d00
mov dword [ebp - 4], 0xfd
push str.chams_enemy_blend2
lea ecx, [ebp - 0x60]
call fcn.10022150
push str.invis
lea ecx, [ebp - 0x98]
mov byte [ebp - 4], 0xfe
call fcn.10022150
lea eax, [ebp - 0x60]
mov byte [ebp - 4], 0xff
push eax
lea ecx, [edi + 0x1ad8]
call fcn.1003be50
lea eax, [ebp - 0x98]
mov byte [edi + 0x1b09], 1
push eax
lea ecx, [edi + 0x1b28]
call fcn.1003be50
xor eax, eax
mov dword [edi + 0x1b14], 0
cmp byte [edi + 0x1b09], al
mov ecx, 0xf
mov dword [edi + 0x1b18], 0x42c80000
cmovne eax, ecx
mov dword [edi + 0x1b10], 0x42480000
mov dword [edi + 0x1b58], eax
lea ecx, [edi + 0x1b40]
add eax, 8
mov dword [edi + 0x1b24], 0
mov dword [edi + 0x1ab0], eax
mov dword [edi + 0x1ab4], eax
lea eax, [ebp - 0x80]
push eax
mov dword [edi + 0x1b1c], 0x3f800000
call fcn.10070cd0
lea ecx, [ebp - 0x98]
call fcn.10022100
lea ecx, [ebp - 0x60]
call fcn.10022100
lea ecx, [ebp - 0x80]
mov dword [ebp - 4], 0xffffffff
call fcn.10043260
lea eax, [ebp - 0x24]
mov dword [ebp - 0x24], 0x10026670
lea ecx, [esi + 0x58]
push eax
call fcn.10071530
mov dword [ebp - 0x24], esi
lea ecx, [edi + 0x18]
mov dword [edi + 0x1ab8], 1
imul eax, dword [edi + 0x1ab8], 0xeb
add eax, 0x14
mov dword [edi + 0x1aa4], eax
mov dword [edi + 0x1aac], 0xaf
mov eax, dword [edi + 0x2c]
mov dword [edi + 0x1abc], eax
lea eax, [ebp - 0x24]
push eax
call fcn.10071530
push str.chams_enemy_reflectivity
lea ecx, [ebp - 0x60]
lea esi, [edi + 0x1678]
call fcn.10022150
push str.reflectivity_color
lea ecx, [ebp - 0x98]
mov dword [ebp - 4], pe_nt_image_headers32
call fcn.10022150
lea eax, [ebp - 0x98]
mov byte [ebp - 4], 1
push eax
lea ecx, [edi + 0x16e8]
call fcn.1003be50
lea eax, [ebp - 0x60]
push eax
lea ecx, [edi + 0x16b0]
call fcn.1003be50
mov dword [edi + 0x1700], 0xff00b2ff
lea ecx, [ebp - 0x98]
mov dword [edi + 0x1714], 0
call fcn.10022100
lea ecx, [ebp - 0x60]
mov dword [ebp - 4], 0xffffffff
call fcn.10022100
lea eax, [ebp - 0x24]
mov dword [ebp - 0x24], 0x100266a0
lea ecx, [esi + 0x58]
push eax
call fcn.10071530
mov dword [ebp - 0x24], esi
lea ecx, [edi + 0x18]
mov dword [edi + 0x1690], 1
imul eax, dword [edi + 0x1690], 0xeb
add eax, 0x14
mov dword [edi + 0x167c], eax
mov dword [edi + 0x1684], 0xaf
mov eax, dword [edi + 0x2c]
mov dword [edi + 0x1694], eax
lea eax, [ebp - 0x24]
push eax
call fcn.10071530
push 0x100ae6e0
lea ecx, [ebp - 0x80]
lea esi, [edi + 0x1728]
call fcn.10070d00
push 0x100af344
lea ecx, [ebp - 0x60]
mov dword [ebp - 4], 0x102
call fcn.10022150
push str.chams_reflectivity
lea ecx, [ebp - 0x98]
mov byte [ebp - 4], 3
call fcn.10022150
lea eax, [ebp - 0x60]
mov byte [ebp - 4], 4
push eax
lea ecx, [edi + 0x1760]
call fcn.1003be50
lea eax, [ebp - 0x98]
mov byte [edi + 0x1791], 1
push eax
lea ecx, [edi + 0x17b0]
call fcn.1003be50
xor eax, eax
mov dword [edi + 0x179c], 0
cmp byte [edi + 0x1791], al
mov ecx, 0xf
mov dword [edi + 0x17a0], 0x42c80000
cmovne eax, ecx
mov dword [edi + 0x1798], 0x42860000
mov dword [edi + 0x17e0], eax
lea ecx, [edi + 0x17c8]
add eax, 8
mov dword [edi + 0x17ac], 0
mov dword [edi + 0x1738], eax
mov dword [edi + 0x173c], eax
lea eax, [ebp - 0x80]
push eax
mov dword [edi + 0x17a4], 0x3f800000
call fcn.10070cd0
lea ecx, [ebp - 0x98]
call fcn.10022100
lea ecx, [ebp - 0x60]
call fcn.10022100
lea ecx, [ebp - 0x80]
mov dword [ebp - 4], 0xffffffff
call fcn.10043260
lea eax, [ebp - 0x24]
mov dword [ebp - 0x24], 0x100266a0
lea ecx, [esi + 0x58]
push eax
call fcn.10071530
mov dword [ebp - 0x24], esi
mov dword [edi + 0x1740], 1
imul eax, dword [edi + 0x1740], 0xeb
add eax, 0x14
mov dword [edi + 0x172c], eax
mov dword [edi + 0x1734], 0xaf
mov eax, dword [edi + 0x2c]
lea ecx, [edi + 0x18]
mov dword [edi + 0x1744], eax
lea eax, [ebp - 0x24]
push eax
call fcn.10071530
push 0x100ae6e0
lea ecx, [ebp - 0x80]
lea esi, [edi + 0x17e4]
call fcn.10070d00
push 0x100af36c
lea ecx, [ebp - 0x60]
mov dword [ebp - 4], 0x105
call fcn.10022150
push str.chams_enemy_shine
lea ecx, [ebp - 0x98]
mov byte [ebp - 4], 6
call fcn.10022150
lea eax, [ebp - 0x60]
mov byte [ebp - 4], 7
push eax
lea ecx, [edi + 0x181c]
call fcn.1003be50
lea eax, [ebp - 0x98]
mov byte [edi + 0x184d], 1
push eax
lea ecx, [edi + 0x186c]
call fcn.1003be50
xor eax, eax
mov dword [edi + 0x1858], 0
cmp byte [edi + 0x184d], al
mov ecx, 0xf
mov dword [edi + 0x185c], 0x42c80000
cmovne eax, ecx
mov dword [edi + 0x1854], 0x41200000
mov dword [edi + 0x189c], eax
lea ecx, [edi + 0x1884]
add eax, 8
mov dword [edi + 0x1868], 0
mov dword [edi + 0x17f4], eax
mov dword [edi + 0x17f8], eax
lea eax, [ebp - 0x80]
push eax
mov dword [edi + 0x1860], 0x3f800000
call fcn.10070cd0
lea ecx, [ebp - 0x98]
call fcn.10022100
lea ecx, [ebp - 0x60]
call fcn.10022100
lea ecx, [ebp - 0x80]
mov dword [ebp - 4], 0xffffffff
call fcn.10043260
lea eax, [ebp - 0x24]
mov dword [ebp - 0x24], 0x100266a0
lea ecx, [esi + 0x58]
push eax
call fcn.10071530
mov dword [ebp - 0x24], esi
lea ecx, [edi + 0x18]
mov dword [edi + 0x17fc], 1
imul eax, dword [edi + 0x17fc], 0xeb
add eax, 0x14
mov dword [edi + 0x17e8], eax
mov dword [edi + 0x17f0], 0xaf
mov eax, dword [edi + 0x2c]
mov dword [edi + 0x1800], eax
lea eax, [ebp - 0x24]
push eax
call fcn.10071530
push 0x100ae6e0
lea ecx, [ebp - 0x80]
lea esi, [edi + 0x18a0]
call fcn.10070d00
push 0x100af394
lea ecx, [ebp - 0x60]
mov dword [ebp - 4], 0x108
call fcn.10022150
push str.chams_enemy_rim
lea ecx, [ebp - 0x98]
mov byte [ebp - 4], 9
call fcn.10022150
lea eax, [ebp - 0x60]
mov byte [ebp - 4], 0xa
push eax
lea ecx, [edi + 0x18d8]
call fcn.1003be50
lea eax, [ebp - 0x98]
mov byte [edi + 0x1909], 1
push eax
lea ecx, [edi + 0x1928]
call fcn.1003be50
xor eax, eax
mov dword [edi + 0x1914], 0
cmp byte [edi + 0x1909], al
mov ecx, 0xf
mov dword [edi + 0x1918], 0x42c80000
cmovne eax, ecx
mov dword [edi + 0x1910], 0x41200000
mov dword [edi + 0x1958], eax
lea ecx, [edi + 0x1940]
add eax, 8
mov dword [edi + 0x1924], 0
mov dword [edi + 0x18b0], eax
mov dword [edi + 0x18b4], eax
lea eax, [ebp - 0x80]
push eax
mov dword [edi + 0x191c], 0x3f800000
call fcn.10070cd0
lea ecx, [ebp - 0x98]
call fcn.10022100
lea ecx, [ebp - 0x60]
call fcn.10022100
lea ecx, [ebp - 0x80]
mov dword [ebp - 4], 0xffffffff
call fcn.10043260
lea eax, [ebp - 0x24]
mov dword [ebp - 0x24], 0x100266a0
lea ecx, [esi + 0x58]
push eax
call fcn.100708f0
mov dword [ebp - 0x24], esi
lea ecx, [edi + 0x18]
mov dword [edi + 0x18b8], 1
imul eax, dword [edi + 0x18b8], 0xeb
add eax, 0x14
mov dword [edi + 0x18a4], eax
mov dword [edi + 0x18ac], 0xaf
mov eax, dword [edi + 0x2c]
mov dword [edi + 0x18bc], eax
lea eax, [ebp - 0x24]
push eax
call fcn.100708f0
lea ecx, [ebp - 0xb1]
call fcn.10035de0
push str.visible
lea ecx, [ebp - 0x104]
mov esi, eax
call fcn.10022150
push str.invisible
lea ecx, [ebp - 0xec]
mov dword [ebp - 4], 0x10b
call fcn.10022150
lea eax, [ebp - 0xd4]
mov dword [ebp - 4], 0x10c
push eax
lea eax, [ebp - 0x104]
push eax
lea ecx, [ebp - 0x20]
call fcn.100708d0
push esi
lea ecx, [ebp - 0xc8]
push dword [eax + 4]
push dword [eax]
call fcn.10070920
push 0x100af3b8
lea ecx, [ebp - 0x60]
mov byte [ebp - 4], 0xd
call fcn.10022150
push str.chams_friendly
lea ecx, [ebp - 0x98]
mov byte [ebp - 4], 0xe
call fcn.10022150
lea ecx, [ebp - 0x78]
call fcn.10022cd0
lea eax, [ebp - 0x60]
mov byte [ebp - 4], 0x10
push eax
lea ecx, [edi + 0x1da0]
call fcn.1003be50
lea eax, [ebp - 0x98]
mov byte [edi + 0x1dd1], 1
push eax
lea ecx, [edi + 0x1dd8]
call fcn.1003be50
xor eax, eax
mov ecx, 0xf
cmp byte [edi + 0x1dd1], al
cmovne eax, ecx
lea ecx, [ebp - 0xc8]
mov dword [edi + 0x1e0c], eax
add eax, 0x14
mov dword [edi + 0x1d78], eax
mov dword [edi + 0x1d7c], eax
call fcn.10021750
lea ecx, [ebp - 0xc8]
mov esi, eax
call fcn.10021740
mov ecx, eax
lea eax, [edi + 0x1df0]
mov dword [ebp - 0x2c], ecx
mov dword [ebp - 0x24], eax
cmp esi, ecx
je 0x10054c03
mov edi, eax
nop dword [eax + eax]
push esi
mov ecx, edi
call fcn.10042f50
add esi, 0x18
cmp esi, dword [ebp - 0x2c]
jne 0x10054bf0
mov edi, dword [ebp - 0x34]
lea ecx, [ebp - 0x78]
call fcn.10021750
mov esi, eax
lea ecx, [ebp - 0x78]
mov dword [ebp - 0x28], esi
call fcn.10021740
mov dword [ebp - 0x24], eax
cmp esi, eax
je 0x10054ccd
lea eax, [edi + 0x1e00]
nop dword [eax]
mov ecx, dword [esi]
mov dword [ebp - 0x18], ecx
lea ecx, [ebp - 0x40]
push ecx
mov ecx, eax
call fcn.10021760
lea ecx, [edi + 0x1e00]
mov esi, dword [eax]
lea eax, [ebp - 0x64]
push eax
call fcn.10021770
push esi
lea edx, [ebp - 0x18]
lea ecx, [ebp - 0xd0]
push dword [eax]
call fcn.100226d0
add esp, 8
lea ecx, [edi + 0x1e00]
mov esi, eax
lea eax, [ebp - 0xcc]
push eax
call fcn.10021760
push eax
mov ecx, esi
call fcn.10021720
lea ecx, [edi + 0x1df0]
mov byte [ebp - 0x2d], al
call fcn.10026720
cmp dword [ebp - 0x18], eax
jae 0x10054ca3
lea eax, [ebp - 0x18]
push eax
lea ecx, [edi + 0x1e00]
call fcn.10035620
cmp byte [ebp - 0x2d], 0
je 0x10054cb5
mov eax, dword [edi + 0x1dcc]
test eax, eax
je 0x10054cb5
call eax
mov esi, dword [ebp - 0x28]
lea eax, [edi + 0x1e00]
add esi, 4
mov dword [ebp - 0x28], esi
cmp esi, dword [ebp - 0x24]
jne 0x10054c30
lea ecx, [ebp - 0x78]
call fcn.10021780
lea ecx, [ebp - 0x98]
call fcn.10022100
lea ecx, [ebp - 0x60]
call fcn.10022100
lea ecx, [ebp - 0xc8]
call fcn.10042f80
push fcn.10022100
push 2
push 0x18
lea eax, [ebp - 0x104]
mov dword [ebp - 4], 0xffffffff
push eax
call fcn.1009dc72
lea eax, [ebp - 0x24]
mov dword [ebp - 0x24], 0x100266c0
lea esi, [edi + 0x1d68]
lea ecx, [esi + 0x58]
push eax
call fcn.100708f0
mov dword [ebp - 0x24], esi
lea ecx, [edi + 0x18]
mov dword [edi + 0x1d80], 1
imul eax, dword [edi + 0x1d80], 0xeb
add eax, 0x14
mov dword [edi + 0x1d6c], eax
mov dword [edi + 0x1d74], 0xaf
mov eax, dword [edi + 0x2c]
mov dword [edi + 0x1d84], eax
lea eax, [ebp - 0x24]
push eax
call fcn.100708f0
lea ecx, [ebp - 0x2d]
call fcn.10035de0
push str.material
lea ecx, [ebp - 0x198]
mov esi, eax
call fcn.10022150
push str.flat
lea ecx, [ebp - 0x180]
mov dword [ebp - 4], 0x111
call fcn.10022150
push str.metallic
lea ecx, [ebp - 0x168]
mov byte [ebp - 4], 0x12
call fcn.10022150
push str.gloss
lea ecx, [ebp - 0x150]
mov byte [ebp - 4], 0x13
call fcn.10022150
push str.glow
lea ecx, [ebp - 0x138]
mov byte [ebp - 4], 0x14
call fcn.10022150
push str.outline_glow
lea ecx, [ebp - 0x120]
mov byte [ebp - 4], 0x15
call fcn.10022150
lea eax, [ebp - 0x108]
mov dword [ebp - 4], 0x116
push eax
lea eax, [ebp - 0x198]
push eax
lea ecx, [ebp - 0x44]
call fcn.100708d0
push esi
lea ecx, [ebp - 0x74]
push dword [eax + 4]
push dword [eax]
call fcn.10070920
mov byte [ebp - 4], 0x17
lea ecx, [ebp - 0x60]
push str.chams_friendly_mat
call fcn.10022150
push str.chams_friendly_material
lea ecx, [ebp - 0x98]
mov byte [ebp - 4], 0x18
call fcn.10022150
lea eax, [ebp - 0x60]
mov byte [ebp - 4], 0x19
push eax
lea ecx, [edi + 0x1e48]
call fcn.1003be50
lea eax, [ebp - 0x98]
mov byte [edi + 0x1e79], 1
push eax
lea ecx, [edi + 0x1e80]
call fcn.1003be50
xor eax, eax
mov ecx, 0xf
cmp byte [edi + 0x1e79], al
cmovne eax, ecx
lea ecx, [ebp - 0x74]
mov dword [edi + 0x1eac], eax
add eax, 0x14
mov dword [edi + 0x1e20], eax
mov dword [edi + 0x1e24], eax
call fcn.10021750
lea ecx, [ebp - 0x74]
mov esi, eax
call fcn.10021740
mov dword [ebp - 0x24], eax
lea ecx, [edi + 0x1e98]
mov dword [ebp - 0x28], ecx
cmp esi, eax
je 0x10054ec6
mov edi, ecx
nop dword [eax]
push esi
mov ecx, edi
call fcn.10042f50
add esi, 0x18
cmp esi, dword [ebp - 0x24]
jne 0x10054eb0
mov edi, dword [ebp - 0x34]
mov ecx, dword [ebp - 0x28]
call fcn.10026720
test eax, eax
je 0x10054ed9
mov dword [edi + 0x1ea8], 0
lea ecx, [ebp - 0x98]
call fcn.10022100
lea ecx, [ebp - 0x60]
call fcn.10022100
lea ecx, [ebp - 0x74]
call fcn.10042f80
push fcn.10022100
push 6
push 0x18
lea eax, [ebp - 0x198]
mov dword [ebp - 4], 0xffffffff
push eax
call fcn.1009dc72
lea eax, [ebp - 0x24]
mov dword [ebp - 0x24], 0x100266c0
lea esi, [edi + 0x1e10]
lea ecx, [esi + 0x58]
push eax
call fcn.100708f0
mov dword [ebp - 0x24], esi
lea ecx, [edi + 0x18]
mov dword [edi + 0x1e28], 1
imul eax, dword [edi + 0x1e28], 0xeb
add eax, 0x14
mov dword [edi + 0x1e14], eax
mov dword [edi + 0x1e1c], 0xaf
mov eax, dword [edi + 0x2c]
mov dword [edi + 0x1e2c], eax
lea eax, [ebp - 0x24]
push eax
call fcn.100708f0
push str.chams_friendly_vis
lea ecx, [ebp - 0x60]
lea esi, [edi + 0x1eb0]
call fcn.10022150
push str.color_visible
lea ecx, [ebp - 0x98]
mov dword [ebp - 4], 0x11a
call fcn.10022150
lea eax, [ebp - 0x98]
mov byte [ebp - 4], 0x1b
push eax
lea ecx, [edi + 0x1f20]
call fcn.1003be50
lea eax, [ebp - 0x60]
push eax
lea ecx, [edi + 0x1ee8]
call fcn.1003be50
lea ecx, [ebp - 0x98]
mov dword [edi + 0x1f38], 0xff00c8ff
mov dword [edi + 0x1f4c], 0
call fcn.10022100
lea ecx, [ebp - 0x60]
mov dword [ebp - 4], 0xffffffff
call fcn.10022100
lea eax, [ebp - 0x24]
mov dword [ebp - 0x24], 0x100266c0
lea ecx, [esi + 0x58]
push eax
call fcn.100708f0
mov dword [ebp - 0x24], esi
lea ecx, [edi + 0x18]
mov dword [edi + 0x1ec8], 1
imul eax, dword [edi + 0x1ec8], 0xeb
add eax, 0x14
mov dword [edi + 0x1eb4], eax
mov dword [edi + 0x1ebc], 0xaf
mov eax, dword [edi + 0x2c]
mov dword [edi + 0x1ecc], eax
lea eax, [ebp - 0x24]
push eax
call fcn.100708f0
push str.chams_friendly_invis
lea ecx, [ebp - 0x60]
lea esi, [edi + 0x1f60]
call fcn.10022150
mov dword [ebp - 4], 0x11c
push str.color_invisible
lea ecx, [ebp - 0x98]
call fcn.10022150
lea eax, [ebp - 0x98]
mov byte [ebp - 4], 0x1d
push eax
lea ecx, [edi + 0x1fd0]
call fcn.1003be50
lea eax, [ebp - 0x60]
push eax
lea ecx, [edi + 0x1f98]
call fcn.1003be50
lea ecx, [ebp - 0x98]
mov dword [edi + 0x1fe8], 0xff0032ff
mov dword [edi + 0x1ffc], 0
call fcn.10022100
lea ecx, [ebp - 0x60]
mov dword [ebp - 4], 0xffffffff
call fcn.10022100
lea eax, [ebp - 0x24]
mov dword [ebp - 0x24], 0x100266c0
lea ecx, [esi + 0x58]
push eax
call fcn.100708f0
mov dword [ebp - 0x24], esi
lea ecx, [edi + 0x18]
mov dword [edi + 0x1f78], 1
imul eax, dword [edi + 0x1f78], 0xeb
add eax, 0x14
mov dword [edi + 0x1f64], eax
mov dword [edi + 0x1f6c], 0xaf
mov eax, dword [edi + 0x2c]
mov dword [edi + 0x1f7c], eax
lea eax, [ebp - 0x24]
push eax
call fcn.100708f0
push 0x100ae6e0
lea ecx, [ebp - 0x60]
lea esi, [edi + 0x2010]
call fcn.10070d00
push str.chams_friendly_blend
lea ecx, [ebp - 0x98]
mov dword [ebp - 4], 0x11e
call fcn.10022150
push 0x100abd7e
lea ecx, [ebp - 0x80]
mov byte [ebp - 4], 0x1f
call fcn.10022150
lea eax, [ebp - 0x98]
mov byte [ebp - 4], 0x20
push eax
lea ecx, [edi + 0x2048]
call fcn.1003be50
lea eax, [ebp - 0x60]
mov byte [edi + 0x2079], 0
push eax
lea ecx, [edi + 0x20b0]
mov dword [edi + 0x20c8], 0
mov dword [edi + 0x2020], 8
mov dword [edi + 0x2024], 8
mov dword [edi + 0x2084], 0
mov dword [edi + 0x2088], 0x42c80000
mov dword [edi + 0x2080], 0x42c80000
mov dword [edi + 0x2094], 0
mov dword [edi + 0x208c], 0x3f800000
call fcn.10070cd0
lea ecx, [ebp - 0x80]
call fcn.10022100
lea ecx, [ebp - 0x98]
call fcn.10022100
lea ecx, [ebp - 0x60]
mov dword [ebp - 4], 0xffffffff
call fcn.10043260
lea eax, [ebp - 0x24]
mov dword [ebp - 0x24], 0x100266c0
lea ecx, [esi + 0x58]
push eax
call fcn.100708f0
mov dword [ebp - 0x24], esi
lea ecx, [edi + 0x18]
mov dword [edi + 0x2028], 1
imul eax, dword [edi + 0x2028], 0xeb
add eax, 0x14
mov dword [edi + 0x2014], eax
mov dword [edi + 0x201c], 0xaf
mov eax, dword [edi + 0x2c]
mov dword [edi + 0x202c], eax
lea eax, [ebp - 0x24]
push eax
call fcn.100708f0
push str.chams_history
lea ecx, [ebp - 0x60]
lea esi, [edi + 0x1a18]
call fcn.10022150
push 0x100af458
lea ecx, [ebp - 0x98]
mov dword [ebp - 4], 0x121
call fcn.10022150
lea eax, [ebp - 0x60]
mov byte [ebp - 4], 0x22
push eax
lea ecx, [edi + 0x1a50]
call fcn.1003be50
lea eax, [ebp - 0x98]
mov byte [edi + 0x1a81], 1
push eax
lea ecx, [edi + 0x1a88]
call fcn.1003be50
lea ecx, [ebp - 0x98]
mov byte [edi + 0x1a84], 0
call fcn.10022100
lea ecx, [ebp - 0x60]
mov dword [ebp - 4], 0xffffffff
call fcn.10022100
lea eax, [ebp - 0x24]
mov dword [ebp - 0x24], 0x100266d0
lea ecx, [esi + 0x58]
push eax
call fcn.100708f0
mov dword [ebp - 0x24], esi
lea ecx, [edi + 0x18]
mov dword [edi + 0x1a30], 1
imul eax, dword [edi + 0x1a30], 0xeb
add eax, 0x14
mov dword [edi + 0x1a1c], eax
mov dword [edi + 0x1a24], 0xaf
mov eax, dword [edi + 0x2c]
mov dword [edi + 0x1a34], eax
lea eax, [ebp - 0x24]
push eax
call fcn.100708f0
lea ecx, [ebp - 0xb1]
call fcn.10035de0
push str.material
lea ecx, [ebp - 0x198]
mov esi, eax
call fcn.10022150
push str.flat
lea ecx, [ebp - 0x180]
mov dword [ebp - 4], 0x123
call fcn.10022150
push str.metallic
lea ecx, [ebp - 0x168]
mov byte [ebp - 4], 0x24
call fcn.10022150
push str.gloss
lea ecx, [ebp - 0x150]
mov byte [ebp - 4], 0x25
call fcn.10022150
push str.glow
lea ecx, [ebp - 0x138]
mov byte [ebp - 4], 0x26
call fcn.10022150
push str.outline_glow
lea ecx, [ebp - 0x120]
mov byte [ebp - 4], 0x27
call fcn.10022150
lea eax, [ebp - 0x108]
mov dword [ebp - 4], 0x128
push eax
lea eax, [ebp - 0x198]
push eax
lea ecx, [ebp - 0x44]
call fcn.100708d0
push esi
lea ecx, [ebp - 0x74]
push dword [eax + 4]
push dword [eax]
call fcn.10070920
push str.chams_enemy_history_mat
lea ecx, [ebp - 0x60]
mov byte [ebp - 4], 0x29
call fcn.10022150
push str.chams_history_material
lea ecx, [ebp - 0x98]
mov byte [ebp - 4], 0x2a
call fcn.10022150
lea eax, [ebp - 0x60]
mov byte [ebp - 4], 0x2b
push eax
lea ecx, [edi + 0x1b94]
call fcn.1003be50
lea eax, [ebp - 0x98]
mov byte [edi + 0x1bc5], 1
push eax
lea ecx, [edi + 0x1bcc]
call fcn.1003be50
xor eax, eax
mov ecx, 0xf
cmp byte [edi + 0x1bc5], al
cmovne eax, ecx
lea ecx, [ebp - 0x74]
mov dword [edi + 0x1bf8], eax
add eax, 0x14
mov dword [edi + 0x1b6c], eax
mov dword [edi + 0x1b70], eax
call fcn.10021750
lea ecx, [ebp - 0x74]
mov esi, eax
call fcn.10021740
mov dword [ebp - 0x24], eax
lea ecx, [edi + 0x1be4]
mov dword [ebp - 0x28], ecx
cmp esi, eax
je 0x10055459
mov edi, ecx
push esi
mov ecx, edi
call fcn.10042f50
add esi, 0x18
cmp esi, dword [ebp - 0x24]
jne 0x10055443
mov edi, dword [ebp - 0x34]
mov ecx, dword [ebp - 0x28]
call fcn.10026720
test eax, eax
je 0x1005546c
mov dword [edi + 0x1bf4], 0
lea ecx, [ebp - 0x98]
call fcn.10022100
lea ecx, [ebp - 0x60]
call fcn.10022100
lea ecx, [ebp - 0x74]
call fcn.10042f80
push fcn.10022100
push 6
push 0x18
lea eax, [ebp - 0x198]
mov dword [ebp - 4], 0xffffffff
push eax
call fcn.1009dc72
lea eax, [ebp - 0x24]
mov dword [ebp - 0x24], 0x100266d0
lea esi, [edi + 0x1b5c]
lea ecx, [esi + 0x58]
push eax
call fcn.100708f0
mov dword [ebp - 0x24], esi
lea ecx, [edi + 0x18]
mov dword [edi + 0x1b74], 1
imul eax, dword [edi + 0x1b74], 0xeb
add eax, 0x14
mov dword [edi + 0x1b60], eax
mov dword [edi + 0x1b68], 0xaf
mov eax, dword [edi + 0x2c]
mov dword [edi + 0x1b78], eax
lea eax, [ebp - 0x24]
push eax
call fcn.100708f0
push str.chams_history_col
lea ecx, [ebp - 0x60]
lea esi, [edi + 0x1bfc]
call fcn.10022150
push str.color
lea ecx, [ebp - 0x98]
mov dword [ebp - 4], 0x12c
call fcn.10022150
lea eax, [ebp - 0x98]
mov byte [ebp - 4], 0x2d
push eax
lea ecx, [edi + 0x1c6c]
call fcn.1003be50
lea eax, [ebp - 0x60]
push eax
lea ecx, [edi + 0x1c34]
call fcn.1003be50
lea ecx, [ebp - 0x98]
mov dword [edi + 0x1c84], 0xff000000
mov dword [edi + 0x1c98], 0
call fcn.10022100
lea ecx, [ebp - 0x60]
mov dword [ebp - 4], 0xffffffff
call fcn.10022100
lea eax, [ebp - 0x24]
mov dword [ebp - 0x24], 0x100266d0
lea ecx, [esi + 0x58]
push eax
call fcn.100708f0
mov dword [ebp - 0x24], esi
lea ecx, [edi + 0x18]
mov dword [edi + 0x1c14], 1
imul eax, dword [edi + 0x1c14], 0xeb
add eax, 0x14
mov dword [edi + 0x1c00], eax
mov dword [edi + 0x1c08], 0xaf
mov eax, dword [edi + 0x2c]
mov dword [edi + 0x1c18], eax
lea eax, [ebp - 0x24]
push eax
call fcn.100708f0
push 0x100ae6e0
lea ecx, [ebp - 0x60]
lea esi, [edi + 0x1cac]
call fcn.10070d00
mov dword [ebp - 4], 0x12e
push str.chams_history_blend
lea ecx, [ebp - 0x98]
call fcn.10022150
push 0x100abd7e
lea ecx, [ebp - 0x80]
mov byte [ebp - 4], 0x2f
call fcn.10022150
lea eax, [ebp - 0x98]
mov byte [ebp - 4], 0x30
push eax
lea ecx, [edi + 0x1ce4]
call fcn.1003be50
lea eax, [ebp - 0x60]
mov byte [edi + 0x1d15], 0
push eax
lea ecx, [edi + 0x1d4c]
mov dword [edi + 0x1d64], 0
mov dword [edi + 0x1cbc], 8
mov dword [edi + 0x1cc0], 8
mov dword [edi + 0x1d20], 0
mov dword [edi + 0x1d24], 0x42c80000
mov dword [edi + 0x1d1c], 0x42c80000
mov dword [edi + 0x1d30], 0
mov dword [edi + 0x1d28], 0x3f800000
call fcn.10070cd0
lea ecx, [ebp - 0x80]
call fcn.10022100
lea ecx, [ebp - 0x98]
call fcn.10022100
lea ecx, [ebp - 0x60]
mov dword [ebp - 4], 0xffffffff
call fcn.10043260
lea eax, [ebp - 0x24]
mov dword [ebp - 0x24], 0x100266d0
lea ecx, [esi + 0x58]
push eax
call fcn.100708f0
mov dword [ebp - 0x24], esi
lea ecx, [edi + 0x18]
mov dword [edi + 0x1cc4], 1
imul eax, dword [edi + 0x1cc4], 0xeb
add eax, 0x14
mov dword [edi + 0x1cb0], eax
mov dword [edi + 0x1cb8], 0xaf
mov eax, dword [edi + 0x2c]
mov dword [edi + 0x1cc8], eax
lea eax, [ebp - 0x24]
push eax
call fcn.100708f0
push str.chams_fake
lea ecx, [ebp - 0x60]
lea esi, [edi + 0x20cc]
call fcn.10022150
push str.fake_chams
lea ecx, [ebp - 0x98]
mov dword [ebp - 4], 0x131
call fcn.10022150
lea eax, [ebp - 0x60]
mov byte [ebp - 4], 0x32
push eax
lea ecx, [edi + 0x2104]
call fcn.1003be50
lea eax, [ebp - 0x98]
mov byte [edi + 0x2135], 1
push eax
lea ecx, [edi + 0x213c]
call fcn.1003be50
lea ecx, [ebp - 0x98]
mov byte [edi + 0x2138], 0
call fcn.10022100
lea ecx, [ebp - 0x60]
mov dword [ebp - 4], 0xffffffff
call fcn.10022100
lea eax, [ebp - 0x24]
mov dword [ebp - 0x24], 0x100266e0
lea ecx, [esi + 0x58]
push eax
call fcn.100708f0
mov dword [ebp - 0x24], esi
lea ecx, [edi + 0x18]
mov dword [edi + 0x20e4], 1
imul eax, dword [edi + 0x20e4], 0xeb
add eax, 0x14
mov dword [edi + 0x20d0], eax
mov dword [edi + 0x20d8], 0xaf
mov eax, dword [edi + 0x2c]
mov dword [edi + 0x20e8], eax
lea eax, [ebp - 0x24]
push eax
call fcn.100708f0
lea ecx, [ebp - 0x2d]
call fcn.10035de0
push str.material
lea ecx, [ebp - 0x198]
mov esi, eax
call fcn.10022150
push str.flat
lea ecx, [ebp - 0x180]
mov dword [ebp - 4], 0x133
call fcn.10022150
push str.metallic
lea ecx, [ebp - 0x168]
mov byte [ebp - 4], 0x34
call fcn.10022150
push str.gloss
lea ecx, [ebp - 0x150]
mov byte [ebp - 4], 0x35
call fcn.10022150
push str.glow
lea ecx, [ebp - 0x138]
mov byte [ebp - 4], 0x36
call fcn.10022150
push str.outline_glow
lea ecx, [ebp - 0x120]
mov byte [ebp - 4], 0x37
call fcn.10022150
lea eax, [ebp - 0x108]
mov dword [ebp - 4], 0x138
push eax
lea eax, [ebp - 0x198]
push eax
lea ecx, [ebp - 0x44]
call fcn.100708d0
push esi
lea ecx, [ebp - 0x74]
push dword [eax + 4]
push dword [eax]
call fcn.10070920
push str.chams_fake_mat
lea ecx, [ebp - 0x60]
mov byte [ebp - 4], 0x39
call fcn.10022150
push str.chams_material
lea ecx, [ebp - 0x98]
mov byte [ebp - 4], 0x3a
call fcn.10022150
lea eax, [ebp - 0x60]
mov byte [ebp - 4], 0x3b
push eax
lea ecx, [edi + 0x218c]
call fcn.1003be50
lea eax, [ebp - 0x98]
mov byte [edi + 0x21bd], 1
push eax
lea ecx, [edi + 0x21c4]
call fcn.1003be50
xor eax, eax
mov ecx, 0xf
cmp byte [edi + 0x21bd], al
cmovne eax, ecx
mov dword [edi + 0x21f0], eax
lea ecx, [ebp - 0x74]
add eax, 0x14
mov dword [edi + 0x2164], eax
mov dword [edi + 0x2168], eax
call fcn.10021750
lea ecx, [ebp - 0x74]
mov esi, eax
call fcn.10021740
mov dword [ebp - 0x24], eax
lea ecx, [edi + 0x21dc]
mov dword [ebp - 0x28], ecx
cmp esi, eax
je 0x1005591a
mov edi, ecx
push esi
mov ecx, edi
call fcn.10042f50
add esi, 0x18
cmp esi, dword [ebp - 0x24]
jne 0x10055904
mov edi, dword [ebp - 0x34]
mov ecx, dword [ebp - 0x28]
call fcn.10026720
test eax, eax
je 0x1005592d
mov dword [edi + 0x21ec], 0
lea ecx, [ebp - 0x98]
call fcn.10022100
lea ecx, [ebp - 0x60]
call fcn.10022100
lea ecx, [ebp - 0x74]
call fcn.10042f80
push fcn.10022100
push 6
push 0x18
lea eax, [ebp - 0x198]
mov dword [ebp - 4], 0xffffffff
push eax
call fcn.1009dc72
lea eax, [ebp - 0x24]
mov dword [ebp - 0x24], 0x100266e0
lea esi, [edi + 0x2154]
lea ecx, [esi + 0x58]
push eax
call fcn.100708f0
mov dword [ebp - 0x24], esi
lea ecx, [edi + 0x18]
mov dword [edi + 0x216c], 1
imul eax, dword [edi + 0x216c], 0xeb
add eax, 0x14
mov dword [edi + 0x2158], eax
mov dword [edi + 0x2160], 0xaf
mov eax, dword [edi + 0x2c]
mov dword [edi + 0x2170], eax
lea eax, [ebp - 0x24]
push eax
call fcn.100708f0
push str.chams_fake_col
lea ecx, [ebp - 0x60]
lea esi, [edi + 0x21f4]
call fcn.10022150
push str.color
lea ecx, [ebp - 0x98]
mov dword [ebp - 4], 0x13c
call fcn.10022150
lea eax, [ebp - 0x98]
mov byte [ebp - 4], 0x3d
push eax
lea ecx, [edi + 0x2264]
call fcn.1003be50
lea eax, [ebp - 0x60]
push eax
lea ecx, [edi + 0x222c]
call fcn.1003be50
lea ecx, [ebp - 0x98]
mov dword [edi + 0x227c], 0xff00c8ff
mov dword [edi + 0x2290], 0
call fcn.10022100
lea ecx, [ebp - 0x60]
mov dword [ebp - 4], 0xffffffff
call fcn.10022100
lea eax, [ebp - 0x24]
mov dword [ebp - 0x24], 0x100266e0
lea ecx, [esi + 0x58]
push eax
call fcn.100708f0
mov dword [ebp - 0x24], esi
lea ecx, [edi + 0x18]
mov dword [edi + 0x220c], 1
imul eax, dword [edi + 0x220c], 0xeb
add eax, 0x14
mov dword [edi + 0x21f8], eax
mov dword [edi + 0x2200], 0xaf
mov eax, dword [edi + 0x2c]
mov dword [edi + 0x2210], eax
lea eax, [ebp - 0x24]
push eax
call fcn.100708f0
push str.chams_fake_glow_col
lea ecx, [ebp - 0x60]
add edi, 0x22a4
call fcn.10022150
mov dword [ebp - 4], 0x13e
push str.glow_color
lea ecx, [ebp - 0x98]
call fcn.10022150
mov esi, dword [ebp - 0x34]
lea eax, [ebp - 0x98]
push eax
mov byte [ebp - 4], 0x3f
lea ecx, [esi + 0x2314]
call fcn.1003be50
lea eax, [ebp - 0x60]
push eax
lea ecx, [esi + 0x22dc]
call fcn.1003be50
lea ecx, [ebp - 0x98]
mov dword [esi + 0x232c], 0xff00c8ff
mov dword [esi + 0x2340], 0
call fcn.10022100
lea ecx, [ebp - 0x60]
mov dword [ebp - 4], 0xffffffff
call fcn.10022100
lea eax, [ebp - 0x24]
mov dword [ebp - 0x24], 0x100266e0
push eax
lea ecx, [edi + 0x58]
call fcn.100708f0
lea eax, [ebp - 0x24]
mov dword [ebp - 0x24], 0x10026700
push eax
lea ecx, [edi + 0x58]
call fcn.100708f0
mov dword [ebp - 0x24], edi
mov edi, esi
mov dword [edi + 0x22bc], 1
lea ecx, [edi + 0x18]
imul eax, dword [edi + 0x22bc], 0xeb
add eax, 0x14
mov dword [edi + 0x22a8], eax
mov dword [edi + 0x22b0], 0xaf
mov eax, dword [edi + 0x2c]
mov dword [edi + 0x22c0], eax
lea eax, [ebp - 0x24]
push eax
call fcn.100708f0
push 0x100ae6e0
lea ecx, [ebp - 0x60]
lea esi, [edi + 0x2354]
call fcn.10070d00
push str.chams_fake_blend
lea ecx, [ebp - 0x98]
mov dword [ebp - 4], 0x140
call fcn.10022150
push 0x100abd7e
lea ecx, [ebp - 0x80]
mov byte [ebp - 4], 0x41
call fcn.10022150
lea eax, [ebp - 0x98]
mov byte [ebp - 4], 0x42
push eax
lea ecx, [edi + 0x238c]
call fcn.1003be50
lea eax, [ebp - 0x60]
mov byte [edi + 0x23bd], 0
push eax
lea ecx, [edi + 0x23f4]
mov dword [edi + 0x240c], 0
mov dword [edi + 0x2364], 8
mov dword [edi + 0x2368], 8
mov dword [edi + 0x23c8], 0
mov dword [edi + 0x23cc], 0x42c80000
mov dword [edi + 0x23c4], 0x42c80000
mov dword [edi + 0x23d8], 0
mov dword [edi + 0x23d0], 0x3f800000
call fcn.10070cd0
lea ecx, [ebp - 0x80]
call fcn.10022100
lea ecx, [ebp - 0x98]
call fcn.10022100
mov dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0x60]
call fcn.10043260
lea eax, [ebp - 0x24]
mov dword [ebp - 0x24], 0x100266e0
lea ecx, [esi + 0x58]
push eax
call fcn.100708f0
mov dword [ebp - 0x24], esi
lea ecx, [edi + 0x18]
mov dword [edi + 0x236c], 1
imul eax, dword [edi + 0x236c], 0xeb
add eax, 0x14
mov dword [edi + 0x2358], eax
mov dword [edi + 0x2360], 0xaf
mov eax, dword [edi + 0x2c]
mov dword [edi + 0x2370], eax
lea eax, [ebp - 0x24]
push eax
call fcn.100708f0
push 0x100af52c
lea ecx, [ebp - 0x60]
lea esi, [edi + 0x24cc]
call fcn.10022150
push str.weapon_chams
lea ecx, [ebp - 0x98]
mov dword [ebp - 4], 0x143
call fcn.10022150
lea eax, [ebp - 0x60]
mov byte [ebp - 4], 0x44
push eax
lea ecx, [edi + 0x2504]
call fcn.1003be50
lea eax, [ebp - 0x98]
mov byte [edi + 0x2535], 1
push eax
lea ecx, [edi + 0x253c]
call fcn.1003be50
lea ecx, [ebp - 0x98]
mov byte [edi + 0x2538], 0
call fcn.10022100
lea ecx, [ebp - 0x60]
mov dword [ebp - 4], 0xffffffff
call fcn.10022100
lea eax, [ebp - 0x24]
mov dword [ebp - 0x24], 0x100266f0
lea ecx, [esi + 0x58]
push eax
call fcn.100708f0
mov dword [ebp - 0x24], esi
lea ecx, [edi + 0x18]
mov dword [edi + 0x24e4], 1
imul eax, dword [edi + 0x24e4], 0xeb
add eax, 0x14
mov dword [edi + 0x24d0], eax
mov dword [edi + 0x24d8], 0xaf
mov eax, dword [edi + 0x2c]
mov dword [edi + 0x24e8], eax
lea eax, [ebp - 0x24]
push eax
call fcn.100708f0
lea ecx, [ebp - 0xb1]
call fcn.10035de0
push str.material
lea ecx, [ebp - 0x198]
mov esi, eax
call fcn.10022150
push str.flat
lea ecx, [ebp - 0x180]
mov dword [ebp - 4], 0x145
call fcn.10022150
push str.metallic
lea ecx, [ebp - 0x168]
mov byte [ebp - 4], 0x46
call fcn.10022150
mov byte [ebp - 4], 0x47
push str.gloss
lea ecx, [ebp - 0x150]
call fcn.10022150
push str.glow
lea ecx, [ebp - 0x138]
mov byte [ebp - 4], 0x48
call fcn.10022150
push str.outline_glow
lea ecx, [ebp - 0x120]
mov byte [ebp - 4], 0x49
call fcn.10022150
lea eax, [ebp - 0x108]
mov dword [ebp - 4], 0x14a
push eax
lea eax, [ebp - 0x198]
push eax
lea ecx, [ebp - 0x44]
call fcn.100708d0
push esi
lea ecx, [ebp - 0x74]
push dword [eax + 4]
push dword [eax]
call fcn.10070920
push str.weapon_chams_mat
lea ecx, [ebp - 0x60]
mov byte [ebp - 4], 0x4b
call fcn.10022150
push str.weapon_material
lea ecx, [ebp - 0x98]
mov byte [ebp - 4], 0x4c
call fcn.10022150
lea eax, [ebp - 0x60]
mov byte [ebp - 4], 0x4d
push eax
lea ecx, [edi + 0x258c]
call fcn.1003be50
lea eax, [ebp - 0x98]
mov byte [edi + 0x25bd], 1
push eax
lea ecx, [edi + 0x25c4]
call fcn.1003be50
xor eax, eax
mov ecx, 0xf
cmp byte [edi + 0x25bd], al
cmovne eax, ecx
lea ecx, [ebp - 0x74]
mov dword [edi + 0x25f0], eax
add eax, 0x14
mov dword [edi + 0x2564], eax
mov dword [edi + 0x2568], eax
call fcn.10021750
lea ecx, [ebp - 0x74]
mov esi, eax
call fcn.10021740
mov dword [ebp - 0x24], eax
lea ecx, [edi + 0x25dc]
mov dword [ebp - 0x28], ecx
cmp esi, eax
je 0x10055ec6
mov edi, ecx
nop
push esi
mov ecx, edi
call fcn.10042f50
add esi, 0x18
cmp esi, dword [ebp - 0x24]
jne 0x10055eb0
mov edi, dword [ebp - 0x34]
mov ecx, dword [ebp - 0x28]
call fcn.10026720
test eax, eax
je 0x10055ed9
mov dword [edi + 0x25ec], 0
lea ecx, [ebp - 0x98]
call fcn.10022100
lea ecx, [ebp - 0x60]
call fcn.10022100
lea ecx, [ebp - 0x74]
call fcn.10042f80
push fcn.10022100
push 6
push 0x18
lea eax, [ebp - 0x198]
mov dword [ebp - 4], 0xffffffff
push eax
call fcn.1009dc72
lea eax, [ebp - 0x24]
mov dword [ebp - 0x24], 0x100266f0
lea esi, [edi + 0x2554]
lea ecx, [esi + 0x58]
push eax
call fcn.100708f0
mov dword [ebp - 0x24], esi
lea ecx, [edi + 0x18]
mov dword [edi + 0x256c], 1
imul eax, dword [edi + 0x256c], 0xeb
add eax, 0x14
mov dword [edi + 0x2558], eax
mov dword [edi + 0x2560], 0xaf
mov eax, dword [edi + 0x2c]
mov dword [edi + 0x2570], eax
lea eax, [ebp - 0x24]
push eax
call fcn.100708f0
push str.weapon_chams_col
lea ecx, [ebp - 0x60]
lea esi, [edi + 0x25f4]
call fcn.10022150
push str.weapon_color
lea ecx, [ebp - 0x98]
mov dword [ebp - 4], 0x14e
call fcn.10022150
lea eax, [ebp - 0x98]
mov byte [ebp - 4], 0x4f
push eax
lea ecx, [edi + 0x2664]
call fcn.1003be50
lea eax, [ebp - 0x60]
push eax
lea ecx, [edi + 0x262c]
call fcn.1003be50
lea ecx, [ebp - 0x98]
mov dword [edi + 0x267c], 0xff000000
mov dword [edi + 0x2690], 0
call fcn.10022100
lea ecx, [ebp - 0x60]
mov dword [ebp - 4], 0xffffffff
call fcn.10022100
lea eax, [ebp - 0x24]
mov dword [ebp - 0x24], 0x100266f0
lea ecx, [esi + 0x58]
push eax
call fcn.100708f0
mov dword [ebp - 0x24], esi
lea ecx, [edi + 0x18]
mov dword [edi + 0x260c], 1
imul eax, dword [edi + 0x260c], 0xeb
add eax, 0x14
mov dword [edi + 0x25f8], eax
mov dword [edi + 0x2600], 0xaf
mov eax, dword [edi + 0x2c]
mov dword [edi + 0x2610], eax
lea eax, [ebp - 0x24]
push eax
call fcn.100708f0
push 0x100ae6e0
lea ecx, [ebp - 0x60]
lea esi, [edi + 0x2754]
call fcn.10070d00
mov dword [ebp - 4], 0x150
push str.weapon_chams_blend
lea ecx, [ebp - 0x98]
call fcn.10022150
push 0x100abd7e
lea ecx, [ebp - 0x80]
mov byte [ebp - 4], 0x51
call fcn.10022150
lea eax, [ebp - 0x98]
mov byte [ebp - 4], 0x52
push eax
lea ecx, [edi + 0x278c]
call fcn.1003be50
lea eax, [ebp - 0x60]
mov byte [edi + 0x27bd], 0
push eax
lea ecx, [edi + 0x27f4]
mov dword [edi + 0x280c], 0
mov dword [edi + 0x2764], 8
mov dword [edi + 0x2768], 8
mov dword [edi + 0x27c8], 0x3f800000
mov dword [edi + 0x27cc], 0x437f0000
mov dword [edi + 0x27c4], 0x437f0000
mov dword [edi + 0x27d8], 0
mov dword [edi + 0x27d0], 0x3f800000
call fcn.10070cd0
lea ecx, [ebp - 0x80]
call fcn.10022100
lea ecx, [ebp - 0x98]
call fcn.10022100
lea ecx, [ebp - 0x60]
mov dword [ebp - 4], 0xffffffff
call fcn.10043260
lea eax, [ebp - 0x24]
mov dword [ebp - 0x24], 0x100266f0
lea ecx, [esi + 0x58]
push eax
call fcn.100708f0
mov dword [ebp - 0x24], esi
lea ecx, [edi + 0x18]
mov dword [edi + 0x276c], 1
imul eax, dword [edi + 0x276c], 0xeb
add eax, 0x14
mov dword [edi + 0x2758], eax
mov dword [edi + 0x2760], 0xaf
mov eax, dword [edi + 0x2c]
mov dword [edi + 0x2770], eax
lea eax, [ebp - 0x24]
push eax
call fcn.100708f0
push str.weapon_chams_col2
lea ecx, [ebp - 0x60]
lea esi, [edi + 0x26a4]
call fcn.10022150
push str.weapon_color_2
lea ecx, [ebp - 0x98]
mov dword [ebp - 4], 0x153
call fcn.10022150
lea eax, [ebp - 0x98]
mov byte [ebp - 4], 0x54
push eax
lea ecx, [edi + 0x2714]
call fcn.1003be50
lea eax, [ebp - 0x60]
push eax
lea ecx, [edi + 0x26dc]
call fcn.1003be50
lea ecx, [ebp - 0x98]
mov dword [edi + 0x272c], 0xffffffff
mov dword [edi + 0x2740], 0
call fcn.10022100
lea ecx, [ebp - 0x60]
mov dword [ebp - 4], 0xffffffff
call fcn.10022100
lea eax, [ebp - 0x24]
mov dword [ebp - 0x24], 0x100266f0
lea ecx, [esi + 0x58]
push eax
call fcn.100708f0
mov dword [ebp - 0x24], esi
lea ecx, [edi + 0x18]
mov dword [edi + 0x26bc], 1
imul eax, dword [edi + 0x26bc], 0xeb
add eax, 0x14
mov dword [edi + 0x26a8], eax
mov dword [edi + 0x26b0], 0xaf
mov eax, dword [edi + 0x2c]
mov dword [edi + 0x26c0], eax
lea eax, [ebp - 0x24]
push eax
call fcn.100708f0
push 0x100ae6e0
lea ecx, [ebp - 0x60]
lea esi, [edi + 0x2810]
call fcn.10070d00
push str.weapon_chams_blend2
lea ecx, [ebp - 0x98]
mov dword [ebp - 4], 0x155
call fcn.10022150
push 0x100abd7e
lea ecx, [ebp - 0x80]
mov byte [ebp - 4], 0x56
call fcn.10022150
lea eax, [ebp - 0x98]
mov byte [ebp - 4], 0x57
push eax
lea ecx, [edi + 0x2848]
call fcn.1003be50
lea eax, [ebp - 0x60]
mov byte [edi + 0x2879], 0
push eax
lea ecx, [edi + 0x28b0]
mov dword [edi + 0x28c8], 0
mov dword [edi + 0x2820], 8
mov dword [edi + 0x2824], 8
mov dword [edi + 0x2884], 0x3f800000
mov dword [edi + 0x2888], 0x437f0000
mov dword [edi + 0x2880], 0x437f0000
mov dword [edi + 0x2894], 0
mov dword [edi + 0x288c], 0x3f800000
call fcn.10070cd0
lea ecx, [ebp - 0x80]
call fcn.10022100
lea ecx, [ebp - 0x98]
call fcn.10022100
lea ecx, [ebp - 0x60]
mov dword [ebp - 4], 0xffffffff
call fcn.10043260
lea eax, [ebp - 0x24]
mov dword [ebp - 0x24], 0x100266f0
lea ecx, [esi + 0x58]
push eax
call fcn.100708f0
mov dword [ebp - 0x24], esi
lea ecx, [edi + 0x18]
mov dword [edi + 0x2828], 1
imul eax, dword [edi + 0x2828], 0xeb
add eax, 0x14
mov dword [edi + 0x2814], eax
mov dword [edi + 0x281c], 0xaf
mov eax, dword [edi + 0x2c]
mov dword [edi + 0x282c], eax
lea eax, [ebp - 0x24]
push eax
call fcn.100708f0
lea ecx, [ebp - 0xd1]
call fcn.10035de0
push str.enemy
lea ecx, [ebp - 0x104]
mov esi, eax
call fcn.10022150
push str.friendly
lea ecx, [ebp - 0xec]
mov dword [ebp - 4], 0x158
call fcn.10022150
lea eax, [ebp - 0xd4]
mov dword [ebp - 4], 0x159
push eax
lea eax, [ebp - 0x104]
push eax
lea ecx, [ebp - 0x20]
call fcn.100708d0
push esi
lea ecx, [ebp - 0xc8]
push dword [eax + 4]
push dword [eax]
call fcn.10070920
push str.glow
lea ecx, [ebp - 0x60]
mov byte [ebp - 4], 0x5a
call fcn.10022150
push str.glow
lea ecx, [ebp - 0x98]
mov byte [ebp - 4], 0x5b
call fcn.10022150
lea ecx, [ebp - 0x78]
call fcn.10022cd0
lea eax, [ebp - 0x60]
mov byte [ebp - 4], 0x5d
push eax
lea ecx, [edi + 0x2904]
call fcn.1003be50
lea eax, [ebp - 0x98]
mov byte [edi + 0x2935], 1
push eax
lea ecx, [edi + 0x293c]
call fcn.1003be50
xor eax, eax
mov ecx, 0xf
cmp byte [edi + 0x2935], al
cmovne eax, ecx
lea ecx, [ebp - 0xc8]
mov dword [edi + 0x2970], eax
add eax, 0x14
mov dword [edi + 0x28dc], eax
mov dword [edi + 0x28e0], eax
call fcn.10021750
lea ecx, [ebp - 0xc8]
mov esi, eax
call fcn.10021740
mov ecx, eax
lea eax, [edi + 0x2954]
mov dword [ebp - 0x2c], ecx
mov dword [ebp - 0x24], eax
cmp esi, ecx
je 0x1005647b
mov edi, eax
push esi
mov ecx, edi
call fcn.10042f50
add esi, 0x18
cmp esi, dword [ebp - 0x2c]
jne 0x10056468
mov edi, dword [ebp - 0x34]
lea ecx, [ebp - 0x78]
call fcn.10021750
mov esi, eax
lea ecx, [ebp - 0x78]
mov dword [ebp - 0x28], esi
call fcn.10021740
mov dword [ebp - 0x24], eax
cmp esi, eax
je 0x1005653e
lea eax, [edi + 0x2964]
mov ecx, dword [esi]
mov dword [ebp - 0x18], ecx
lea ecx, [ebp - 0x40]
push ecx
mov ecx, eax
call fcn.10021760
lea ecx, [edi + 0x2964]
mov esi, dword [eax]
lea eax, [ebp - 0x64]
push eax
call fcn.10021770
push esi
lea edx, [ebp - 0x18]
lea ecx, [ebp - 0xd0]
push dword [eax]
call fcn.100226d0
add esp, 8
lea ecx, [edi + 0x2964]
mov esi, eax
lea eax, [ebp - 0xcc]
push eax
call fcn.10021760
push eax
mov ecx, esi
call fcn.10021720
lea ecx, [edi + 0x2954]
mov byte [ebp - 0x2d], al
call fcn.10026720
cmp dword [ebp - 0x18], eax
jae 0x10056514
lea eax, [ebp - 0x18]
push eax
lea ecx, [edi + 0x2964]
call fcn.10035620
cmp byte [ebp - 0x2d], 0
je 0x10056526
mov eax, dword [edi + 0x2930]
test eax, eax
je 0x10056526
call eax
mov esi, dword [ebp - 0x28]
lea eax, [edi + 0x2964]
add esi, 4
mov dword [ebp - 0x28], esi
cmp esi, dword [ebp - 0x24]
jne 0x100564a1
lea ecx, [ebp - 0x78]
call fcn.10021780
lea ecx, [ebp - 0x98]
call fcn.10022100
lea ecx, [ebp - 0x60]
call fcn.10022100
lea ecx, [ebp - 0xc8]
call fcn.10042f80
push fcn.10022100
push 2
push 0x18
lea eax, [ebp - 0x104]
mov dword [ebp - 4], 0xffffffff
push eax
call fcn.1009dc72
lea eax, [edi + 0x28cc]
mov dword [ebp - 0x24], eax
lea ecx, [edi + 0x18]
mov dword [edi + 0x28e4], 1
imul eax, dword [edi + 0x28e4], 0xeb
add eax, 0x14
mov dword [edi + 0x28d0], eax
mov dword [edi + 0x28d8], 0xaf
mov eax, dword [edi + 0x2c]
mov dword [edi + 0x28e8], eax
lea eax, [ebp - 0x24]
push eax
call fcn.100708f0
push str.glow_enemy
lea ecx, [ebp - 0x60]
lea esi, [edi + 0x2974]
call fcn.10022150
push str.enemy_color
lea ecx, [ebp - 0x98]
mov dword [ebp - 4], 0x15e
call fcn.10022150
lea eax, [ebp - 0x98]
mov byte [ebp - 4], 0x5f
push eax
lea ecx, [edi + 0x29e4]
call fcn.1003be50
lea eax, [ebp - 0x60]
push eax
lea ecx, [edi + 0x29ac]
call fcn.1003be50
lea ecx, [ebp - 0x98]
mov dword [edi + 0x29fc], 0xff783cb4
mov dword [edi + 0x2a10], 0
call fcn.10022100
lea ecx, [ebp - 0x60]
mov dword [ebp - 4], 0xffffffff
call fcn.10022100
mov dword [ebp - 0x24], 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 - 0x24]
push eax
call fcn.100708f0
push str.glow_friendly
lea ecx, [ebp - 0x60]
lea esi, [edi + 0x2a24]
call fcn.10022150
push str.friendly_color
lea ecx, [ebp - 0x98]
mov dword [ebp - 4], 0x160
call fcn.10022150
lea eax, [ebp - 0x98]
mov byte [ebp - 4], 0x61
push eax
lea ecx, [edi + 0x2a94]
call fcn.1003be50
lea eax, [ebp - 0x60]
push eax
lea ecx, [edi + 0x2a5c]
call fcn.1003be50
lea ecx, [ebp - 0x98]
mov dword [edi + 0x2aac], 0xff3cc896
mov dword [edi + 0x2ac0], 0
call fcn.10022100
lea ecx, [ebp - 0x60]
mov dword [ebp - 4], 0xffffffff
call fcn.10022100
mov dword [ebp - 0x24], 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 - 0x24]
push eax
call fcn.100708f0
push 0x100ae6e0
lea ecx, [ebp - 0x60]
lea esi, [edi + 0x2ad4]
call fcn.10070d00
push str.glow_blend
lea ecx, [ebp - 0x98]
mov dword [ebp - 4], 0x162
call fcn.10022150
push 0x100abd7e
lea ecx, [ebp - 0x80]
mov byte [ebp - 4], 0x63
call fcn.10022150
lea eax, [ebp - 0x98]
mov byte [ebp - 4], 0x64
push eax
lea ecx, [edi + 0x2b0c]
call fcn.1003be50
lea eax, [ebp - 0x60]
mov byte [edi + 0x2b3d], 0
push eax
lea ecx, [edi + 0x2b74]
mov dword [edi + 0x2b8c], 0
mov dword [edi + 0x2ae4], 8
mov dword [edi + 0x2ae8], 8
mov dword [edi + 0x2b48], 0x41200000
mov dword [edi + 0x2b4c], 0x42c80000
mov dword [edi + 0x2b44], 0x42700000
mov dword [edi + 0x2b58], 0
mov dword [edi + 0x2b50], 0x3f800000
call fcn.10070cd0
lea ecx, [ebp - 0x80]
call fcn.10022100
lea ecx, [ebp - 0x98]
call fcn.10022100
lea ecx, [ebp - 0x60]
mov dword [ebp - 4], 0xffffffff
call fcn.10043260
mov dword [ebp - 0x28], 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 - 0x28]
push eax
call fcn.100708f0
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.1009dc26
mov esp, ebp
pop ebp
mov esp, ebx
pop ebx
ret