Function at 0x10064170
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 0x100cc0b5
mov eax, dword fs:[0]
push eax
push ebx
sub esp, 0x1b8
mov eax, dword [0x100e7380]
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 - 0x30], edi
push dword [ebp - 0x1c]
lea ecx, [ebp - 0x80]
call fcn.10030490
push 7
push str.players
lea ecx, [ebp - 0x80]
mov dword [ebp - 4], 0
call fcn.100304b0
lea eax, [ebp - 0x80]
mov dword [ebp - 4], 1
push eax
mov ecx, edi
call fcn.1002f900
lea ecx, [ebp - 0x80]
call fcn.1002f930
push dword [ebp - 0x1c]
lea ecx, [ebp - 0xd8]
call fcn.10030490
push 5
push str.enemy
lea ecx, [ebp - 0xd8]
mov dword [ebp - 4], 2
call fcn.100304b0
mov dword [ebp - 4], 3
lea ecx, [ebp - 0xc0]
push dword [ebp - 0x1c]
call fcn.10030490
push 8
push str.friendly
lea ecx, [ebp - 0xc0]
mov byte [ebp - 4], 4
call fcn.100304b0
lea eax, [ebp - 0x21]
mov dword [ebp - 4], 5
push eax
lea ecx, [ebp - 0xa8]
push ecx
lea edx, [ebp - 0xd8]
push edx
lea ecx, [ebp - 0x74]
call fcn.10089aa0
push dword [ebp - 0x1c]
lea ecx, [ebp - 0x4c]
call fcn.10030490
push 3
push 0x100d6f60
lea ecx, [ebp - 0x4c]
mov byte [ebp - 4], 7
call fcn.100304b0
push dword [ebp - 0x1c]
lea ecx, [ebp - 0x64]
call fcn.10030490
push 5
push str.boxes
lea ecx, [ebp - 0x64]
mov byte [ebp - 4], 9
call fcn.100304b0
lea ecx, [ebp - 0x90]
call fcn.10030c60
lea eax, [ebp - 0x4c]
mov byte [ebp - 4], 0xb
push eax
lea ecx, [edi + 0x68]
call fcn.1002f900
lea eax, [ebp - 0x64]
mov byte [edi + 0x99], 1
push eax
lea ecx, [edi + 0xa0]
call fcn.1002f900
mov esi, dword [ebp - 0x74]
xor eax, eax
cmp byte [edi + 0x99], al
mov ecx, 0xf
cmovne eax, ecx
mov ecx, dword [ebp - 0x70]
mov dword [edi + 0xd4], eax
add eax, 0x14
mov dword [edi + 0x40], eax
mov dword [edi + 0x44], eax
lea eax, [edi + 0xb8]
mov dword [ebp - 0x34], ecx
mov dword [ebp - 0xa4], eax
cmp esi, ecx
je 0x10064325
mov edi, eax
nop dword [eax + eax]
push esi
mov ecx, edi
call fcn.10056500
add esi, 0x18
cmp esi, dword [ebp - 0x34]
jne 0x10064310
mov edi, dword [ebp - 0x30]
jmp 0x1006432b
mov dword [ebp - 0xa4], eax
mov ecx, dword [ebp - 0x8c]
mov eax, dword [ebp - 0x90]
mov dword [ebp - 0x1c], ecx
mov dword [ebp - 0x34], eax
cmp eax, ecx
je 0x100643fa
lea ecx, [edi + 0xc8]
nop dword [eax + eax]
mov eax, dword [eax]
mov dword [ebp - 0x18], eax
lea eax, [ebp - 0x98]
push eax
call fcn.1002ec70
lea ecx, [edi + 0xc8]
mov esi, dword [eax]
lea eax, [ebp - 0x9c]
push eax
call fcn.1002ec80
push esi
lea edx, [ebp - 0x18]
lea ecx, [ebp - 0xa0]
push dword [eax]
call fcn.10030070
add esp, 8
lea ecx, [edi + 0xc8]
mov esi, eax
lea eax, [ebp - 0x28]
push eax
call fcn.1002ec70
mov esi, dword [esi]
mov eax, dword [eax]
mov dword [ebp - 0x20], eax
mov eax, dword [ebp - 0xa4]
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
cmp dword [ebp - 0x18], eax
jae 0x100643d1
lea eax, [ebp - 0x18]
push eax
lea ecx, [edi + 0xc8]
call fcn.1004a490
cmp esi, dword [ebp - 0x20]
jne 0x100643e2
mov eax, dword [edi + 0x94]
test eax, eax
je 0x100643e2
call eax
mov eax, dword [ebp - 0x34]
lea ecx, [edi + 0xc8]
add eax, 4
mov dword [ebp - 0x34], eax
cmp eax, dword [ebp - 0x1c]
jne 0x10064350
lea ecx, [ebp - 0x90]
call fcn.1002ef90
lea ecx, [ebp - 0x64]
call fcn.1002f930
lea ecx, [ebp - 0x4c]
call fcn.1002f930
lea ecx, [ebp - 0x74]
call fcn.10056230
push fcn.1002f930
push 2
push 0x18
lea eax, [ebp - 0xd8]
mov dword [ebp - 4], 0xffffffff
push eax
call fcn.100c3d56
lea eax, [edi + 0x30]
mov dword [ebp - 0x1c], eax
lea ecx, [ebp - 0x1c]
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 - 0xa4], eax
call fcn.1004a490
push dword [ebp - 0x28]
mov esi, dword [0x100d517c]
lea ecx, [ebp - 0x64]
add edi, 0xd8
call fcn.10030490
push 9
push str.box_enemy
lea ecx, [ebp - 0x64]
mov dword [ebp - 4], 0xc
call fcn.100304b0
mov dword [ebp - 4], 0xd
lea ecx, [ebp - 0x4c]
push dword [ebp - 0x28]
call fcn.10030490
push 0xf
push str.box_enemy_color
lea ecx, [ebp - 0x4c]
mov byte [ebp - 4], 0xe
call fcn.100304b0
mov eax, dword [ebp - 0x30]
lea ecx, [ebp - 0x4c]
mov byte [ebp - 4], 0xf
push ecx
lea ecx, [eax + 0x158]
mov dword [eax + 0x150], 0
mov dword [eax + 0x154], 0
mov byte [eax + 0x145], 0
call fcn.1002f900
mov ecx, dword [ebp - 0x30]
lea eax, [ebp - 0x64]
push eax
add ecx, 0x110
call fcn.1002f900
mov eax, dword [ebp - 0x30]
lea ecx, [ebp - 0x4c]
mov dword [eax + 0x170], esi
mov esi, eax
mov dword [esi + 0x188], 0
call fcn.1002f930
lea ecx, [ebp - 0x64]
mov dword [ebp - 4], 0xffffffff
call fcn.1002f930
mov dword [ebp - 0x1c], edi
mov dword [edi + 0x18], 0
imul eax, dword [edi + 0x18], 0xeb
add eax, 0x14
mov dword [edi + 4], eax
mov dword [edi + 0xc], 0xaf
lea ecx, [esi + 0x18]
mov eax, dword [esi + 0x2c]
mov dword [edi + 0x1c], eax
lea eax, [ebp - 0x1c]
push eax
call fcn.1004a490
push dword [ebp - 0x28]
lea edi, [esi + 0x1a8]
mov esi, dword [0x100d517c]
lea ecx, [ebp - 0x64]
call fcn.10030490
push 0xc
push str.box_friendly
lea ecx, [ebp - 0x64]
mov dword [ebp - 4], 0x10
call fcn.100304b0
mov dword [ebp - 4], 0x11
lea ecx, [ebp - 0x4c]
push dword [ebp - 0x28]
call fcn.10030490
push 0x12
push str.box_friendly_color
lea ecx, [ebp - 0x4c]
mov byte [ebp - 4], 0x12
call fcn.100304b0
mov eax, dword [ebp - 0x30]
lea ecx, [ebp - 0x4c]
mov byte [ebp - 4], 0x13
push ecx
lea ecx, [eax + 0x228]
mov dword [eax + 0x220], 0
mov dword [eax + 0x224], 0
mov byte [eax + 0x215], 0
call fcn.1002f900
mov ecx, dword [ebp - 0x30]
lea eax, [ebp - 0x64]
push eax
lea ecx, [ecx + 0x1e0]
call fcn.1002f900
mov eax, dword [ebp - 0x30]
lea ecx, [ebp - 0x4c]
mov dword [eax + 0x240], esi
mov dword [eax + 0x258], 0
call fcn.1002f930
lea ecx, [ebp - 0x64]
mov dword [ebp - 4], 0xffffffff
call fcn.1002f930
mov ecx, dword [ebp - 0xa4]
mov dword [ebp - 0x1c], edi
mov dword [edi + 0x18], 0
imul eax, dword [edi + 0x18], 0xeb
add eax, 0x14
mov dword [edi + 4], eax
mov eax, dword [ebp - 0x30]
mov dword [edi + 0xc], 0xaf
mov eax, dword [eax + 0x2c]
mov dword [edi + 0x1c], eax
lea eax, [ebp - 0x1c]
push eax
call fcn.1004a490
mov edi, dword [ebp - 0x30]
lea ecx, [ebp - 0x64]
push dword [ebp - 0x28]
lea esi, [edi + 0x278]
call fcn.10030490
push 7
push str.dormant
lea ecx, [ebp - 0x64]
mov dword [ebp - 4], 0x14
call fcn.100304b0
mov dword [ebp - 4], 0x15
lea ecx, [ebp - 0x4c]
push dword [ebp - 0x28]
call fcn.10030490
push 0xf
push str.dormant_enemies
lea ecx, [ebp - 0x4c]
mov byte [ebp - 4], 0x16
call fcn.100304b0
lea eax, [ebp - 0x64]
mov byte [ebp - 4], 0x17
push eax
lea ecx, [edi + 0x2b0]
call fcn.1002f900
lea eax, [ebp - 0x4c]
mov byte [edi + 0x2e1], 1
push eax
lea ecx, [edi + 0x2e8]
call fcn.1002f900
lea ecx, [ebp - 0x4c]
mov byte [edi + 0x2e4], 0
call fcn.1002f930
lea ecx, [ebp - 0x64]
mov dword [ebp - 4], 0xffffffff
call fcn.1002f930
mov dword [ebp - 0x1c], esi
lea ecx, [edi + 0x18]
mov dword [esi + 0x18], 0
imul eax, dword [esi + 0x18], 0xeb
add eax, 0x14
mov dword [esi + 4], eax
mov dword [esi + 0xc], 0xaf
mov eax, dword [edi + 0x2c]
mov dword [esi + 0x1c], eax
lea eax, [ebp - 0x1c]
push eax
call fcn.1004a490
push dword [ebp - 0x28]
lea ecx, [ebp - 0x64]
lea esi, [edi + 0x300]
call fcn.10030490
push 9
push str.offscreen
lea ecx, [ebp - 0x64]
mov dword [ebp - 4], 0x18
call fcn.100304b0
mov dword [ebp - 4], 0x19
lea ecx, [ebp - 0x4c]
push dword [ebp - 0x28]
call fcn.10030490
push 0x13
push str.enemy_offscreen_esp
lea ecx, [ebp - 0x4c]
mov byte [ebp - 4], 0x1a
call fcn.100304b0
lea eax, [ebp - 0x64]
mov byte [ebp - 4], 0x1b
push eax
lea ecx, [edi + 0x338]
call fcn.1002f900
lea eax, [ebp - 0x4c]
mov byte [edi + 0x369], 1
push eax
lea ecx, [edi + 0x370]
call fcn.1002f900
lea ecx, [ebp - 0x4c]
mov byte [edi + 0x36c], 0
call fcn.1002f930
lea ecx, [ebp - 0x64]
mov dword [ebp - 4], 0xffffffff
call fcn.1002f930
mov dword [ebp - 0x1c], esi
mov dword [esi + 0x18], 0
imul eax, dword [esi + 0x18], 0xeb
add eax, 0x14
mov dword [esi + 4], eax
mov dword [esi + 0xc], 0xaf
mov eax, dword [edi + 0x2c]
mov dword [esi + 0x1c], eax
lea eax, [ebp - 0x1c]
push eax
lea ecx, [edi + 0x18]
call fcn.1004a490
push dword [ebp - 0x28]
mov esi, dword [0x100d517c]
lea ecx, [ebp - 0x64]
add edi, 0x388
call fcn.10030490
push 0xf
push str.offscreen_color
lea ecx, [ebp - 0x64]
mov dword [ebp - 4], 0x1c
call fcn.100304b0
mov dword [ebp - 4], 0x1d
lea ecx, [ebp - 0x4c]
push dword [ebp - 0x28]
call fcn.10030490
push 0x13
push str.offscreen_esp_color
lea ecx, [ebp - 0x4c]
mov byte [ebp - 4], 0x1e
call fcn.100304b0
mov eax, dword [ebp - 0x30]
lea ecx, [ebp - 0x4c]
mov byte [ebp - 4], 0x1f
push ecx
lea ecx, [eax + 0x408]
mov dword [eax + 0x400], 0
mov dword [eax + 0x404], 0
mov byte [eax + 0x3f5], 0
call fcn.1002f900
mov ecx, dword [ebp - 0x30]
lea eax, [ebp - 0x64]
push eax
lea ecx, [ecx + 0x3c0]
call fcn.1002f900
mov eax, dword [ebp - 0x30]
lea ecx, [ebp - 0x4c]
mov dword [eax + 0x420], esi
mov dword [eax + 0x438], 0
call fcn.1002f930
lea ecx, [ebp - 0x64]
mov dword [ebp - 4], 0xffffffff
call fcn.1002f930
mov ecx, dword [ebp - 0xa4]
mov dword [ebp - 0x1c], edi
mov dword [edi + 0x18], 0
imul eax, dword [edi + 0x18], 0xeb
add eax, 0x14
mov dword [edi + 4], eax
mov eax, dword [ebp - 0x30]
mov dword [edi + 0xc], 0xaf
mov eax, dword [eax + 0x2c]
mov dword [edi + 0x1c], eax
lea eax, [ebp - 0x1c]
push eax
call fcn.1004a490
push dword [ebp - 0x28]
mov edi, dword [ebp - 0x30]
lea ecx, [ebp - 0xd8]
call fcn.10030490
push 5
push str.enemy
lea ecx, [ebp - 0xd8]
mov dword [ebp - 4], 0x20
call fcn.100304b0
mov dword [ebp - 4], 0x21
lea ecx, [ebp - 0xc0]
push dword [ebp - 0x28]
call fcn.10030490
push 8
mov byte [ebp - 4], 0x22
push str.friendly
lea ecx, [ebp - 0xc0]
call fcn.100304b0
lea eax, [ebp - 0x21]
mov dword [ebp - 4], 0x23
push eax
lea ecx, [ebp - 0xa8]
push ecx
lea edx, [ebp - 0xd8]
push edx
lea ecx, [ebp - 0x90]
call fcn.10089aa0
push dword [ebp - 0x28]
lea ecx, [ebp - 0x64]
call fcn.10030490
push 4
push str.name
lea ecx, [ebp - 0x64]
mov byte [ebp - 4], 0x25
call fcn.100304b0
push dword [ebp - 0x28]
lea ecx, [ebp - 0x4c]
call fcn.10030490
push 4
push str.name
lea ecx, [ebp - 0x4c]
mov byte [ebp - 4], 0x27
call fcn.100304b0
lea ecx, [ebp - 0x78]
call fcn.10030c60
lea eax, [ebp - 0x64]
mov byte [ebp - 4], 0x29
push eax
lea ecx, [edi + 0x490]
call fcn.1002f900
lea eax, [ebp - 0x4c]
mov byte [edi + 0x4c1], 1
push eax
lea ecx, [edi + 0x4c8]
call fcn.1002f900
mov esi, dword [ebp - 0x90]
xor eax, eax
cmp byte [edi + 0x4c1], al
mov ecx, 0xf
cmovne eax, ecx
mov dword [edi + 0x4fc], eax
add eax, 0x14
mov dword [edi + 0x468], eax
mov dword [edi + 0x46c], eax
mov eax, dword [ebp - 0x8c]
mov dword [ebp - 0x20], eax
cmp esi, eax
je 0x10064a13
lea eax, [edi + 0x4e0]
mov edi, eax
nop
push esi
mov ecx, edi
call fcn.10056500
add esi, 0x18
cmp esi, dword [ebp - 0x20]
jne 0x10064a00
mov edi, dword [ebp - 0x30]
mov ecx, dword [ebp - 0x74]
mov eax, dword [ebp - 0x78]
mov dword [ebp - 0x20], ecx
mov dword [ebp - 0x34], eax
cmp eax, ecx
je 0x10064adb
lea ecx, [edi + 0x4f0]
nop dword [eax]
mov eax, dword [eax]
mov dword [ebp - 0x18], eax
lea eax, [ebp - 0x28]
push eax
call fcn.1002ec70
lea ecx, [edi + 0x4f0]
mov esi, dword [eax]
lea eax, [ebp - 0xa0]
push eax
call fcn.1002ec80
push esi
lea edx, [ebp - 0x18]
lea ecx, [ebp - 0x9c]
push dword [eax]
call fcn.10030070
add esp, 8
lea ecx, [edi + 0x4f0]
mov esi, eax
lea eax, [ebp - 0x98]
push eax
call fcn.1002ec70
mov ecx, dword [edi + 0x4e4]
sub ecx, dword [edi + 0x4e0]
mov esi, dword [esi]
mov eax, dword [eax]
mov dword [ebp - 0x1c], eax
mov eax, 0x2aaaaaab
imul ecx
sar edx, 2
mov eax, edx
shr eax, 0x1f
add eax, edx
cmp dword [ebp - 0x18], eax
jae 0x10064ab2
lea eax, [ebp - 0x18]
push eax
lea ecx, [edi + 0x4f0]
call fcn.1004a490
cmp esi, dword [ebp - 0x1c]
jne 0x10064ac3
mov eax, dword [edi + 0x4bc]
test eax, eax
je 0x10064ac3
call eax
mov eax, dword [ebp - 0x34]
lea ecx, [edi + 0x4f0]
add eax, 4
mov dword [ebp - 0x34], eax
cmp eax, dword [ebp - 0x20]
jne 0x10064a30
lea ecx, [ebp - 0x78]
call fcn.1002ef90
lea ecx, [ebp - 0x4c]
call fcn.1002f930
lea ecx, [ebp - 0x64]
call fcn.1002f930
lea ecx, [ebp - 0x90]
call fcn.10056230
push fcn.1002f930
push 2
push 0x18
lea eax, [ebp - 0xd8]
mov dword [ebp - 4], 0xffffffff
push eax
call fcn.100c3d56
lea eax, [edi + 0x458]
mov dword [ebp - 0x1c], eax
lea ecx, [edi + 0x18]
mov dword [edi + 0x470], 0
imul eax, dword [edi + 0x470], 0xeb
add eax, 0x14
mov dword [edi + 0x45c], eax
mov dword [edi + 0x464], 0xaf
mov eax, dword [edi + 0x2c]
mov dword [edi + 0x474], eax
lea eax, [ebp - 0x1c]
push eax
call fcn.1004a490
push dword [ebp - 0x28]
mov esi, dword [0x100d517c]
lea ecx, [ebp - 0x64]
add edi, 0x500
call fcn.10030490
push 0xa
push str.name_color
lea ecx, [ebp - 0x64]
mov dword [ebp - 4], 0x2a
call fcn.100304b0
mov dword [ebp - 4], 0x2b
lea ecx, [ebp - 0x4c]
push dword [ebp - 0x28]
call fcn.10030490
push 0xa
push 0x100d6fec
lea ecx, [ebp - 0x4c]
mov byte [ebp - 4], 0x2c
call fcn.100304b0
mov eax, dword [ebp - 0x30]
lea ecx, [ebp - 0x4c]
mov byte [ebp - 4], 0x2d
push ecx
lea ecx, [eax + 0x580]
mov dword [eax + 0x578], 0
mov dword [eax + 0x57c], 0
mov byte [eax + 0x56d], 0
call fcn.1002f900
mov ecx, dword [ebp - 0x30]
lea eax, [ebp - 0x64]
push eax
lea ecx, [ecx + 0x538]
call fcn.1002f900
mov eax, dword [ebp - 0x30]
lea ecx, [ebp - 0x4c]
mov dword [eax + 0x598], esi
mov dword [eax + 0x5b0], 0
call fcn.1002f930
lea ecx, [ebp - 0x64]
mov dword [ebp - 4], 0xffffffff
call fcn.1002f930
mov dword [ebp - 0x1c], edi
mov dword [edi + 0x18], 0
imul eax, dword [edi + 0x18], 0xeb
add eax, 0x14
mov dword [edi + 4], eax
mov eax, dword [ebp - 0x30]
mov dword [edi + 0xc], 0xaf
mov eax, dword [eax + 0x2c]
mov ecx, dword [ebp - 0xa4]
mov dword [edi + 0x1c], eax
lea eax, [ebp - 0x1c]
push eax
call fcn.1004a490
push dword [ebp - 0x28]
mov edi, dword [ebp - 0x30]
lea ecx, [ebp - 0xd8]
call fcn.10030490
push 5
push str.enemy
lea ecx, [ebp - 0xd8]
mov dword [ebp - 4], 0x2e
call fcn.100304b0
mov dword [ebp - 4], 0x2f
lea ecx, [ebp - 0xc0]
push dword [ebp - 0x28]
call fcn.10030490
push 8
push str.friendly
lea ecx, [ebp - 0xc0]
mov byte [ebp - 4], 0x30
call fcn.100304b0
lea eax, [ebp - 0x21]
mov dword [ebp - 4], 0x31
push eax
lea ecx, [ebp - 0xa8]
push ecx
lea edx, [ebp - 0xd8]
push edx
lea ecx, [ebp - 0x90]
call fcn.10089aa0
push dword [ebp - 0x28]
lea ecx, [ebp - 0x64]
call fcn.10030490
push 6
push str.health
lea ecx, [ebp - 0x64]
mov byte [ebp - 4], 0x33
call fcn.100304b0
push dword [ebp - 0x28]
lea ecx, [ebp - 0x4c]
call fcn.10030490
push 6
push str.health
lea ecx, [ebp - 0x4c]
mov byte [ebp - 4], 0x35
call fcn.100304b0
lea ecx, [ebp - 0x78]
call fcn.10030c60
lea eax, [ebp - 0x64]
mov byte [ebp - 4], 0x37
push eax
lea ecx, [edi + 0x608]
call fcn.1002f900
lea eax, [ebp - 0x4c]
mov byte [edi + 0x639], 1
push eax
lea ecx, [edi + 0x640]
call fcn.1002f900
mov esi, dword [ebp - 0x90]
xor eax, eax
cmp byte [edi + 0x639], al
mov ecx, 0xf
cmovne eax, ecx
mov dword [edi + 0x674], eax
add eax, 0x14
mov dword [edi + 0x5e0], eax
mov dword [edi + 0x5e4], eax
mov eax, dword [ebp - 0x8c]
mov dword [ebp - 0x1c], eax
cmp esi, eax
je 0x10064d95
lea eax, [edi + 0x658]
mov edi, dword [ebp - 0x1c]
mov dword [ebp - 0x20], eax
nop
push esi
mov ecx, eax
call fcn.10056500
mov eax, dword [ebp - 0x20]
add esi, 0x18
cmp esi, edi
jne 0x10064d80
mov edi, dword [ebp - 0x30]
mov ecx, dword [ebp - 0x74]
mov eax, dword [ebp - 0x78]
mov dword [ebp - 0x20], ecx
mov dword [ebp - 0x34], eax
cmp eax, ecx
je 0x10064e5b
lea ecx, [edi + 0x668]
nop
mov eax, dword [eax]
mov dword [ebp - 0x18], eax
lea eax, [ebp - 0x28]
push eax
call fcn.1002ec70
lea ecx, [edi + 0x668]
mov esi, dword [eax]
lea eax, [ebp - 0xa0]
push eax
call fcn.1002ec80
push esi
lea edx, [ebp - 0x18]
lea ecx, [ebp - 0x9c]
push dword [eax]
call fcn.10030070
add esp, 8
lea ecx, [edi + 0x668]
mov esi, eax
lea eax, [ebp - 0x98]
push eax
call fcn.1002ec70
mov ecx, dword [edi + 0x65c]
sub ecx, dword [edi + 0x658]
mov esi, dword [esi]
mov eax, dword [eax]
mov dword [ebp - 0x1c], eax
mov eax, 0x2aaaaaab
imul ecx
sar edx, 2
mov eax, edx
shr eax, 0x1f
add eax, edx
cmp dword [ebp - 0x18], eax
jae 0x10064e32
lea eax, [ebp - 0x18]
push eax
lea ecx, [edi + 0x668]
call fcn.1004a490
cmp esi, dword [ebp - 0x1c]
jne 0x10064e43
mov eax, dword [edi + 0x634]
test eax, eax
je 0x10064e43
call eax
mov eax, dword [ebp - 0x34]
lea ecx, [edi + 0x668]
add eax, 4
mov dword [ebp - 0x34], eax
cmp eax, dword [ebp - 0x20]
jne 0x10064db0
lea ecx, [ebp - 0x78]
call fcn.1002ef90
lea ecx, [ebp - 0x4c]
call fcn.1002f930
lea ecx, [ebp - 0x64]
call fcn.1002f930
lea ecx, [ebp - 0x90]
call fcn.10056230
push fcn.1002f930
push 2
push 0x18
lea eax, [ebp - 0xd8]
mov dword [ebp - 4], 0xffffffff
push eax
call fcn.100c3d56
lea eax, [edi + 0x5d0]
mov dword [ebp - 0x1c], eax
lea ecx, [edi + 0x18]
mov dword [edi + 0x5e8], 0
imul eax, dword [edi + 0x5e8], 0xeb
add eax, 0x14
mov dword [edi + 0x5d4], eax
mov dword [edi + 0x5dc], 0xaf
mov eax, dword [edi + 0x2c]
mov dword [edi + 0x5ec], eax
lea eax, [ebp - 0x1c]
push eax
call fcn.1004a490
push dword [ebp - 0x28]
lea ecx, [ebp - 0x1c8]
call fcn.10030490
push 5
push str.money
lea ecx, [ebp - 0x1c8]
mov dword [ebp - 4], 0x38
call fcn.100304b0
mov dword [ebp - 4], 0x39
lea ecx, [ebp - 0x1b0]
push dword [ebp - 0x28]
call fcn.10030490
push 5
push str.armor
lea ecx, [ebp - 0x1b0]
mov byte [ebp - 4], 0x3a
call fcn.100304b0
push dword [ebp - 0x28]
lea ecx, [ebp - 0x198]
call fcn.10030490
push 6
push str.scoped
lea ecx, [ebp - 0x198]
mov byte [ebp - 4], 0x3c
call fcn.100304b0
push dword [ebp - 0x28]
lea ecx, [ebp - 0x180]
call fcn.10030490
push 7
push str.flashed
lea ecx, [ebp - 0x180]
mov byte [ebp - 4], 0x3e
call fcn.100304b0
push dword [ebp - 0x28]
lea ecx, [ebp - 0x168]
call fcn.10030490
push 9
push str.reloading
lea ecx, [ebp - 0x168]
mov byte [ebp - 4], 0x40
call fcn.100304b0
push dword [ebp - 0x28]
lea ecx, [ebp - 0x150]
call fcn.10030490
push 4
push str.bomb
lea ecx, [ebp - 0x150]
mov byte [ebp - 4], 0x42
call fcn.100304b0
push dword [ebp - 0x28]
lea ecx, [ebp - 0x138]
call fcn.10030490
push 4
push str.ping
lea ecx, [ebp - 0x138]
mov byte [ebp - 4], 0x44
call fcn.100304b0
push dword [ebp - 0x28]
lea ecx, [ebp - 0x120]
call fcn.10030490
push 4
push str.fake
lea ecx, [ebp - 0x120]
mov byte [ebp - 4], 0x46
call fcn.100304b0
push dword [ebp - 0x28]
lea ecx, [ebp - 0x108]
call fcn.10030490
push 5
push str.cheat
lea ecx, [ebp - 0x108]
mov byte [ebp - 4], 0x48
call fcn.100304b0
push dword [ebp - 0x28]
lea ecx, [ebp - 0xf0]
call fcn.10030490
push 7
push str.lagcomp
lea ecx, [ebp - 0xf0]
mov byte [ebp - 4], 0x4a
call fcn.100304b0
push dword [ebp - 0x28]
lea ecx, [ebp - 0xd8]
call fcn.10030490
push 5
push str.state
lea ecx, [ebp - 0xd8]
mov byte [ebp - 4], 0x4c
call fcn.100304b0
push dword [ebp - 0x28]
lea ecx, [ebp - 0xc0]
call fcn.10030490
push 6
push str.lethal
lea ecx, [ebp - 0xc0]
mov byte [ebp - 4], 0x4e
call fcn.100304b0
lea eax, [ebp - 0x21]
mov dword [ebp - 4], 0x4f
push eax
lea ecx, [ebp - 0xa8]
push ecx
lea edx, [ebp - 0x1c8]
push edx
lea ecx, [ebp - 0x90]
call fcn.10089aa0
push dword [ebp - 0x28]
lea ecx, [ebp - 0x64]
call fcn.10030490
push 0xb
push str.flags_enemy
lea ecx, [ebp - 0x64]
mov byte [ebp - 4], 0x51
call fcn.100304b0
push dword [ebp - 0x28]
lea ecx, [ebp - 0x4c]
call fcn.10030490
push 0xb
push 0x100d7058
lea ecx, [ebp - 0x4c]
mov byte [ebp - 4], 0x53
call fcn.100304b0
lea ecx, [ebp - 0x78]
call fcn.10030c60
lea eax, [ebp - 0x64]
mov byte [ebp - 4], 0x55
push eax
lea ecx, [edi + 0x6b0]
call fcn.1002f900
lea eax, [ebp - 0x4c]
mov byte [edi + 0x6e1], 1
push eax
lea ecx, [edi + 0x6e8]
call fcn.1002f900
mov esi, dword [ebp - 0x90]
xor eax, eax
cmp byte [edi + 0x6e1], al
mov ecx, 0xf
cmovne eax, ecx
mov dword [edi + 0x71c], eax
add eax, 0x14
mov dword [edi + 0x688], eax
mov dword [edi + 0x68c], eax
mov eax, dword [ebp - 0x8c]
mov dword [ebp - 0x1c], eax
cmp esi, eax
je 0x10065185
lea eax, [edi + 0x700]
mov edi, dword [ebp - 0x1c]
mov dword [ebp - 0x20], eax
nop
push esi
mov ecx, eax
call fcn.10056500
mov eax, dword [ebp - 0x20]
add esi, 0x18
cmp esi, edi
jne 0x10065170
mov edi, dword [ebp - 0x30]
mov ecx, dword [ebp - 0x74]
mov eax, dword [ebp - 0x78]
mov dword [ebp - 0x20], ecx
mov dword [ebp - 0x34], eax
cmp eax, ecx
je 0x1006524b
lea ecx, [edi + 0x710]
nop
mov eax, dword [eax]
mov dword [ebp - 0x18], eax
lea eax, [ebp - 0x28]
push eax
call fcn.1002ec70
lea ecx, [edi + 0x710]
mov esi, dword [eax]
lea eax, [ebp - 0xa0]
push eax
call fcn.1002ec80
push esi
lea edx, [ebp - 0x18]
lea ecx, [ebp - 0x9c]
push dword [eax]
call fcn.10030070
add esp, 8
lea ecx, [edi + 0x710]
mov esi, eax
lea eax, [ebp - 0x98]
push eax
call fcn.1002ec70
mov ecx, dword [edi + 0x704]
sub ecx, dword [edi + 0x700]
mov esi, dword [esi]
mov eax, dword [eax]
mov dword [ebp - 0x1c], eax
mov eax, 0x2aaaaaab
imul ecx
sar edx, 2
mov eax, edx
shr eax, 0x1f
add eax, edx
cmp dword [ebp - 0x18], eax
jae 0x10065222
lea eax, [ebp - 0x18]
push eax
lea ecx, [edi + 0x710]
call fcn.1004a490
cmp esi, dword [ebp - 0x1c]
jne 0x10065233
mov eax, dword [edi + 0x6dc]
test eax, eax
je 0x10065233
call eax
mov eax, dword [ebp - 0x34]
lea ecx, [edi + 0x710]
add eax, 4
mov dword [ebp - 0x34], eax
cmp eax, dword [ebp - 0x20]
jne 0x100651a0
lea ecx, [ebp - 0x78]
call fcn.1002ef90
lea ecx, [ebp - 0x4c]
call fcn.1002f930
lea ecx, [ebp - 0x64]
call fcn.1002f930
lea ecx, [ebp - 0x90]
call fcn.10056230
push fcn.1002f930
push 0xc
push 0x18
lea eax, [ebp - 0x1c8]
mov dword [ebp - 4], 0xffffffff
push eax
call fcn.100c3d56
lea eax, [edi + 0x678]
mov dword [ebp - 0x1c], eax
lea ecx, [edi + 0x18]
mov dword [edi + 0x690], 0
imul eax, dword [edi + 0x690], 0xeb
add eax, 0x14
mov dword [edi + 0x67c], eax
mov dword [edi + 0x684], 0xaf
mov eax, dword [edi + 0x2c]
mov dword [edi + 0x694], eax
lea eax, [ebp - 0x1c]
push eax
call fcn.1004a490
push dword [ebp - 0x28]
lea ecx, [ebp - 0x138]
call fcn.10030490
push 5
push str.money
lea ecx, [ebp - 0x138]
mov dword [ebp - 4], 0x56
call fcn.100304b0
mov dword [ebp - 4], 0x57
lea ecx, [ebp - 0x120]
push dword [ebp - 0x28]
call fcn.10030490
push 5
push str.armor
lea ecx, [ebp - 0x120]
mov byte [ebp - 4], 0x58
call fcn.100304b0
push dword [ebp - 0x28]
lea ecx, [ebp - 0x108]
call fcn.10030490
push 6
push str.scoped
lea ecx, [ebp - 0x108]
mov byte [ebp - 4], 0x5a
call fcn.100304b0
push dword [ebp - 0x28]
lea ecx, [ebp - 0xf0]
call fcn.10030490
push 7
push str.flashed
lea ecx, [ebp - 0xf0]
mov byte [ebp - 4], 0x5c
call fcn.100304b0
push dword [ebp - 0x28]
lea ecx, [ebp - 0xd8]
call fcn.10030490
push 9
push str.reloading
lea ecx, [ebp - 0xd8]
mov byte [ebp - 4], 0x5e
call fcn.100304b0
push dword [ebp - 0x28]
lea ecx, [ebp - 0xc0]
call fcn.10030490
push 4
push str.bomb
lea ecx, [ebp - 0xc0]
mov byte [ebp - 4], 0x60
call fcn.100304b0
lea eax, [ebp - 0x21]
mov dword [ebp - 4], 0x61
push eax
lea ecx, [ebp - 0xa8]
push ecx
lea edx, [ebp - 0x138]
push edx
lea ecx, [ebp - 0x90]
call fcn.10089aa0
push dword [ebp - 0x28]
lea ecx, [ebp - 0x64]
call fcn.10030490
push 0xe
push 0x100d7064
lea ecx, [ebp - 0x64]
mov byte [ebp - 4], 0x63
call fcn.100304b0
push dword [ebp - 0x28]
lea ecx, [ebp - 0x4c]
call fcn.10030490
push 0xe
push str.flags_friendly
lea ecx, [ebp - 0x4c]
mov byte [ebp - 4], 0x65
call fcn.100304b0
lea ecx, [ebp - 0x78]
call fcn.10030c60
lea eax, [ebp - 0x64]
mov byte [ebp - 4], 0x67
push eax
lea ecx, [edi + 0x758]
call fcn.1002f900
lea eax, [ebp - 0x4c]
mov byte [edi + 0x789], 1
push eax
lea ecx, [edi + 0x790]
call fcn.1002f900
mov esi, dword [ebp - 0x90]
xor eax, eax
cmp byte [edi + 0x789], al
mov ecx, 0xf
cmovne eax, ecx
mov dword [edi + 0x7c4], eax
add eax, 0x14
mov dword [edi + 0x730], eax
mov dword [edi + 0x734], eax
mov eax, dword [ebp - 0x8c]
mov dword [ebp - 0x1c], eax
cmp esi, eax
je 0x1006549b
lea eax, [edi + 0x7a8]
mov edi, dword [ebp - 0x1c]
mov dword [ebp - 0x20], eax
push esi
mov ecx, eax
call fcn.10056500
mov eax, dword [ebp - 0x20]
add esi, 0x18
cmp esi, edi
jne 0x10065486
mov edi, dword [ebp - 0x30]
mov ecx, dword [ebp - 0x74]
mov eax, dword [ebp - 0x78]
mov dword [ebp - 0x20], ecx
mov dword [ebp - 0x34], eax
cmp eax, ecx
je 0x10065560
lea ecx, [edi + 0x7b8]
mov eax, dword [eax]
mov dword [ebp - 0x18], eax
lea eax, [ebp - 0x28]
push eax
call fcn.1002ec70
lea ecx, [edi + 0x7b8]
mov esi, dword [eax]
lea eax, [ebp - 0xa0]
push eax
call fcn.1002ec80
push esi
lea edx, [ebp - 0x18]
lea ecx, [ebp - 0x9c]
push dword [eax]
call fcn.10030070
add esp, 8
lea ecx, [edi + 0x7b8]
mov esi, eax
lea eax, [ebp - 0x98]
push eax
call fcn.1002ec70
mov ecx, dword [edi + 0x7ac]
sub ecx, dword [edi + 0x7a8]
mov esi, dword [esi]
mov eax, dword [eax]
mov dword [ebp - 0x1c], eax
mov eax, 0x2aaaaaab
imul ecx
sar edx, 2
mov eax, edx
shr eax, 0x1f
add eax, edx
cmp dword [ebp - 0x18], eax
jae 0x10065537
lea eax, [ebp - 0x18]
push eax
lea ecx, [edi + 0x7b8]
call fcn.1004a490
cmp esi, dword [ebp - 0x1c]
jne 0x10065548
mov eax, dword [edi + 0x784]
test eax, eax
je 0x10065548
call eax
mov eax, dword [ebp - 0x34]
lea ecx, [edi + 0x7b8]
add eax, 4
mov dword [ebp - 0x34], eax
cmp eax, dword [ebp - 0x20]
jne 0x100654b5
lea ecx, [ebp - 0x78]
call fcn.1002ef90
lea ecx, [ebp - 0x4c]
call fcn.1002f930
lea ecx, [ebp - 0x64]
call fcn.1002f930
lea ecx, [ebp - 0x90]
call fcn.10056230
push fcn.1002f930
push 6
push 0x18
lea eax, [ebp - 0x138]
mov dword [ebp - 4], 0xffffffff
push eax
call fcn.100c3d56
lea eax, [edi + 0x720]
mov dword [ebp - 0x1c], eax
lea ecx, [edi + 0x18]
mov dword [edi + 0x738], 0
imul eax, dword [edi + 0x738], 0xeb
add eax, 0x14
mov dword [edi + 0x724], eax
mov dword [edi + 0x72c], 0xaf
mov eax, dword [edi + 0x2c]
mov dword [edi + 0x73c], eax
lea eax, [ebp - 0x1c]
push eax
call fcn.1004a490
push dword [ebp - 0x28]
lea ecx, [ebp - 0xd8]
call fcn.10030490
push 5
push str.enemy
lea ecx, [ebp - 0xd8]
mov dword [ebp - 4], 0x68
call fcn.100304b0
mov dword [ebp - 4], 0x69
lea ecx, [ebp - 0xc0]
push dword [ebp - 0x28]
call fcn.10030490
push 8
push str.friendly
lea ecx, [ebp - 0xc0]
mov byte [ebp - 4], 0x6a
call fcn.100304b0
lea eax, [ebp - 0x21]
mov dword [ebp - 4], 0x6b
push eax
lea ecx, [ebp - 0xa8]
push ecx
lea edx, [ebp - 0xd8]
push edx
lea ecx, [ebp - 0x90]
call fcn.10089aa0
push dword [ebp - 0x28]
lea ecx, [ebp - 0x64]
call fcn.10030490
push 6
push str.weapon
lea ecx, [ebp - 0x64]
mov byte [ebp - 4], 0x6d
call fcn.100304b0
push dword [ebp - 0x28]
lea ecx, [ebp - 0x4c]
call fcn.10030490
push 6
push str.weapon
lea ecx, [ebp - 0x4c]
mov byte [ebp - 4], 0x6f
call fcn.100304b0
lea ecx, [ebp - 0x78]
call fcn.10030c60
lea eax, [ebp - 0x64]
mov byte [ebp - 4], 0x71
push eax
lea ecx, [edi + 0x800]
call fcn.1002f900
lea eax, [ebp - 0x4c]
mov byte [edi + 0x831], 1
push eax
lea ecx, [edi + 0x838]
call fcn.1002f900
mov esi, dword [ebp - 0x90]
xor eax, eax
cmp byte [edi + 0x831], al
mov ecx, 0xf
cmovne eax, ecx
mov dword [edi + 0x86c], eax
add eax, 0x14
mov dword [edi + 0x7d8], eax
mov dword [edi + 0x7dc], eax
mov eax, dword [ebp - 0x8c]
mov dword [ebp - 0x1c], eax
cmp esi, eax
je 0x10065725
lea eax, [edi + 0x850]
mov edi, dword [ebp - 0x1c]
mov dword [ebp - 0x20], eax
nop dword [eax + eax]
push esi
mov ecx, eax
call fcn.10056500
mov eax, dword [ebp - 0x20]
add esi, 0x18
cmp esi, edi
jne 0x10065710
mov edi, dword [ebp - 0x30]
mov ecx, dword [ebp - 0x74]
mov eax, dword [ebp - 0x78]
mov dword [ebp - 0x20], ecx
mov dword [ebp - 0x34], eax
cmp eax, ecx
je 0x100657eb
lea ecx, [edi + 0x860]
nop
mov eax, dword [eax]
mov dword [ebp - 0x18], eax
lea eax, [ebp - 0x28]
push eax
call fcn.1002ec70
lea ecx, [edi + 0x860]
mov esi, dword [eax]
lea eax, [ebp - 0xa0]
push eax
call fcn.1002ec80
push esi
lea edx, [ebp - 0x18]
lea ecx, [ebp - 0x9c]
push dword [eax]
call fcn.10030070
add esp, 8
lea ecx, [edi + 0x860]
mov esi, eax
lea eax, [ebp - 0x98]
push eax
call fcn.1002ec70
mov ecx, dword [edi + 0x854]
sub ecx, dword [edi + 0x850]
mov esi, dword [esi]
mov eax, dword [eax]
mov dword [ebp - 0x1c], eax
mov eax, 0x2aaaaaab
imul ecx
sar edx, 2
mov eax, edx
shr eax, 0x1f
add eax, edx
cmp dword [ebp - 0x18], eax
jae 0x100657c2
lea eax, [ebp - 0x18]
push eax
lea ecx, [edi + 0x860]
call fcn.1004a490
cmp esi, dword [ebp - 0x1c]
jne 0x100657d3
mov eax, dword [edi + 0x82c]
test eax, eax
je 0x100657d3
call eax
mov eax, dword [ebp - 0x34]
lea ecx, [edi + 0x860]
add eax, 4
mov dword [ebp - 0x34], eax
cmp eax, dword [ebp - 0x20]
jne 0x10065740
lea ecx, [ebp - 0x78]
call fcn.1002ef90
lea ecx, [ebp - 0x4c]
call fcn.1002f930
lea ecx, [ebp - 0x64]
call fcn.1002f930
lea ecx, [ebp - 0x90]
call fcn.10056230
push fcn.1002f930
push 2
push 0x18
lea eax, [ebp - 0xd8]
mov dword [ebp - 4], 0xffffffff
push eax
call fcn.100c3d56
lea eax, [edi + 0x7c8]
mov dword [ebp - 0x1c], eax
lea ecx, [edi + 0x18]
mov dword [edi + 0x7e0], 0
imul eax, dword [edi + 0x7e0], 0xeb
add eax, 0x14
mov dword [edi + 0x7cc], eax
mov dword [edi + 0x7d4], 0xaf
mov eax, dword [edi + 0x2c]
mov dword [edi + 0x7e4], eax
lea eax, [ebp - 0x1c]
push eax
call fcn.1004a490
push dword [ebp - 0x28]
lea ecx, [ebp - 0xd8]
call fcn.10030490
push 4
push str.text
lea ecx, [ebp - 0xd8]
mov dword [ebp - 4], 0x72
call fcn.100304b0
mov dword [ebp - 4], 0x73
lea ecx, [ebp - 0xc0]
push dword [ebp - 0x28]
call fcn.10030490
push 4
push str.icon
lea ecx, [ebp - 0xc0]
mov byte [ebp - 4], 0x74
call fcn.100304b0
lea eax, [ebp - 0x21]
mov dword [ebp - 4], 0x75
push eax
lea ecx, [ebp - 0xa8]
push ecx
lea edx, [ebp - 0xd8]
push edx
lea ecx, [ebp - 0x90]
call fcn.10089aa0
push dword [ebp - 0x28]
lea ecx, [ebp - 0x4c]
call fcn.10030490
push 0xb
push str.weapon_mode
lea ecx, [ebp - 0x4c]
mov byte [ebp - 4], 0x77
call fcn.100304b0
push dword [ebp - 0x28]
lea ecx, [ebp - 0x64]
call fcn.10030490
push 0
push 0x100d3ed0
lea ecx, [ebp - 0x64]
mov byte [ebp - 4], 0x79
call fcn.100304b0
lea ecx, [ebp - 0x78]
call fcn.10030c60
lea eax, [ebp - 0x4c]
mov byte [ebp - 4], 0x7b
push eax
lea ecx, [edi + 0x8a8]
call fcn.1002f900
mov eax, dword [ebp - 0x8c]
mov esi, dword [ebp - 0x90]
mov byte [edi + 0x8d9], 0
mov dword [edi + 0x914], 0
mov dword [edi + 0x880], 0x14
mov dword [edi + 0x884], 0x14
mov dword [ebp - 0x1c], eax
cmp esi, eax
je 0x10065995
lea eax, [edi + 0x8f8]
mov edi, dword [ebp - 0x1c]
mov dword [ebp - 0x20], eax
push esi
mov ecx, eax
call fcn.10056500
mov eax, dword [ebp - 0x20]
add esi, 0x18
cmp esi, edi
jne 0x10065980
mov edi, dword [ebp - 0x30]
mov ecx, dword [ebp - 0x74]
mov eax, dword [ebp - 0x78]
mov dword [ebp - 0x20], ecx
mov dword [ebp - 0x34], eax
cmp eax, ecx
je 0x10065a5b
lea ecx, [edi + 0x908]
nop
mov eax, dword [eax]
mov dword [ebp - 0x18], eax
lea eax, [ebp - 0x28]
push eax
call fcn.1002ec70
lea ecx, [edi + 0x908]
mov esi, dword [eax]
lea eax, [ebp - 0xa0]
push eax
call fcn.1002ec80
push esi
lea edx, [ebp - 0x18]
lea ecx, [ebp - 0x9c]
push dword [eax]
call fcn.10030070
add esp, 8
lea ecx, [edi + 0x908]
mov esi, eax
lea eax, [ebp - 0x98]
push eax
call fcn.1002ec70
mov ecx, dword [edi + 0x8fc]
sub ecx, dword [edi + 0x8f8]
mov esi, dword [esi]
mov eax, dword [eax]
mov dword [ebp - 0x1c], eax
mov eax, 0x2aaaaaab
imul ecx
sar edx, 2
mov eax, edx
shr eax, 0x1f
add eax, edx
cmp dword [ebp - 0x18], eax
jae 0x10065a32
lea eax, [ebp - 0x18]
push eax
lea ecx, [edi + 0x908]
call fcn.1004a490
cmp esi, dword [ebp - 0x1c]
jne 0x10065a43
mov eax, dword [edi + 0x8d4]
test eax, eax
je 0x10065a43
call eax
mov eax, dword [ebp - 0x34]
lea ecx, [edi + 0x908]
add eax, 4
mov dword [ebp - 0x34], eax
cmp eax, dword [ebp - 0x20]
jne 0x100659b0
lea ecx, [ebp - 0x78]
call fcn.1002ef90
lea ecx, [ebp - 0x64]
call fcn.1002f930
lea ecx, [ebp - 0x4c]
call fcn.1002f930
lea ecx, [ebp - 0x90]
call fcn.10056230
push fcn.1002f930
push 2
push 0x18
lea eax, [ebp - 0xd8]
mov dword [ebp - 4], 0xffffffff
push eax
call fcn.100c3d56
lea eax, [edi + 0x870]
mov dword [ebp - 0x1c], eax
lea ecx, [edi + 0x18]
mov dword [edi + 0x888], 0
imul eax, dword [edi + 0x888], 0xeb
add eax, 0x14
mov dword [edi + 0x874], eax
mov dword [edi + 0x87c], 0xaf
mov eax, dword [edi + 0x2c]
mov dword [edi + 0x88c], eax
lea eax, [ebp - 0x1c]
push eax
call fcn.1004a490
push dword [ebp - 0x28]
lea ecx, [ebp - 0x64]
lea esi, [edi + 0x9a0]
call fcn.10030490
push 8
push str.distance
lea ecx, [ebp - 0x64]
mov dword [ebp - 4], 0x7c
call fcn.100304b0
mov dword [ebp - 4], 0x7d
lea ecx, [ebp - 0x4c]
push dword [ebp - 0x28]
call fcn.10030490
push 8
push str.distance
lea ecx, [ebp - 0x4c]
mov byte [ebp - 4], 0x7e
call fcn.100304b0
lea eax, [ebp - 0x64]
mov byte [ebp - 4], 0x7f
push eax
lea ecx, [edi + 0x9d8]
call fcn.1002f900
lea eax, [ebp - 0x4c]
mov byte [edi + 0xa09], 1
push eax
lea ecx, [edi + 0xa10]
call fcn.1002f900
lea ecx, [ebp - 0x4c]
mov byte [edi + 0xa0c], 0
call fcn.1002f930
lea ecx, [ebp - 0x64]
mov dword [ebp - 4], 0xffffffff
call fcn.1002f930
mov dword [ebp - 0x1c], esi
lea ecx, [edi + 0x18]
mov dword [esi + 0x18], 0
imul eax, dword [esi + 0x18], 0xeb
add eax, 0x14
mov dword [esi + 4], eax
mov dword [esi + 0xc], 0xaf
mov eax, dword [edi + 0x2c]
mov dword [esi + 0x1c], eax
lea eax, [ebp - 0x1c]
push eax
call fcn.1004a490
push dword [ebp - 0x28]
lea esi, [edi + 0x918]
lea ecx, [ebp - 0x64]
call fcn.10030490
push 4
push str.ammo
lea ecx, [ebp - 0x64]
mov dword [ebp - 4], 0x80
call fcn.100304b0
mov dword [ebp - 4], 0x81
lea ecx, [ebp - 0x4c]
push dword [ebp - 0x28]
call fcn.10030490
push 4
push str.ammo
lea ecx, [ebp - 0x4c]
mov byte [ebp - 4], 0x82
call fcn.100304b0
lea eax, [ebp - 0x64]
mov byte [ebp - 4], 0x83
push eax
lea ecx, [edi + 0x950]
call fcn.1002f900
lea eax, [ebp - 0x4c]
mov byte [edi + 0x981], 1
push eax
lea ecx, [edi + 0x988]
call fcn.1002f900
lea ecx, [ebp - 0x4c]
mov byte [edi + 0x984], 0
call fcn.1002f930
lea ecx, [ebp - 0x64]
mov dword [ebp - 4], 0xffffffff
call fcn.1002f930
mov dword [ebp - 0x1c], esi
lea ecx, [edi + 0x18]
mov dword [esi + 0x18], 0
imul eax, dword [esi + 0x18], 0xeb
add eax, 0x14
mov dword [esi + 4], eax
mov dword [esi + 0xc], 0xaf
mov eax, dword [edi + 0x2c]
mov dword [esi + 0x1c], eax
lea eax, [ebp - 0x1c]
push eax
call fcn.1004a490
push dword [ebp - 0x28]
mov esi, dword [0x100d5180]
lea ecx, [ebp - 0x64]
add edi, 0xa28
call fcn.10030490
push 0xa
push str.ammo_color
lea ecx, [ebp - 0x64]
mov dword [ebp - 4], 0x84
call fcn.100304b0
mov dword [ebp - 4], 0x85
lea ecx, [ebp - 0x4c]
push dword [ebp - 0x28]
call fcn.10030490
push 5
push str.color
lea ecx, [ebp - 0x4c]
mov byte [ebp - 4], 0x86
call fcn.100304b0
mov eax, dword [ebp - 0x30]
lea ecx, [ebp - 0x4c]
mov byte [ebp - 4], 0x87
push ecx
mov dword [eax + 0xaa0], 0
lea ecx, [eax + 0xaa8]
mov dword [eax + 0xaa4], 0
mov byte [eax + 0xa95], 1
mov dword [eax + 0xa3c], 0xfffffffb
mov dword [eax + 0xa38], 0xfffffffb
call fcn.1002f900
mov ecx, dword [ebp - 0x30]
lea eax, [ebp - 0x64]
push eax
lea ecx, [ecx + 0xa60]
call fcn.1002f900
mov eax, dword [ebp - 0x30]
lea ecx, [ebp - 0x4c]
mov dword [eax + 0xac0], esi
mov dword [eax + 0xad8], 0
call fcn.1002f930
lea ecx, [ebp - 0x64]
mov dword [ebp - 4], 0xffffffff
call fcn.1002f930
mov ecx, dword [ebp - 0xa4]
mov dword [ebp - 0x1c], edi
mov dword [edi + 0x18], 0
imul eax, dword [edi + 0x18], 0xeb
add eax, 0x14
mov dword [edi + 4], eax
mov eax, dword [ebp - 0x30]
mov dword [edi + 0xc], 0xaf
mov eax, dword [eax + 0x2c]
mov dword [edi + 0x1c], eax
lea eax, [ebp - 0x1c]
push eax
call fcn.1004a490
mov edi, dword [ebp - 0x30]
lea ecx, [ebp - 0x64]
push dword [ebp - 0x28]
lea esi, [edi + 0xaf8]
call fcn.10030490
push 0xa
push 0x100d70fc
lea ecx, [ebp - 0x64]
mov dword [ebp - 4], 0x88
call fcn.100304b0
mov dword [ebp - 4], 0x89
lea ecx, [ebp - 0x4c]
push dword [ebp - 0x28]
call fcn.10030490
push 0xa
push str.lby_update
lea ecx, [ebp - 0x4c]
mov byte [ebp - 4], 0x8a
call fcn.100304b0
lea eax, [ebp - 0x64]
mov byte [ebp - 4], 0x8b
push eax
lea ecx, [edi + 0xb30]
call fcn.1002f900
lea eax, [ebp - 0x4c]
mov byte [edi + 0xb61], 1
push eax
lea ecx, [edi + 0xb68]
call fcn.1002f900
lea ecx, [ebp - 0x4c]
mov byte [edi + 0xb64], 0
call fcn.1002f930
lea ecx, [ebp - 0x64]
mov dword [ebp - 4], 0xffffffff
call fcn.1002f930
mov dword [ebp - 0x1c], esi
lea ecx, [edi + 0x18]
mov dword [esi + 0x18], 0
imul eax, dword [esi + 0x18], 0xeb
add eax, 0x14
mov dword [esi + 4], eax
mov dword [esi + 0xc], 0xaf
mov eax, dword [edi + 0x2c]
mov dword [esi + 0x1c], eax
lea eax, [ebp - 0x1c]
push eax
call fcn.1004a490
mov esi, dword [0x100d517c]
lea ecx, [ebp - 0x64]
push dword [ebp - 0x28]
add edi, 0xb80
call fcn.10030490
push 0x10
push str.lby_update_color
lea ecx, [ebp - 0x64]
mov dword [ebp - 4], 0x8c
call fcn.100304b0
mov dword [ebp - 4], 0x8d
lea ecx, [ebp - 0x4c]
push dword [ebp - 0x28]
call fcn.10030490
push 5
push str.color
lea ecx, [ebp - 0x4c]
mov byte [ebp - 4], 0x8e
call fcn.100304b0
mov eax, dword [ebp - 0x30]
lea ecx, [ebp - 0x4c]
mov byte [ebp - 4], 0x8f
push ecx
lea ecx, [eax + 0xc00]
mov dword [eax + 0xbf8], 0
mov dword [eax + 0xbfc], 0
mov byte [eax + 0xbed], 0
call fcn.1002f900
mov ecx, dword [ebp - 0x30]
lea eax, [ebp - 0x64]
push eax
lea ecx, [ecx + 0xbb8]
call fcn.1002f900
mov eax, dword [ebp - 0x30]
lea ecx, [ebp - 0x4c]
mov dword [eax + 0xc18], esi
mov dword [eax + 0xc30], 0
call fcn.1002f930
lea ecx, [ebp - 0x64]
mov dword [ebp - 4], 0xffffffff
call fcn.1002f930
mov ecx, dword [ebp - 0xa4]
mov dword [ebp - 0x1c], edi
mov dword [edi + 0x18], 0
imul eax, dword [edi + 0x18], 0xeb
add eax, 0x14
mov dword [edi + 4], eax
mov eax, dword [ebp - 0x30]
mov dword [edi + 0xc], 0xaf
mov eax, dword [eax + 0x2c]
mov dword [edi + 0x1c], eax
lea eax, [ebp - 0x1c]
push eax
call fcn.1004a490
mov edi, dword [ebp - 0x30]
lea ecx, [ebp - 0x64]
push dword [ebp - 0x28]
lea esi, [edi + 0xc50]
call fcn.10030490
push 0xd
push 0x100d70ec
lea ecx, [ebp - 0x64]
mov dword [ebp - 4], 0x90
call fcn.100304b0
mov dword [ebp - 4], 0x91
lea ecx, [ebp - 0x4c]
push dword [ebp - 0x28]
call fcn.10030490
push 0xd
push str.ragdoll_force
lea ecx, [ebp - 0x4c]
mov byte [ebp - 4], 0x92
call fcn.100304b0
lea eax, [ebp - 0x64]
mov byte [ebp - 4], 0x93
push eax
lea ecx, [edi + 0xc88]
call fcn.1002f900
lea eax, [ebp - 0x4c]
mov byte [edi + 0xcb9], 1
push eax
lea ecx, [edi + 0xcc0]
call fcn.1002f900
lea ecx, [ebp - 0x4c]
mov byte [edi + 0xcbc], 0
call fcn.1002f930
lea ecx, [ebp - 0x64]
mov dword [ebp - 4], 0xffffffff
call fcn.1002f930
mov dword [ebp - 0x1c], 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 - 0x1c]
push eax
call fcn.1004a490
push dword [ebp - 0x28]
lea ecx, [ebp - 0xf0]
call fcn.10030490
push 5
push str.enemy
lea ecx, [ebp - 0xf0]
mov dword [ebp - 4], 0x94
call fcn.100304b0
mov dword [ebp - 4], 0x95
lea ecx, [ebp - 0xd8]
push dword [ebp - 0x28]
call fcn.10030490
push 8
push str.friendly
lea ecx, [ebp - 0xd8]
mov byte [ebp - 4], 0x96
call fcn.100304b0
push dword [ebp - 0x28]
lea ecx, [ebp - 0xc0]
call fcn.10030490
push 5
push str.local
lea ecx, [ebp - 0xc0]
mov byte [ebp - 4], 0x98
call fcn.100304b0
lea eax, [ebp - 0x21]
mov dword [ebp - 4], 0x99
push eax
lea ecx, [ebp - 0xa8]
push ecx
lea edx, [ebp - 0xf0]
push edx
lea ecx, [ebp - 0x90]
call fcn.10089aa0
push dword [ebp - 0x28]
lea ecx, [ebp - 0x64]
call fcn.10030490
push 4
push str.glow
lea ecx, [ebp - 0x64]
mov byte [ebp - 4], 0x9b
call fcn.100304b0
push dword [ebp - 0x28]
lea ecx, [ebp - 0x4c]
call fcn.10030490
mov byte [ebp - 4], 0x9d
push 4
push str.glow
lea ecx, [ebp - 0x4c]
call fcn.100304b0
lea ecx, [ebp - 0x78]
call fcn.10030c60
lea eax, [ebp - 0x64]
mov byte [ebp - 4], 0x9f
push eax
lea ecx, [edi + 0xd10]
call fcn.1002f900
lea eax, [ebp - 0x4c]
mov byte [edi + 0xd41], 1
push eax
lea ecx, [edi + 0xd48]
call fcn.1002f900
mov esi, dword [ebp - 0x90]
xor eax, eax
cmp byte [edi + 0xd41], al
mov ecx, 0xf
cmovne eax, ecx
mov dword [edi + 0xd7c], eax
add eax, 0x14
mov dword [edi + 0xce8], eax
mov dword [edi + 0xcec], eax
mov eax, dword [ebp - 0x8c]
mov dword [ebp - 0x20], eax
cmp esi, eax
je 0x10066149
lea eax, [edi + 0xd60]
mov edi, eax
push esi
mov ecx, edi
call fcn.10056500
add esi, 0x18
cmp esi, dword [ebp - 0x20]
jne 0x10066136
mov edi, dword [ebp - 0x30]
mov ecx, dword [ebp - 0x74]
mov eax, dword [ebp - 0x78]
mov dword [ebp - 0x20], ecx
mov dword [ebp - 0x34], eax
cmp eax, ecx
je 0x1006620e
lea ecx, [edi + 0xd70]
mov eax, dword [eax]
mov dword [ebp - 0x18], eax
lea eax, [ebp - 0x28]
push eax
call fcn.1002ec70
lea ecx, [edi + 0xd70]
mov esi, dword [eax]
lea eax, [ebp - 0xa0]
push eax
call fcn.1002ec80
push esi
lea edx, [ebp - 0x18]
lea ecx, [ebp - 0x9c]
push dword [eax]
call fcn.10030070
add esp, 8
lea ecx, [edi + 0xd70]
mov esi, eax
lea eax, [ebp - 0x98]
push eax
call fcn.1002ec70
mov ecx, dword [edi + 0xd64]
sub ecx, dword [edi + 0xd60]
mov esi, dword [esi]
mov eax, dword [eax]
mov dword [ebp - 0x1c], eax
mov eax, 0x2aaaaaab
imul ecx
sar edx, 2
mov eax, edx
shr eax, 0x1f
add eax, edx
cmp dword [ebp - 0x18], eax
jae 0x100661e5
lea eax, [ebp - 0x18]
push eax
lea ecx, [edi + 0xd70]
call fcn.1004a490
cmp esi, dword [ebp - 0x1c]
jne 0x100661f6
mov eax, dword [edi + 0xd3c]
test eax, eax
je 0x100661f6
call eax
mov eax, dword [ebp - 0x34]
lea ecx, [edi + 0xd70]
add eax, 4
mov dword [ebp - 0x34], eax
cmp eax, dword [ebp - 0x20]
jne 0x10066163
lea ecx, [ebp - 0x78]
call fcn.1002ef90
lea ecx, [ebp - 0x4c]
call fcn.1002f930
lea ecx, [ebp - 0x64]
call fcn.1002f930
lea ecx, [ebp - 0x90]
call fcn.10056230
push fcn.1002f930
push 3
push 0x18
lea eax, [ebp - 0xf0]
mov dword [ebp - 4], 0xffffffff
push eax
call fcn.100c3d56
lea eax, [edi + 0xcd8]
mov dword [ebp - 0x1c], eax
lea ecx, [edi + 0x18]
mov dword [edi + 0xcf0], 1
imul eax, dword [edi + 0xcf0], 0xeb
add eax, 0x14
mov dword [edi + 0xcdc], eax
mov dword [edi + 0xce4], 0xaf
mov eax, dword [edi + 0x2c]
mov dword [edi + 0xcf4], eax
lea eax, [ebp - 0x1c]
push eax
call fcn.1004a490
push dword [ebp - 0x28]
lea ecx, [ebp - 0x64]
lea esi, [edi + 0xd80]
call fcn.10030490
push 0xa
push str.glow_enemy
lea ecx, [ebp - 0x64]
mov dword [ebp - 4], 0xa0
call fcn.100304b0
mov dword [ebp - 4], 0xa1
lea ecx, [ebp - 0x4c]
push dword [ebp - 0x28]
call fcn.10030490
push 0xb
push str.enemy_color
lea ecx, [ebp - 0x4c]
mov byte [ebp - 4], 0xa2
call fcn.100304b0
mov byte [ebp - 4], 0xa3
lea eax, [ebp - 0x4c]
push eax
lea ecx, [edi + 0xe00]
mov dword [edi + 0xdf8], 0
mov dword [edi + 0xdfc], 0
mov byte [edi + 0xded], 0
call fcn.1002f900
lea eax, [ebp - 0x64]
push eax
lea ecx, [edi + 0xdb8]
call fcn.1002f900
lea ecx, [ebp - 0x4c]
mov dword [edi + 0xe18], 0xffffffff
mov dword [edi + 0xe30], 0
call fcn.1002f930
lea ecx, [ebp - 0x64]
mov dword [ebp - 4], 0xffffffff
call fcn.1002f930
lea eax, [ebp - 0x1c]
mov dword [ebp - 0x1c], 0x10035940
lea ecx, [esi + 0x58]
push eax
call fcn.1004a490
mov dword [ebp - 0x1c], esi
mov dword [edi + 0xd98], 1
imul eax, dword [edi + 0xd98], 0xeb
add eax, 0x14
mov dword [edi + 0xd84], eax
mov dword [edi + 0xd8c], 0xaf
mov eax, dword [edi + 0x2c]
mov dword [edi + 0xd9c], eax
lea ecx, [edi + 0x18]
lea eax, [ebp - 0x1c]
push eax
call fcn.1004a490
push dword [ebp - 0x28]
lea ecx, [ebp - 0x64]
lea esi, [edi + 0xe50]
call fcn.10030490
push 0xa
push str.glow_local
lea ecx, [ebp - 0x64]
mov dword [ebp - 4], 0xa4
call fcn.100304b0
mov dword [ebp - 4], 0xa5
lea ecx, [ebp - 0x4c]
push dword [ebp - 0x28]
call fcn.10030490
push 0x10
push str.local_glow_color
lea ecx, [ebp - 0x4c]
mov byte [ebp - 4], 0xa6
call fcn.100304b0
mov byte [ebp - 4], 0xa7
lea eax, [ebp - 0x4c]
push eax
lea ecx, [edi + 0xed0]
mov dword [edi + 0xec8], 0
mov dword [edi + 0xecc], 0
mov byte [edi + 0xebd], 0
call fcn.1002f900
lea eax, [ebp - 0x64]
push eax
lea ecx, [edi + 0xe88]
call fcn.1002f900
lea ecx, [ebp - 0x4c]
mov dword [edi + 0xee8], 0xffffffff
mov dword [edi + 0xf00], 0
call fcn.1002f930
lea ecx, [ebp - 0x64]
mov dword [ebp - 4], 0xffffffff
call fcn.1002f930
lea eax, [ebp - 0x1c]
mov dword [ebp - 0x1c], 0x10035900
lea ecx, [esi + 0x58]
push eax
call fcn.1004a490
mov dword [ebp - 0x1c], esi
lea ecx, [edi + 0x18]
mov dword [edi + 0xe68], 1
imul eax, dword [edi + 0xe68], 0xeb
add eax, 0x14
mov dword [edi + 0xe54], eax
mov dword [edi + 0xe5c], 0xaf
mov eax, dword [edi + 0x2c]
mov dword [edi + 0xe6c], eax
lea eax, [ebp - 0x1c]
push eax
call fcn.1004a490
push dword [ebp - 0x28]
lea ecx, [ebp - 0x64]
lea esi, [edi + 0xf20]
call fcn.10030490
push 0xd
push str.glow_friendly
lea ecx, [ebp - 0x64]
mov dword [ebp - 4], 0xa8
call fcn.100304b0
mov dword [ebp - 4], 0xa9
lea ecx, [ebp - 0x4c]
push dword [ebp - 0x28]
call fcn.10030490
mov byte [ebp - 4], 0xaa
push 0xe
push str.friendly_color
lea ecx, [ebp - 0x4c]
call fcn.100304b0
mov byte [ebp - 4], 0xab
lea eax, [ebp - 0x4c]
push eax
lea ecx, [edi + 0xfa0]
mov dword [edi + 0xf98], 0
mov dword [edi + 0xf9c], 0
mov byte [edi + 0xf8d], 0
call fcn.1002f900
lea eax, [ebp - 0x64]
push eax
lea ecx, [edi + 0xf58]
call fcn.1002f900
lea ecx, [ebp - 0x4c]
mov dword [edi + 0xfb8], 0xffffffff
mov dword [edi + 0xfd0], 0
call fcn.1002f930
lea ecx, [ebp - 0x64]
mov dword [ebp - 4], 0xffffffff
call fcn.1002f930
lea eax, [ebp - 0x1c]
mov dword [ebp - 0x1c], 0x10035920
lea ecx, [esi + 0x58]
push eax
call fcn.1004a490
mov dword [ebp - 0x1c], esi
lea ecx, [edi + 0x18]
mov dword [edi + 0xf38], 1
imul eax, dword [edi + 0xf38], 0xeb
add eax, 0x14
mov dword [edi + 0xf24], eax
mov dword [edi + 0xf2c], 0xaf
mov eax, dword [edi + 0x2c]
mov dword [edi + 0xf3c], eax
lea eax, [ebp - 0x1c]
push eax
call fcn.1004a490
push dword [ebp - 0x28]
lea ecx, [ebp - 0xd8]
call fcn.10030490
push 5
push str.enemy
lea ecx, [ebp - 0xd8]
mov dword [ebp - 4], 0xac
call fcn.100304b0
mov dword [ebp - 4], 0xad
lea ecx, [ebp - 0xc0]
push dword [ebp - 0x28]
call fcn.10030490
push 8
push str.friendly
lea ecx, [ebp - 0xc0]
mov byte [ebp - 4], 0xae
call fcn.100304b0
lea eax, [ebp - 0x21]
mov dword [ebp - 4], 0xaf
push eax
lea ecx, [ebp - 0xa8]
push ecx
lea edx, [ebp - 0xd8]
push edx
lea ecx, [ebp - 0x90]
call fcn.10089aa0
push dword [ebp - 0x28]
lea ecx, [ebp - 0x64]
call fcn.10030490
push 8
push str.skeleton
lea ecx, [ebp - 0x64]
mov byte [ebp - 4], 0xb1
call fcn.100304b0
push dword [ebp - 0x28]
lea ecx, [ebp - 0x4c]
call fcn.10030490
push 8
push str.skeleton
lea ecx, [ebp - 0x4c]
mov byte [ebp - 4], 0xb3
call fcn.100304b0
lea ecx, [ebp - 0x78]
call fcn.10030c60
lea eax, [ebp - 0x64]
mov byte [ebp - 4], 0xb5
push eax
lea ecx, [edi + 0x1028]
call fcn.1002f900
lea eax, [ebp - 0x4c]
mov byte [edi + 0x1059], 1
push eax
lea ecx, [edi + 0x1060]
call fcn.1002f900
mov esi, dword [ebp - 0x90]
xor eax, eax
cmp byte [edi + 0x1059], al
mov ecx, 0xf
cmovne eax, ecx
mov dword [edi + 0x1094], eax
add eax, 0x14
mov dword [edi + 0x1000], eax
mov dword [edi + 0x1004], eax
mov eax, dword [ebp - 0x8c]
mov dword [ebp - 0x1c], eax
cmp esi, eax
je 0x100666e5
lea eax, [edi + 0x1078]
mov edi, dword [ebp - 0x1c]
mov dword [ebp - 0x20], eax
nop dword [eax + eax]
push esi
mov ecx, eax
call fcn.10056500
mov eax, dword [ebp - 0x20]
add esi, 0x18
cmp esi, edi
jne 0x100666d0
mov edi, dword [ebp - 0x30]
mov ecx, dword [ebp - 0x74]
mov eax, dword [ebp - 0x78]
mov dword [ebp - 0x20], ecx
mov dword [ebp - 0x34], eax
cmp eax, ecx
je 0x100667ab
lea ecx, [edi + 0x1088]
nop
mov eax, dword [eax]
mov dword [ebp - 0x18], eax
lea eax, [ebp - 0x28]
push eax
call fcn.1002ec70
lea ecx, [edi + 0x1088]
mov esi, dword [eax]
lea eax, [ebp - 0xa0]
push eax
call fcn.1002ec80
push esi
lea edx, [ebp - 0x18]
lea ecx, [ebp - 0x9c]
push dword [eax]
call fcn.10030070
add esp, 8
lea ecx, [edi + 0x1088]
mov esi, eax
lea eax, [ebp - 0x98]
push eax
call fcn.1002ec70
mov ecx, dword [edi + 0x107c]
sub ecx, dword [edi + 0x1078]
mov esi, dword [esi]
mov eax, dword [eax]
mov dword [ebp - 0x1c], eax
mov eax, 0x2aaaaaab
imul ecx
sar edx, 2
mov eax, edx
shr eax, 0x1f
add eax, edx
cmp dword [ebp - 0x18], eax
jae 0x10066782
lea eax, [ebp - 0x18]
push eax
lea ecx, [edi + 0x1088]
call fcn.1004a490
cmp esi, dword [ebp - 0x1c]
jne 0x10066793
mov eax, dword [edi + 0x1054]
test eax, eax
je 0x10066793
call eax
mov eax, dword [ebp - 0x34]
lea ecx, [edi + 0x1088]
add eax, 4
mov dword [ebp - 0x34], eax
cmp eax, dword [ebp - 0x20]
jne 0x10066700
lea ecx, [ebp - 0x78]
call fcn.1002ef90
lea ecx, [ebp - 0x4c]
call fcn.1002f930
lea ecx, [ebp - 0x64]
call fcn.1002f930
lea ecx, [ebp - 0x90]
call fcn.10056230
push fcn.1002f930
push 2
push 0x18
lea eax, [ebp - 0xd8]
mov dword [ebp - 4], 0xffffffff
push eax
call fcn.100c3d56
lea eax, [edi + 0xff0]
mov dword [ebp - 0x1c], eax
lea ecx, [edi + 0x18]
mov dword [edi + 0x1008], 1
imul eax, dword [edi + 0x1008], 0xeb
add eax, 0x14
mov dword [edi + 0xff4], eax
mov dword [edi + 0xffc], 0xaf
mov eax, dword [edi + 0x2c]
mov dword [edi + 0x100c], eax
lea eax, [ebp - 0x1c]
push eax
call fcn.1004a490
push dword [ebp - 0x28]
lea ecx, [ebp - 0x64]
lea esi, [edi + 0x1098]
call fcn.10030490
push 0xe
push str.skeleton_enemy
lea ecx, [ebp - 0x64]
mov dword [ebp - 4], 0xb6
call fcn.100304b0
mov dword [ebp - 4], 0xb7
lea ecx, [ebp - 0x4c]
push dword [ebp - 0x28]
call fcn.10030490
push 0xb
push str.enemy_color
lea ecx, [ebp - 0x4c]
mov byte [ebp - 4], 0xb8
call fcn.100304b0
mov byte [ebp - 4], 0xb9
lea eax, [ebp - 0x4c]
push eax
lea ecx, [edi + 0x1118]
mov dword [edi + 0x1110], 0
mov dword [edi + 0x1114], 0
mov byte [edi + 0x1105], 0
call fcn.1002f900
lea eax, [ebp - 0x64]
push eax
lea ecx, [edi + 0x10d0]
call fcn.1002f900
lea ecx, [ebp - 0x4c]
mov dword [edi + 0x1130], 0xffffffff
mov dword [edi + 0x1148], 0
call fcn.1002f930
lea ecx, [ebp - 0x64]
mov dword [ebp - 4], 0xffffffff
call fcn.1002f930
lea eax, [ebp - 0x1c]
mov dword [ebp - 0x1c], 0x100359e0
lea ecx, [esi + 0x58]
push eax
call fcn.1004a490
mov dword [ebp - 0x1c], esi
mov dword [edi + 0x10b0], 1
imul eax, dword [edi + 0x10b0], 0xeb
add eax, 0x14
mov dword [edi + 0x109c], eax
mov dword [edi + 0x10a4], 0xaf
mov eax, dword [edi + 0x2c]
mov dword [edi + 0x10b4], eax
lea ecx, [edi + 0x18]
lea eax, [ebp - 0x1c]
push eax
call fcn.1004a490
push dword [ebp - 0x28]
lea ecx, [ebp - 0x64]
lea esi, [edi + 0x1168]
call fcn.10030490
push 0x11
push str.skeleton_friendly
lea ecx, [ebp - 0x64]
mov dword [ebp - 4], 0xba
call fcn.100304b0
mov dword [ebp - 4], 0xbb
lea ecx, [ebp - 0x4c]
push dword [ebp - 0x28]
call fcn.10030490
push 0xe
push str.friendly_color
lea ecx, [ebp - 0x4c]
mov byte [ebp - 4], 0xbc
call fcn.100304b0
mov byte [ebp - 4], 0xbd
lea eax, [ebp - 0x4c]
push eax
lea ecx, [edi + 0x11e8]
mov dword [edi + 0x11e0], 0
mov dword [edi + 0x11e4], 0
mov byte [edi + 0x11d5], 0
call fcn.1002f900
lea eax, [ebp - 0x64]
push eax
lea ecx, [edi + 0x11a0]
call fcn.1002f900
lea ecx, [ebp - 0x4c]
mov dword [edi + 0x1200], 0xffffffff
mov dword [edi + 0x1218], 0
call fcn.1002f930
lea ecx, [ebp - 0x64]
mov dword [ebp - 4], 0xffffffff
call fcn.1002f930
lea eax, [ebp - 0x1c]
mov dword [ebp - 0x1c], 0x100359c0
lea ecx, [esi + 0x58]
push eax
call fcn.1004a490
mov dword [ebp - 0x1c], esi
lea ecx, [edi + 0x18]
mov dword [edi + 0x1180], 1
imul eax, dword [edi + 0x1180], 0xeb
add eax, 0x14
mov dword [edi + 0x116c], eax
mov dword [edi + 0x1174], 0xaf
mov eax, dword [edi + 0x2c]
mov dword [edi + 0x1184], eax
lea eax, [ebp - 0x1c]
push eax
call fcn.1004a490
push dword [ebp - 0x28]
lea ecx, [ebp - 0x150]
call fcn.10030490
push 0xc
push str.glow_broken_
lea ecx, [ebp - 0x150]
mov dword [ebp - 4], 0xbe
call fcn.100304b0
mov dword [ebp - 4], 0xbf
lea ecx, [ebp - 0x138]
push dword [ebp - 0x28]
call fcn.10030490
push 0xd
mov byte [ebp - 4], 0xc0
push str.visible_chams
lea ecx, [ebp - 0x138]
call fcn.100304b0
push dword [ebp - 0x28]
lea ecx, [ebp - 0x120]
call fcn.10030490
push 0xf
push str.invisible_chams
lea ecx, [ebp - 0x120]
mov byte [ebp - 4], 0xc2
call fcn.100304b0
push dword [ebp - 0x28]
lea ecx, [ebp - 0x108]
call fcn.10030490
push 0xd
push str.history_chams
lea ecx, [ebp - 0x108]
mov byte [ebp - 4], 0xc4
call fcn.100304b0
push dword [ebp - 0x28]
lea ecx, [ebp - 0xf0]
call fcn.10030490
push 0x12
push str.shot_chams_broken_
lea ecx, [ebp - 0xf0]
mov byte [ebp - 4], 0xc6
call fcn.100304b0
push dword [ebp - 0x28]
lea ecx, [ebp - 0xd8]
call fcn.10030490
push 0xe
push str.weapon_chams_1
lea ecx, [ebp - 0xd8]
mov byte [ebp - 4], 0xc8
call fcn.100304b0
push dword [ebp - 0x28]
lea ecx, [ebp - 0xc0]
call fcn.10030490
push 0xe
push str.weapon_chams_2
lea ecx, [ebp - 0xc0]
mov byte [ebp - 4], 0xca
call fcn.100304b0
lea eax, [ebp - 0x21]
mov dword [ebp - 4], 0xcb
push eax
lea ecx, [ebp - 0xa8]
push ecx
lea edx, [ebp - 0x150]
push edx
lea ecx, [ebp - 0x90]
call fcn.10089aa0
push dword [ebp - 0x28]
lea ecx, [ebp - 0x64]
call fcn.10030490
push 0xf
push str.rainbow_visuals
lea ecx, [ebp - 0x64]
mov byte [ebp - 4], 0xcd
call fcn.100304b0
push dword [ebp - 0x28]
lea ecx, [ebp - 0x4c]
call fcn.10030490
push 0x17
mov byte [ebp - 4], 0xcf
lea ecx, [ebp - 0x4c]
push str.rainbow_visual_elements
call fcn.100304b0
lea ecx, [ebp - 0x78]
call fcn.10030c60
lea eax, [ebp - 0x64]
mov byte [ebp - 4], 0xd1
push eax
lea ecx, [edi + 0x1660]
call fcn.1002f900
lea eax, [ebp - 0x4c]
mov byte [edi + 0x1691], 1
push eax
lea ecx, [edi + 0x1698]
call fcn.1002f900
mov esi, dword [ebp - 0x90]
xor eax, eax
cmp byte [edi + 0x1691], al
mov ecx, 0xf
cmovne eax, ecx
mov dword [edi + 0x16cc], eax
add eax, 0x14
mov dword [edi + 0x1638], eax
mov dword [edi + 0x163c], eax
mov eax, dword [ebp - 0x8c]
mov dword [ebp - 0x1c], eax
cmp esi, eax
je 0x10066c2b
lea eax, [edi + 0x16b0]
mov edi, dword [ebp - 0x1c]
mov dword [ebp - 0x20], eax
push esi
mov ecx, eax
call fcn.10056500
mov eax, dword [ebp - 0x20]
add esi, 0x18
cmp esi, edi
jne 0x10066c16
mov edi, dword [ebp - 0x30]
mov ecx, dword [ebp - 0x74]
mov eax, dword [ebp - 0x78]
mov dword [ebp - 0x20], ecx
mov dword [ebp - 0x34], eax
cmp eax, ecx
je 0x10066cf0
lea ecx, [edi + 0x16c0]
mov eax, dword [eax]
mov dword [ebp - 0x18], eax
lea eax, [ebp - 0x28]
push eax
call fcn.1002ec70
lea ecx, [edi + 0x16c0]
mov esi, dword [eax]
lea eax, [ebp - 0xa0]
push eax
call fcn.1002ec80
push esi
lea edx, [ebp - 0x18]
lea ecx, [ebp - 0x9c]
push dword [eax]
call fcn.10030070
add esp, 8
lea ecx, [edi + 0x16c0]
mov esi, eax
lea eax, [ebp - 0x98]
push eax
call fcn.1002ec70
mov ecx, dword [edi + 0x16b4]
sub ecx, dword [edi + 0x16b0]
mov esi, dword [esi]
mov eax, dword [eax]
mov dword [ebp - 0x1c], eax
mov eax, 0x2aaaaaab
imul ecx
sar edx, 2
mov eax, edx
shr eax, 0x1f
add eax, edx
cmp dword [ebp - 0x18], eax
jae 0x10066cc7
lea eax, [ebp - 0x18]
push eax
lea ecx, [edi + 0x16c0]
call fcn.1004a490
cmp esi, dword [ebp - 0x1c]
jne 0x10066cd8
mov eax, dword [edi + 0x168c]
test eax, eax
je 0x10066cd8
call eax
mov eax, dword [ebp - 0x34]
lea ecx, [edi + 0x16c0]
add eax, 4
mov dword [ebp - 0x34], eax
cmp eax, dword [ebp - 0x20]
jne 0x10066c45
lea ecx, [ebp - 0x78]
call fcn.1002ef90
lea ecx, [ebp - 0x4c]
call fcn.1002f930
lea ecx, [ebp - 0x64]
call fcn.1002f930
lea ecx, [ebp - 0x90]
call fcn.10056230
push fcn.1002f930
push 7
push 0x18
lea eax, [ebp - 0x150]
mov dword [ebp - 4], 0xffffffff
push eax
call fcn.100c3d56
lea eax, [edi + 0x1628]
mov dword [ebp - 0x1c], eax
lea ecx, [edi + 0x18]
mov dword [edi + 0x1640], 1
imul eax, dword [edi + 0x1640], 0xeb
add eax, 0x14
mov dword [edi + 0x162c], eax
mov dword [edi + 0x1634], 0xaf
mov eax, dword [edi + 0x2c]
mov dword [edi + 0x1644], eax
lea eax, [ebp - 0x1c]
push eax
call fcn.1004a490
push dword [ebp - 0x28]
lea ecx, [ebp - 0x80]
lea esi, [edi + 0x2a10]
call fcn.10030490
push 0
push 0x100d63a4
lea ecx, [ebp - 0x80]
mov dword [ebp - 4], 0xd2
call fcn.100411d0
mov dword [ebp - 4], 0xd3
lea ecx, [ebp - 0x64]
push dword [ebp - 0x28]
call fcn.10030490
push 0xd
push 0x100d7224
lea ecx, [ebp - 0x64]
mov byte [ebp - 4], 0xd4
call fcn.100304b0
push dword [ebp - 0x28]
lea ecx, [ebp - 0x4c]
call fcn.10030490
push 0xd
push str.rainbow_speed
lea ecx, [ebp - 0x4c]
mov byte [ebp - 4], 0xd6
call fcn.100304b0
lea eax, [ebp - 0x64]
mov byte [ebp - 4], 0xd7
push eax
lea ecx, [edi + 0x2a48]
call fcn.1002f900
lea eax, [ebp - 0x4c]
mov byte [edi + 0x2a79], 1
push eax
lea ecx, [edi + 0x2a98]
call fcn.1002f900
xor eax, eax
mov dword [edi + 0x2a84], 0x3f800000
cmp byte [edi + 0x2a79], al
mov ecx, 0xf
mov dword [edi + 0x2a88], 0x42480000
cmovne eax, ecx
mov dword [edi + 0x2a80], 0x3f800000
mov dword [edi + 0x2ac8], eax
add eax, 8
mov dword [edi + 0x2a20], eax
mov dword [edi + 0x2a24], eax
lea eax, [ebp - 0x80]
mov dword [edi + 0x2a94], 0
push eax
lea ecx, [edi + 0x2ab0]
mov dword [edi + 0x2a8c], 0x3f800000
call fcn.10089ef0
lea ecx, [ebp - 0x4c]
call fcn.1002f930
lea ecx, [ebp - 0x64]
call fcn.1002f930
lea ecx, [ebp - 0x80]
mov dword [ebp - 4], 0xffffffff
call fcn.100409f0
mov dword [ebp - 0x1c], 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 - 0x1c]
push eax
call fcn.1004a490
push dword [ebp - 0x28]
lea ecx, [ebp - 0x150]
call fcn.10030490
push 5
push str.local
lea ecx, [ebp - 0x150]
mov dword [ebp - 4], 0xd8
call fcn.100304b0
mov dword [ebp - 4], 0xd9
lea ecx, [ebp - 0x138]
push dword [ebp - 0x28]
call fcn.10030490
push 5
push str.enemy
lea ecx, [ebp - 0x138]
mov byte [ebp - 4], 0xda
call fcn.100304b0
push dword [ebp - 0x28]
lea ecx, [ebp - 0x120]
call fcn.10030490
push 8
push str.friendly
lea ecx, [ebp - 0x120]
mov byte [ebp - 4], 0xdc
call fcn.100304b0
push dword [ebp - 0x28]
lea ecx, [ebp - 0x108]
call fcn.10030490
push 7
push str.history
lea ecx, [ebp - 0x108]
mov byte [ebp - 4], 0xde
call fcn.100304b0
push dword [ebp - 0x28]
lea ecx, [ebp - 0xf0]
call fcn.10030490
push 4
push str.fake
lea ecx, [ebp - 0xf0]
mov byte [ebp - 4], 0xe0
call fcn.100304b0
push dword [ebp - 0x28]
lea ecx, [ebp - 0xd8]
call fcn.10030490
mov byte [ebp - 4], 0xe2
push 0xc
push str.shot_broken_
lea ecx, [ebp - 0xd8]
call fcn.100304b0
push dword [ebp - 0x28]
lea ecx, [ebp - 0xc0]
call fcn.10030490
push 6
push str.weapon
lea ecx, [ebp - 0xc0]
mov byte [ebp - 4], 0xe4
call fcn.100304b0
lea eax, [ebp - 0x21]
mov dword [ebp - 4], 0xe5
push eax
lea ecx, [ebp - 0xa8]
push ecx
lea edx, [ebp - 0x150]
push edx
lea ecx, [ebp - 0x74]
call fcn.10089aa0
push dword [ebp - 0x28]
lea ecx, [ebp - 0x64]
call fcn.10030490
push 0x16
push str.chams_entity_selection
lea ecx, [ebp - 0x64]
mov byte [ebp - 4], 0xe7
call fcn.100304b0
push dword [ebp - 0x28]
lea ecx, [ebp - 0x4c]
call fcn.10030490
push 0xf
push str.chams_selection
lea ecx, [ebp - 0x4c]
mov byte [ebp - 4], 0xe9
call fcn.100304b0
lea eax, [ebp - 0x64]
mov byte [ebp - 4], 0xea
push eax
lea ecx, [edi + 0x1270]
call fcn.1002f900
lea eax, [ebp - 0x4c]
mov byte [edi + 0x12a1], 1
push eax
lea ecx, [edi + 0x12a8]
call fcn.1002f900
mov esi, dword [ebp - 0x74]
xor eax, eax
cmp byte [edi + 0x12a1], al
mov ecx, 0xf
cmovne eax, ecx
mov dword [edi + 0x12d4], eax
add eax, 0x14
mov dword [edi + 0x1248], eax
mov dword [edi + 0x124c], eax
mov eax, dword [ebp - 0x70]
mov dword [ebp - 0x1c], eax
cmp esi, eax
je 0x1006709b
lea eax, [edi + 0x12c0]
mov edi, dword [ebp - 0x1c]
mov dword [ebp - 0x20], eax
push esi
mov ecx, eax
call fcn.10056500
mov eax, dword [ebp - 0x20]
add esi, 0x18
cmp esi, edi
jne 0x10067086
mov edi, dword [ebp - 0x30]
mov ecx, dword [edi + 0x12c4]
mov eax, 0x2aaaaaab
sub ecx, dword [edi + 0x12c0]
imul ecx
sar edx, 2
mov eax, edx
shr eax, 0x1f
add eax, edx
je 0x100670c4
mov dword [edi + 0x12d0], 0
lea ecx, [ebp - 0x4c]
call fcn.1002f930
lea ecx, [ebp - 0x64]
call fcn.1002f930
lea ecx, [ebp - 0x74]
call fcn.10056230
push fcn.1002f930
push 7
push 0x18
lea eax, [ebp - 0x150]
mov dword [ebp - 4], 0xffffffff
push eax
call fcn.100c3d56
lea eax, [edi + 0x1238]
mov dword [ebp - 0x1c], eax
lea ecx, [edi + 0x18]
mov dword [edi + 0x1250], 1
imul eax, dword [edi + 0x1250], 0xeb
add eax, 0x14
mov dword [edi + 0x123c], eax
mov dword [edi + 0x1244], 0xaf
mov eax, dword [edi + 0x2c]
mov dword [edi + 0x1254], eax
lea eax, [ebp - 0x1c]
push eax
call fcn.1004a490
push dword [ebp - 0x28]
lea ecx, [ebp - 0x64]
lea esi, [edi + 0x12d8]
call fcn.10030490
push 0xb
push str.chams_local
lea ecx, [ebp - 0x64]
mov dword [ebp - 4], 0xeb
call fcn.100304b0
mov dword [ebp - 4], 0xec
lea ecx, [ebp - 0x4c]
push dword [ebp - 0x28]
call fcn.10030490
push 0xb
push 0x100d7294
lea ecx, [ebp - 0x4c]
mov byte [ebp - 4], 0xed
call fcn.100304b0
lea eax, [ebp - 0x64]
mov byte [ebp - 4], 0xee
push eax
lea ecx, [edi + 0x1310]
call fcn.1002f900
lea eax, [ebp - 0x4c]
mov byte [edi + 0x1341], 1
push eax
lea ecx, [edi + 0x1348]
call fcn.1002f900
lea ecx, [ebp - 0x4c]
mov byte [edi + 0x1344], 0
call fcn.1002f930
lea ecx, [ebp - 0x64]
mov dword [ebp - 4], 0xffffffff
call fcn.1002f930
lea eax, [ebp - 0x1c]
mov dword [ebp - 0x1c], 0x10035960
lea ecx, [esi + 0x58]
push eax
call fcn.1004a490
mov dword [ebp - 0x1c], esi
lea ecx, [edi + 0x18]
mov dword [edi + 0x12f0], 1
imul eax, dword [edi + 0x12f0], 0xeb
add eax, 0x14
mov dword [edi + 0x12dc], eax
mov dword [edi + 0x12e4], 0xaf
mov eax, dword [edi + 0x2c]
mov dword [edi + 0x12f4], eax
lea eax, [ebp - 0x1c]
push eax
call fcn.1004a490
push dword [ebp - 0x28]
lea ecx, [ebp - 0x120]
call fcn.10030490
push 8
push str.material
lea ecx, [ebp - 0x120]
mov dword [ebp - 4], 0xef
call fcn.100304b0
mov dword [ebp - 4], 0xf0
lea ecx, [ebp - 0x108]
push dword [ebp - 0x28]
call fcn.10030490
push 4
push str.flat
lea ecx, [ebp - 0x108]
mov byte [ebp - 4], 0xf1
call fcn.100304b0
push dword [ebp - 0x28]
lea ecx, [ebp - 0xf0]
call fcn.10030490
push 8
push str.metallic
lea ecx, [ebp - 0xf0]
mov byte [ebp - 4], 0xf3
call fcn.100304b0
push dword [ebp - 0x28]
lea ecx, [ebp - 0xd8]
call fcn.10030490
push 5
push str.gloss
lea ecx, [ebp - 0xd8]
mov byte [ebp - 4], 0xf5
call fcn.100304b0
push dword [ebp - 0x28]
lea ecx, [ebp - 0xc0]
call fcn.10030490
push 4
push str.glow
lea ecx, [ebp - 0xc0]
mov byte [ebp - 4], 0xf7
call fcn.100304b0
lea eax, [ebp - 0x21]
mov dword [ebp - 4], 0xf8
push eax
lea ecx, [ebp - 0xa8]
push ecx
lea edx, [ebp - 0x120]
push edx
lea ecx, [ebp - 0x74]
call fcn.10089aa0
push dword [ebp - 0x28]
lea ecx, [ebp - 0x64]
call fcn.10030490
push 0xf
push str.chams_local_mat
lea ecx, [ebp - 0x64]
mov byte [ebp - 4], 0xfa
call fcn.100304b0
push dword [ebp - 0x28]
lea ecx, [ebp - 0x4c]
call fcn.10030490
push 0x14
push str.chams_local_material
lea ecx, [ebp - 0x4c]
mov byte [ebp - 4], 0xfc
call fcn.100304b0
lea eax, [ebp - 0x64]
mov byte [ebp - 4], 0xfd
push eax
lea ecx, [edi + 0x1420]
call fcn.1002f900
lea eax, [ebp - 0x4c]
mov byte [edi + 0x1451], 1
push eax
lea ecx, [edi + 0x1458]
call fcn.1002f900
mov esi, dword [ebp - 0x74]
xor eax, eax
cmp byte [edi + 0x1451], al
mov ecx, 0xf
cmovne eax, ecx
mov dword [edi + 0x1484], eax
add eax, 0x14
mov dword [edi + 0x13f8], eax
mov dword [edi + 0x13fc], eax
mov eax, dword [ebp - 0x70]
mov dword [ebp - 0x1c], eax
cmp esi, eax
je 0x100673b9
lea eax, [edi + 0x1470]
mov edi, dword [ebp - 0x1c]
mov dword [ebp - 0x20], eax
push esi
mov ecx, eax
call fcn.10056500
mov eax, dword [ebp - 0x20]
add esi, 0x18
cmp esi, edi
jne 0x100673a4
mov edi, dword [ebp - 0x30]
mov ecx, dword [edi + 0x1474]
mov eax, 0x2aaaaaab
sub ecx, dword [edi + 0x1470]
imul ecx
sar edx, 2
mov eax, edx
shr eax, 0x1f
add eax, edx
je 0x100673e2
mov dword [edi + 0x1480], 0
lea ecx, [ebp - 0x4c]
call fcn.1002f930
lea ecx, [ebp - 0x64]
call fcn.1002f930
lea ecx, [ebp - 0x74]
call fcn.10056230
push fcn.1002f930
push 5
push 0x18
lea eax, [ebp - 0x120]
mov dword [ebp - 4], 0xffffffff
push eax
call fcn.100c3d56
lea eax, [ebp - 0x1c]
mov dword [ebp - 0x1c], 0x10035960
lea esi, [edi + 0x13e8]
lea ecx, [esi + 0x58]
push eax
call fcn.1004a490
mov dword [ebp - 0x1c], esi
lea ecx, [edi + 0x18]
mov dword [edi + 0x1400], 1
imul eax, dword [edi + 0x1400], 0xeb
add eax, 0x14
mov dword [edi + 0x13ec], eax
mov dword [edi + 0x13f4], 0xaf
mov eax, dword [edi + 0x2c]
mov dword [edi + 0x1404], eax
lea eax, [ebp - 0x1c]
push eax
call fcn.1004a490
push dword [ebp - 0x28]
lea ecx, [ebp - 0x64]
lea esi, [edi + 0x1488]
call fcn.10030490
push 0xf
push str.chams_local_col
lea ecx, [ebp - 0x64]
mov dword [ebp - 4], 0xfe
call fcn.100304b0
push dword [ebp - 0x28]
lea ecx, [ebp - 0x4c]
call fcn.10030490
push 5
push str.color
lea ecx, [ebp - 0x4c]
mov dword [ebp - 4], pe_nt_image_headers32
call fcn.100304b0
mov dword [ebp - 4], 0x101
lea eax, [ebp - 0x4c]
push eax
lea ecx, [edi + 0x1508]
mov dword [edi + 0x1500], 0
mov dword [edi + 0x1504], 0
mov byte [edi + 0x14f5], 0
call fcn.1002f900
lea eax, [ebp - 0x64]
push eax
lea ecx, [edi + 0x14c0]
call fcn.1002f900
lea ecx, [ebp - 0x4c]
mov dword [edi + 0x1520], 0xff323232
mov dword [edi + 0x1538], 0
call fcn.1002f930
lea ecx, [ebp - 0x64]
mov dword [ebp - 4], 0xffffffff
call fcn.1002f930
lea eax, [ebp - 0x1c]
mov dword [ebp - 0x1c], 0x10035960
lea ecx, [esi + 0x58]
push eax
call fcn.1004a490
mov dword [ebp - 0x1c], esi
mov dword [edi + 0x14a0], 1
imul eax, dword [edi + 0x14a0], 0xeb
add eax, 0x14
mov dword [edi + 0x148c], eax
mov dword [edi + 0x1494], 0xaf
lea ecx, [edi + 0x18]
mov eax, dword [edi + 0x2c]
mov dword [edi + 0x14a4], eax
lea eax, [ebp - 0x1c]
push eax
call fcn.1004a490
push dword [ebp - 0x28]
lea ecx, [ebp - 0x64]
lea esi, [edi + 0x1558]
call fcn.10030490
push 0x10
push str.chams_local2_col
lea ecx, [ebp - 0x64]
mov dword [ebp - 4], 0x102
call fcn.100304b0
mov dword [ebp - 4], 0x103
lea ecx, [ebp - 0x4c]
push dword [ebp - 0x28]
call fcn.10030490
push 0xa
push str.glow_color
lea ecx, [ebp - 0x4c]
mov byte [ebp - 4], 4
call fcn.100304b0
mov byte [ebp - 4], 5
lea eax, [ebp - 0x4c]
push eax
lea ecx, [edi + 0x15d8]
mov dword [edi + 0x15d0], 0
mov dword [edi + 0x15d4], 0
mov byte [edi + 0x15c5], 0
call fcn.1002f900
lea eax, [ebp - 0x64]
push eax
lea ecx, [edi + 0x1590]
call fcn.1002f900
lea ecx, [ebp - 0x4c]
mov dword [edi + 0x15f0], 0xff3b2d09
mov dword [edi + 0x1608], 0
call fcn.1002f930
lea ecx, [ebp - 0x64]
mov dword [ebp - 4], 0xffffffff
call fcn.1002f930
lea eax, [ebp - 0x1c]
mov dword [ebp - 0x1c], 0x10035970
lea ecx, [esi + 0x58]
push eax
call fcn.1004a490
mov dword [ebp - 0x1c], esi
lea ecx, [edi + 0x18]
mov dword [edi + 0x1570], 1
imul eax, dword [edi + 0x1570], 0xeb
add eax, 0x14
mov dword [edi + 0x155c], eax
mov dword [edi + 0x1564], 0xaf
mov eax, dword [edi + 0x2c]
mov dword [edi + 0x1574], eax
lea eax, [ebp - 0x1c]
push eax
call fcn.1004a490
push str.visible
lea ecx, [ebp - 0xd8]
call fcn.1002f980
push str.invisible
lea ecx, [ebp - 0xc0]
mov dword [ebp - 4], 0x106
call fcn.1002f980
lea eax, [ebp - 0x21]
mov dword [ebp - 4], 0x107
push eax
lea ecx, [ebp - 0xa8]
lea edx, [ebp - 0xd8]
push ecx
push edx
lea ecx, [ebp - 0x90]
call fcn.10089aa0
push 0x100d733c
lea ecx, [ebp - 0x64]
mov byte [ebp - 4], 8
call fcn.1002f980
push str.chams_enemy
lea ecx, [ebp - 0x4c]
mov byte [ebp - 4], 9
call fcn.1002f980
lea ecx, [ebp - 0x78]
call fcn.10030c60
lea eax, [ebp - 0x64]
mov byte [ebp - 4], 0xb
push eax
lea ecx, [edi + 0x1708]
call fcn.1002f900
lea eax, [ebp - 0x4c]
mov byte [edi + 0x1739], 1
push eax
lea ecx, [edi + 0x1740]
call fcn.1002f900
mov esi, dword [ebp - 0x90]
xor eax, eax
cmp byte [edi + 0x1739], al
mov ecx, 0xf
cmovne eax, ecx
mov dword [edi + 0x1774], eax
add eax, 0x14
mov dword [edi + 0x16e0], eax
mov dword [edi + 0x16e4], eax
mov eax, dword [ebp - 0x8c]
mov dword [ebp - 0x1c], eax
cmp esi, eax
je 0x10067775
lea eax, [edi + 0x1758]
mov edi, dword [ebp - 0x1c]
mov dword [ebp - 0x20], eax
nop dword [eax + eax]
push esi
mov ecx, eax
call fcn.10056500
mov eax, dword [ebp - 0x20]
add esi, 0x18
cmp esi, edi
jne 0x10067760
mov edi, dword [ebp - 0x30]
mov ecx, dword [ebp - 0x74]
mov eax, dword [ebp - 0x78]
mov dword [ebp - 0x20], ecx
mov dword [ebp - 0x34], eax
cmp eax, ecx
je 0x1006783b
lea ecx, [edi + 0x1768]
nop
mov eax, dword [eax]
mov dword [ebp - 0x18], eax
lea eax, [ebp - 0x28]
push eax
call fcn.1002ec70
lea ecx, [edi + 0x1768]
mov esi, dword [eax]
lea eax, [ebp - 0xa0]
push eax
call fcn.1002ec80
push esi
lea edx, [ebp - 0x18]
lea ecx, [ebp - 0x9c]
push dword [eax]
call fcn.10030070
add esp, 8
lea ecx, [edi + 0x1768]
mov esi, eax
lea eax, [ebp - 0x98]
push eax
call fcn.1002ec70
mov ecx, dword [edi + 0x175c]
sub ecx, dword [edi + 0x1758]
mov esi, dword [esi]
mov eax, dword [eax]
mov dword [ebp - 0x1c], eax
mov eax, 0x2aaaaaab
imul ecx
sar edx, 2
mov eax, edx
shr eax, 0x1f
add eax, edx
cmp dword [ebp - 0x18], eax
jae 0x10067812
lea eax, [ebp - 0x18]
push eax
lea ecx, [edi + 0x1768]
call fcn.1004a490
cmp esi, dword [ebp - 0x1c]
jne 0x10067823
mov eax, dword [edi + 0x1734]
test eax, eax
je 0x10067823
call eax
mov eax, dword [ebp - 0x34]
lea ecx, [edi + 0x1768]
add eax, 4
mov dword [ebp - 0x34], eax
cmp eax, dword [ebp - 0x20]
jne 0x10067790
lea ecx, [ebp - 0x78]
call fcn.1002ef90
lea ecx, [ebp - 0x4c]
call fcn.1002f930
lea ecx, [ebp - 0x64]
call fcn.1002f930
lea ecx, [ebp - 0x90]
call fcn.10056230
push fcn.1002f930
push 2
push 0x18
lea eax, [ebp - 0xd8]
mov dword [ebp - 4], 0xffffffff
push eax
call fcn.100c3d56
lea eax, [ebp - 0x1c]
mov dword [ebp - 0x1c], 0x10035990
lea esi, [edi + 0x16d0]
lea ecx, [esi + 0x58]
push eax
call fcn.1004a490
mov dword [ebp - 0x1c], esi
lea ecx, [edi + 0x18]
mov dword [edi + 0x16e8], 1
imul eax, dword [edi + 0x16e8], 0xeb
add eax, 0x14
mov dword [edi + 0x16d4], eax
mov dword [edi + 0x16dc], 0xaf
mov eax, dword [edi + 0x2c]
mov dword [edi + 0x16ec], eax
lea eax, [ebp - 0x1c]
push eax
call fcn.1004a490
push str.material
lea ecx, [ebp - 0x138]
call fcn.1002f980
push str.flat
lea ecx, [ebp - 0x120]
mov dword [ebp - 4], 0x10c
call fcn.1002f980
push str.metallic
lea ecx, [ebp - 0x108]
mov byte [ebp - 4], 0xd
call fcn.1002f980
push str.gloss
lea ecx, [ebp - 0xf0]
mov byte [ebp - 4], 0xe
call fcn.1002f980
push str.glow
lea ecx, [ebp - 0xd8]
mov byte [ebp - 4], 0xf
call fcn.1002f980
push str.outline_glow
lea ecx, [ebp - 0xc0]
mov byte [ebp - 4], 0x10
call fcn.1002f980
lea eax, [ebp - 0xa8]
mov dword [ebp - 4], 0x111
push eax
lea eax, [ebp - 0x138]
push eax
lea ecx, [ebp - 0x2c]
call fcn.10089a80
lea ecx, [ebp - 0x21]
push ecx
lea ecx, [ebp - 0x74]
push dword [eax + 4]
push dword [eax]
call fcn.10089aa0
push str.chams_enemy_mat
lea ecx, [ebp - 0x64]
mov byte [ebp - 4], 0x12
call fcn.1002f980
push str.chams_enemy_material
lea ecx, [ebp - 0x4c]
mov byte [ebp - 4], 0x13
call fcn.1002f980
lea eax, [ebp - 0x64]
mov byte [ebp - 4], 0x14
push eax
lea ecx, [edi + 0x17b0]
call fcn.1002f900
lea eax, [ebp - 0x4c]
mov byte [edi + 0x17e1], 1
push eax
lea ecx, [edi + 0x17e8]
call fcn.1002f900
xor eax, eax
mov ecx, 0xf
cmp byte [edi + 0x17e1], al
cmovne eax, ecx
lea ecx, [ebp - 0x74]
mov dword [edi + 0x1814], eax
add eax, 0x14
mov dword [edi + 0x1788], eax
mov dword [edi + 0x178c], eax
call fcn.1002ec60
lea ecx, [ebp - 0x74]
mov esi, eax
call fcn.1002ec50
mov dword [ebp - 0x1c], eax
cmp esi, eax
je 0x10067a25
lea eax, [edi + 0x1800]
mov edi, dword [ebp - 0x1c]
mov dword [ebp - 0x20], eax
nop dword [eax]
push esi
mov ecx, eax
call fcn.10055f40
mov eax, dword [ebp - 0x20]
add esi, 0x18
cmp esi, edi
jne 0x10067a10
mov edi, dword [ebp - 0x30]
lea ecx, [edi + 0x1800]
call fcn.10035b30
test eax, eax
je 0x10067a3e
mov dword [edi + 0x1810], 0
lea ecx, [ebp - 0x4c]
call fcn.1002f930
lea ecx, [ebp - 0x64]
call fcn.1002f930
lea ecx, [ebp - 0x74]
call fcn.10055f70
push fcn.1002f930
push 6
push 0x18
lea eax, [ebp - 0x138]
mov dword [ebp - 4], 0xffffffff
push eax
call fcn.100c3d56
lea eax, [ebp - 0x1c]
mov dword [ebp - 0x1c], 0x10035990
lea ecx, [edi + 0x17d0]
push eax
call fcn.100486b0
lea eax, [edi + 0x1778]
mov dword [ebp - 0x1c], eax
lea ecx, [edi + 0x18]
mov dword [edi + 0x1790], 1
imul eax, dword [edi + 0x1790], 0xeb
add eax, 0x14
mov dword [edi + 0x177c], eax
mov dword [edi + 0x1784], 0xaf
mov eax, dword [edi + 0x2c]
mov dword [edi + 0x1794], eax
lea eax, [ebp - 0x1c]
push eax
call fcn.100486b0
push str.chams_enemy_vis
lea ecx, [ebp - 0x64]
lea esi, [edi + 0x1818]
call fcn.1002f980
push str.color_visible
lea ecx, [ebp - 0x4c]
mov dword [ebp - 4], 0x115
call fcn.1002f980
mov byte [ebp - 4], 0x16
lea eax, [ebp - 0x4c]
push eax
lea ecx, [edi + 0x1898]
mov dword [edi + 0x1890], 0
mov dword [edi + 0x1894], 0
mov byte [edi + 0x1885], 0
call fcn.1002f900
lea eax, [ebp - 0x64]
push eax
lea ecx, [edi + 0x1850]
call fcn.1002f900
lea ecx, [ebp - 0x4c]
mov dword [edi + 0x18b0], 0xff3cc896
mov dword [edi + 0x18c8], 0
call fcn.1002f930
lea ecx, [ebp - 0x64]
mov dword [ebp - 4], 0xffffffff
call fcn.1002f930
lea eax, [ebp - 0x1c]
mov dword [ebp - 0x1c], 0x10035990
lea ecx, [esi + 0x58]
push eax
call fcn.100486b0
mov dword [ebp - 0x1c], esi
lea ecx, [edi + 0x18]
mov dword [edi + 0x1830], 1
imul eax, dword [edi + 0x1830], 0xeb
add eax, 0x14
mov dword [edi + 0x181c], eax
mov dword [edi + 0x1824], 0xaf
mov eax, dword [edi + 0x2c]
mov dword [edi + 0x1834], eax
lea eax, [ebp - 0x1c]
push eax
call fcn.100486b0
push str.chams_enemy2_vis
lea ecx, [ebp - 0x64]
lea esi, [edi + 0x18e8]
call fcn.1002f980
push str.glow_color
lea ecx, [ebp - 0x4c]
mov dword [ebp - 4], 0x117
call fcn.1002f980
mov byte [ebp - 4], 0x18
lea eax, [ebp - 0x4c]
push eax
lea ecx, [edi + 0x1968]
mov dword [edi + 0x1960], 0
mov dword [edi + 0x1964], 0
mov byte [edi + 0x1955], 0
call fcn.1002f900
lea eax, [ebp - 0x64]
push eax
lea ecx, [edi + 0x1920]
call fcn.1002f900
lea ecx, [ebp - 0x4c]
mov dword [edi + 0x1980], 0xffc8ffff
mov dword [edi + 0x1998], 0
call fcn.1002f930
lea ecx, [ebp - 0x64]
mov dword [ebp - 4], 0xffffffff
call fcn.1002f930
lea eax, [ebp - 0x1c]
mov dword [ebp - 0x1c], 0x100359a0
lea ecx, [esi + 0x58]
push eax
call fcn.100486b0
mov dword [ebp - 0x1c], esi
lea ecx, [edi + 0x18]
mov dword [edi + 0x1900], 1
imul eax, dword [edi + 0x1900], 0xeb
add eax, 0x14
mov dword [edi + 0x18ec], eax
mov dword [edi + 0x18f4], 0xaf
mov eax, dword [edi + 0x2c]
mov dword [edi + 0x1904], eax
lea eax, [ebp - 0x1c]
push eax
call fcn.100486b0
push str.chams_enemy_invis
lea ecx, [ebp - 0x64]
lea esi, [edi + 0x19b8]
call fcn.1002f980
push str.color_invisible
lea ecx, [ebp - 0x4c]
mov dword [ebp - 4], 0x119
call fcn.1002f980
mov byte [ebp - 4], 0x1a
lea eax, [ebp - 0x4c]
push eax
lea ecx, [edi + 0x1a38]
mov dword [edi + 0x1a30], 0
mov dword [edi + 0x1a34], 0
mov byte [edi + 0x1a25], 0
call fcn.1002f900
lea eax, [ebp - 0x64]
push eax
lea ecx, [edi + 0x19f0]
call fcn.1002f900
lea ecx, [ebp - 0x4c]
mov dword [edi + 0x1a50], 0xffb4783c
mov dword [edi + 0x1a68], 0
call fcn.1002f930
lea ecx, [ebp - 0x64]
mov dword [ebp - 4], 0xffffffff
call fcn.1002f930
lea eax, [ebp - 0x1c]
mov dword [ebp - 0x1c], 0x10035990
lea ecx, [esi + 0x58]
push eax
call fcn.100486b0
mov dword [ebp - 0x1c], esi
mov dword [edi + 0x19d0], 1
imul eax, dword [edi + 0x19d0], 0xeb
add eax, 0x14
mov dword [edi + 0x19bc], eax
mov dword [edi + 0x19c4], 0xaf
lea ecx, [edi + 0x18]
mov eax, dword [edi + 0x2c]
mov dword [edi + 0x19d4], eax
lea eax, [ebp - 0x1c]
push eax
call fcn.100486b0
push str.chams_enemy2_invis
lea ecx, [ebp - 0x64]
lea esi, [edi + 0x1a88]
call fcn.1002f980
push str.glow_color
lea ecx, [ebp - 0x4c]
mov dword [ebp - 4], 0x11b
call fcn.1002f980
mov byte [ebp - 4], 0x1c
lea eax, [ebp - 0x4c]
push eax
lea ecx, [edi + 0x1b08]
mov dword [edi + 0x1b00], 0
mov dword [edi + 0x1b04], 0
mov byte [edi + 0x1af5], 0
call fcn.1002f900
lea eax, [ebp - 0x64]
push eax
lea ecx, [edi + 0x1ac0]
call fcn.1002f900
lea ecx, [ebp - 0x4c]
mov dword [edi + 0x1b20], 0xb4c8ffff
mov dword [edi + 0x1b38], 0
call fcn.1002f930
lea ecx, [ebp - 0x64]
mov dword [ebp - 4], 0xffffffff
call fcn.1002f930
lea eax, [ebp - 0x1c]
mov dword [ebp - 0x1c], 0x100359a0
lea ecx, [esi + 0x58]
push eax
call fcn.100486b0
mov dword [ebp - 0x1c], esi
lea ecx, [edi + 0x18]
mov dword [edi + 0x1aa0], 1
imul eax, dword [edi + 0x1aa0], 0xeb
add eax, 0x14
mov dword [edi + 0x1a8c], eax
mov dword [edi + 0x1a94], 0xaf
mov eax, dword [edi + 0x2c]
mov dword [edi + 0x1aa4], eax
lea eax, [ebp - 0x1c]
push eax
call fcn.100486b0
push str.chams_enemy_reflectivity
lea ecx, [ebp - 0x64]
lea esi, [edi + 0x1b58]
call fcn.1002f980
push str.reflectivity_color
lea ecx, [ebp - 0x4c]
mov dword [ebp - 4], 0x11d
call fcn.1002f980
mov byte [ebp - 4], 0x1e
lea eax, [ebp - 0x4c]
push eax
lea ecx, [edi + 0x1bd8]
mov dword [edi + 0x1bd0], 0
mov dword [edi + 0x1bd4], 0
mov byte [edi + 0x1bc5], 0
call fcn.1002f900
lea eax, [ebp - 0x64]
push eax
lea ecx, [edi + 0x1b90]
call fcn.1002f900
lea ecx, [ebp - 0x4c]
mov dword [edi + 0x1bf0], 0xff00b2ff
mov dword [edi + 0x1c08], 0
call fcn.1002f930
mov dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0x64]
call fcn.1002f930
lea eax, [ebp - 0x1c]
mov dword [ebp - 0x1c], 0x10035a00
lea ecx, [esi + 0x58]
push eax
call fcn.100486b0
mov dword [ebp - 0x1c], esi
lea ecx, [edi + 0x18]
mov dword [edi + 0x1b70], 1
imul eax, dword [edi + 0x1b70], 0xeb
add eax, 0x14
mov dword [edi + 0x1b5c], eax
mov dword [edi + 0x1b64], 0xaf
mov eax, dword [edi + 0x2c]
mov dword [edi + 0x1b74], eax
lea eax, [ebp - 0x1c]
push eax
call fcn.100486b0
push 0x100d64e4
lea ecx, [ebp - 0x80]
lea esi, [edi + 0x1c28]
call fcn.10040600
push 0x100d740c
lea ecx, [ebp - 0x64]
mov dword [ebp - 4], 0x11f
call fcn.1002f980
push str.chams_reflectivity
lea ecx, [ebp - 0x4c]
mov byte [ebp - 4], 0x20
call fcn.1002f980
lea eax, [ebp - 0x64]
mov byte [ebp - 4], 0x21
push eax
lea ecx, [edi + 0x1c60]
call fcn.1002f900
lea eax, [ebp - 0x4c]
mov byte [edi + 0x1c91], 1
push eax
lea ecx, [edi + 0x1cb0]
call fcn.1002f900
xor eax, eax
mov dword [edi + 0x1c9c], 0
cmp byte [edi + 0x1c91], al
mov ecx, 0xf
mov dword [edi + 0x1ca0], 0x42c80000
cmovne eax, ecx
mov dword [edi + 0x1c98], 0x42860000
mov dword [edi + 0x1ce0], eax
lea ecx, [edi + 0x1cc8]
add eax, 8
mov dword [edi + 0x1cac], 0
mov dword [edi + 0x1c38], eax
mov dword [edi + 0x1c3c], eax
lea eax, [ebp - 0x80]
push eax
mov dword [edi + 0x1ca4], 0x3f800000
call fcn.10089ef0
lea ecx, [ebp - 0x4c]
call fcn.1002f930
lea ecx, [ebp - 0x64]
call fcn.1002f930
lea ecx, [ebp - 0x80]
mov dword [ebp - 4], 0xffffffff
call fcn.100405f0
lea eax, [ebp - 0x1c]
mov dword [ebp - 0x1c], 0x10035a00
lea ecx, [esi + 0x58]
push eax
call fcn.100486b0
mov dword [ebp - 0x1c], esi
lea ecx, [edi + 0x18]
mov dword [edi + 0x1c40], 1
imul eax, dword [edi + 0x1c40], 0xeb
add eax, 0x14
mov dword [edi + 0x1c2c], eax
mov dword [edi + 0x1c34], 0xaf
mov eax, dword [edi + 0x2c]
mov dword [edi + 0x1c44], eax
lea eax, [ebp - 0x1c]
push eax
call fcn.100486b0
push 0x100d64e4
lea ecx, [ebp - 0x80]
lea esi, [edi + 0x1ce4]
call fcn.10040600
push str.chams_enemy_shine
lea ecx, [ebp - 0x64]
mov dword [ebp - 4], 0x122
call fcn.1002f980
push 0x100d7450
lea ecx, [ebp - 0x4c]
mov byte [ebp - 4], 0x23
call fcn.1002f980
lea eax, [ebp - 0x64]
mov byte [ebp - 4], 0x24
push eax
lea ecx, [edi + 0x1d1c]
call fcn.1002f900
lea eax, [ebp - 0x4c]
mov byte [edi + 0x1d4d], 1
push eax
lea ecx, [edi + 0x1d6c]
call fcn.1002f900
xor eax, eax
mov dword [edi + 0x1d58], 0
cmp byte [edi + 0x1d4d], al
mov ecx, 0xf
mov dword [edi + 0x1d5c], 0x42c80000
cmovne eax, ecx
mov dword [edi + 0x1d54], 0x41200000
mov dword [edi + 0x1d9c], eax
lea ecx, [edi + 0x1d84]
add eax, 8
mov dword [edi + 0x1d68], 0
mov dword [edi + 0x1cf4], eax
mov dword [edi + 0x1cf8], eax
lea eax, [ebp - 0x80]
push eax
mov dword [edi + 0x1d60], 0x3f800000
call fcn.10089ef0
lea ecx, [ebp - 0x4c]
call fcn.1002f930
lea ecx, [ebp - 0x64]
call fcn.1002f930
lea ecx, [ebp - 0x80]
mov dword [ebp - 4], 0xffffffff
call fcn.100405f0
lea eax, [ebp - 0x1c]
mov dword [ebp - 0x1c], 0x10035a00
lea ecx, [esi + 0x58]
push eax
call fcn.100486b0
mov dword [ebp - 0x1c], esi
lea ecx, [edi + 0x18]
mov dword [edi + 0x1cfc], 1
imul eax, dword [edi + 0x1cfc], 0xeb
add eax, 0x14
mov dword [edi + 0x1ce8], eax
mov dword [edi + 0x1cf0], 0xaf
mov eax, dword [edi + 0x2c]
mov dword [edi + 0x1d00], eax
lea eax, [ebp - 0x1c]
push eax
call fcn.100486b0
push 0x100d64e4
lea ecx, [ebp - 0x80]
lea esi, [edi + 0x1da0]
call fcn.10040600
push 0x100d7464
lea ecx, [ebp - 0x64]
mov dword [ebp - 4], 0x125
call fcn.1002f980
mov byte [ebp - 4], 0x26
push str.chams_enemy_rim
lea ecx, [ebp - 0x4c]
call fcn.1002f980
lea eax, [ebp - 0x64]
mov byte [ebp - 4], 0x27
push eax
lea ecx, [edi + 0x1dd8]
call fcn.1002f900
lea eax, [ebp - 0x4c]
mov byte [edi + 0x1e09], 1
push eax
lea ecx, [edi + 0x1e28]
call fcn.1002f900
xor eax, eax
mov dword [edi + 0x1e14], 0
cmp byte [edi + 0x1e09], al
mov ecx, 0xf
mov dword [edi + 0x1e18], 0x42c80000
cmovne eax, ecx
mov dword [edi + 0x1e10], 0x41200000
mov dword [edi + 0x1e58], eax
lea ecx, [edi + 0x1e40]
add eax, 8
mov dword [edi + 0x1e24], 0
mov dword [edi + 0x1db0], eax
mov dword [edi + 0x1db4], eax
lea eax, [ebp - 0x80]
push eax
mov dword [edi + 0x1e1c], 0x3f800000
call fcn.10089ef0
lea ecx, [ebp - 0x4c]
call fcn.1002f930
lea ecx, [ebp - 0x64]
call fcn.1002f930
lea ecx, [ebp - 0x80]
mov dword [ebp - 4], 0xffffffff
call fcn.100405f0
lea eax, [ebp - 0x1c]
mov dword [ebp - 0x1c], 0x10035a00
lea ecx, [esi + 0x58]
push eax
call fcn.100486b0
mov dword [ebp - 0x1c], esi
lea ecx, [edi + 0x18]
mov dword [edi + 0x1db8], 1
imul eax, dword [edi + 0x1db8], 0xeb
add eax, 0x14
mov dword [edi + 0x1da4], eax
mov dword [edi + 0x1dac], 0xaf
mov eax, dword [edi + 0x2c]
mov dword [edi + 0x1dbc], eax
lea eax, [ebp - 0x1c]
push eax
call fcn.100486b0
lea ecx, [ebp - 0x91]
call fcn.10048e40
push str.visible
lea ecx, [ebp - 0xd8]
mov esi, eax
call fcn.1002f980
push str.invisible
lea ecx, [ebp - 0xc0]
mov dword [ebp - 4], 0x128
call fcn.1002f980
lea eax, [ebp - 0xa8]
mov dword [ebp - 4], 0x129
push eax
lea eax, [ebp - 0xd8]
push eax
lea ecx, [ebp - 0xa8]
call fcn.10089a80
push esi
lea ecx, [ebp - 0x90]
push dword [eax + 4]
push dword [eax]
call fcn.10089aa0
mov byte [ebp - 4], 0x2a
push str.chams_friendly
lea ecx, [ebp - 0x64]
call fcn.1002f980
push 0x100d749c
lea ecx, [ebp - 0x4c]
mov byte [ebp - 4], 0x2b
call fcn.1002f980
lea ecx, [ebp - 0x78]
call fcn.10030c60
lea eax, [ebp - 0x64]
mov byte [ebp - 4], 0x2d
push eax
lea ecx, [edi + 0x21e4]
call fcn.1002f900
lea eax, [ebp - 0x4c]
mov byte [edi + 0x2215], 1
push eax
lea ecx, [edi + 0x221c]
call fcn.1002f900
xor eax, eax
mov ecx, 0xf
cmp byte [edi + 0x2215], al
cmovne eax, ecx
lea ecx, [ebp - 0x90]
mov dword [edi + 0x2250], eax
add eax, 0x14
mov dword [edi + 0x21bc], eax
mov dword [edi + 0x21c0], eax
call fcn.1002ec60
lea ecx, [ebp - 0x90]
mov esi, eax
call fcn.1002ec50
mov dword [ebp - 0x20], eax
cmp esi, eax
je 0x100683f4
lea ecx, [edi + 0x2234]
mov dword [ebp - 0x1c], ecx
mov edi, ecx
push esi
mov ecx, edi
call fcn.10055f40
add esi, 0x18
cmp esi, dword [ebp - 0x20]
jne 0x100683e1
mov edi, dword [ebp - 0x30]
lea ecx, [ebp - 0x78]
call fcn.1002ec60
mov esi, eax
lea ecx, [ebp - 0x78]
mov dword [ebp - 0x34], esi
call fcn.1002ec50
mov dword [ebp - 0x1c], eax
cmp esi, eax
je 0x100684be
lea ecx, [edi + 0x2244]
nop word [eax + eax]
mov eax, dword [esi]
mov dword [ebp - 0x18], eax
lea eax, [ebp - 0x28]
push eax
call fcn.1002ec70
lea ecx, [edi + 0x2244]
mov esi, dword [eax]
lea eax, [ebp - 0xa0]
push eax
call fcn.1002ec80
push esi
lea edx, [ebp - 0x18]
lea ecx, [ebp - 0x9c]
push dword [eax]
call fcn.10030070
add esp, 8
lea ecx, [edi + 0x2244]
mov esi, eax
lea eax, [ebp - 0x98]
push eax
call fcn.1002ec70
push eax
mov ecx, esi
call fcn.1002ec30
lea ecx, [edi + 0x2234]
mov byte [ebp - 0x21], al
call fcn.10035b30
cmp dword [ebp - 0x18], eax
jae 0x10068494
lea eax, [ebp - 0x18]
push eax
lea ecx, [edi + 0x2244]
call fcn.100486b0
cmp byte [ebp - 0x21], 0
je 0x100684a6
mov eax, dword [edi + 0x2210]
test eax, eax
je 0x100684a6
call eax
mov esi, dword [ebp - 0x34]
lea ecx, [edi + 0x2244]
add esi, 4
mov dword [ebp - 0x34], esi
cmp esi, dword [ebp - 0x1c]
jne 0x10068420
lea ecx, [ebp - 0x78]
call fcn.1002ec90
lea ecx, [ebp - 0x4c]
call fcn.1002f930
lea ecx, [ebp - 0x64]
call fcn.1002f930
lea ecx, [ebp - 0x90]
call fcn.10055f70
push fcn.1002f930
push 2
push 0x18
lea eax, [ebp - 0xd8]
mov dword [ebp - 4], 0xffffffff
push eax
call fcn.100c3d56
lea eax, [ebp - 0x1c]
mov dword [ebp - 0x1c], 0x10035a20
lea ecx, [edi + 0x2204]
push eax
call fcn.100486b0
lea eax, [edi + 0x21ac]
mov dword [ebp - 0x1c], eax
lea ecx, [edi + 0x18]
mov dword [edi + 0x21c4], 1
imul eax, dword [edi + 0x21c4], 0xeb
add eax, 0x14
mov dword [edi + 0x21b0], eax
mov dword [edi + 0x21b8], 0xaf
mov eax, dword [edi + 0x2c]
mov dword [edi + 0x21c8], eax
lea eax, [ebp - 0x1c]
push eax
call fcn.100486b0
lea ecx, [ebp - 0x21]
call fcn.10048e40
push str.material
lea ecx, [ebp - 0x138]
mov esi, eax
call fcn.1002f980
push str.flat
lea ecx, [ebp - 0x120]
mov dword [ebp - 4], 0x12e
call fcn.1002f980
push str.metallic
lea ecx, [ebp - 0x108]
mov byte [ebp - 4], 0x2f
call fcn.1002f980
push str.gloss
lea ecx, [ebp - 0xf0]
mov byte [ebp - 4], 0x30
call fcn.1002f980
push str.glow
lea ecx, [ebp - 0xd8]
mov byte [ebp - 4], 0x31
call fcn.1002f980
push str.outline_glow
lea ecx, [ebp - 0xc0]
mov byte [ebp - 4], 0x32
call fcn.1002f980
lea eax, [ebp - 0xa8]
mov dword [ebp - 4], 0x133
push eax
lea eax, [ebp - 0x138]
push eax
lea ecx, [ebp - 0x2c]
call fcn.10089a80
push esi
lea ecx, [ebp - 0x74]
push dword [eax + 4]
push dword [eax]
call fcn.10089aa0
mov byte [ebp - 4], 0x34
lea ecx, [ebp - 0x64]
push str.chams_friendly_mat
call fcn.1002f980
push str.chams_friendly_material
lea ecx, [ebp - 0x4c]
mov byte [ebp - 4], 0x35
call fcn.1002f980
lea eax, [ebp - 0x64]
mov byte [ebp - 4], 0x36
push eax
lea ecx, [edi + 0x228c]
call fcn.1002f900
lea eax, [ebp - 0x4c]
mov byte [edi + 0x22bd], 1
push eax
lea ecx, [edi + 0x22c4]
call fcn.1002f900
xor eax, eax
mov ecx, 0xf
cmp byte [edi + 0x22bd], al
cmovne eax, ecx
lea ecx, [ebp - 0x74]
mov dword [edi + 0x22f0], eax
add eax, 0x14
mov dword [edi + 0x2264], eax
mov dword [edi + 0x2268], eax
call fcn.1002ec60
lea ecx, [ebp - 0x74]
mov esi, eax
call fcn.1002ec50
mov dword [ebp - 0x1c], eax
cmp esi, eax
je 0x100686b5
lea eax, [edi + 0x22dc]
mov edi, dword [ebp - 0x1c]
mov dword [ebp - 0x20], eax
nop dword [eax]
push esi
mov ecx, eax
call fcn.10055f40
mov eax, dword [ebp - 0x20]
add esi, 0x18
cmp esi, edi
jne 0x100686a0
mov edi, dword [ebp - 0x30]
lea ecx, [edi + 0x22dc]
call fcn.10035b30
test eax, eax
je 0x100686ce
mov dword [edi + 0x22ec], 0
lea ecx, [ebp - 0x4c]
call fcn.1002f930
lea ecx, [ebp - 0x64]
call fcn.1002f930
lea ecx, [ebp - 0x74]
call fcn.10055f70
push fcn.1002f930
push 6
push 0x18
lea eax, [ebp - 0x138]
mov dword [ebp - 4], 0xffffffff
push eax
call fcn.100c3d56
lea eax, [ebp - 0x1c]
mov dword [ebp - 0x1c], 0x10035a20
lea ecx, [edi + 0x22ac]
push eax
call fcn.100486b0
lea eax, [edi + 0x2254]
mov dword [ebp - 0x1c], eax
lea ecx, [edi + 0x18]
mov dword [edi + 0x226c], 1
imul eax, dword [edi + 0x226c], 0xeb
add eax, 0x14
mov dword [edi + 0x2258], eax
mov dword [edi + 0x2260], 0xaf
mov eax, dword [edi + 0x2c]
mov dword [edi + 0x2270], eax
lea eax, [ebp - 0x1c]
push eax
call fcn.100486b0
push str.chams_friendly_vis
lea ecx, [ebp - 0x64]
lea esi, [edi + 0x22f4]
call fcn.1002f980
push str.color_visible
lea ecx, [ebp - 0x4c]
mov dword [ebp - 4], 0x137
call fcn.1002f980
mov byte [ebp - 4], 0x38
lea eax, [ebp - 0x4c]
push eax
lea ecx, [edi + 0x2374]
mov dword [edi + 0x236c], 0
mov dword [edi + 0x2370], 0
mov byte [edi + 0x2361], 0
call fcn.1002f900
lea eax, [ebp - 0x64]
push eax
lea ecx, [edi + 0x232c]
call fcn.1002f900
lea ecx, [ebp - 0x4c]
mov dword [edi + 0x238c], 0xff00c8ff
mov dword [edi + 0x23a4], 0
call fcn.1002f930
lea ecx, [ebp - 0x64]
mov dword [ebp - 4], 0xffffffff
call fcn.1002f930
lea eax, [ebp - 0x1c]
mov dword [ebp - 0x1c], 0x10035a20
lea ecx, [esi + 0x58]
push eax
call fcn.100486b0
mov dword [ebp - 0x1c], esi
lea ecx, [edi + 0x18]
mov dword [edi + 0x230c], 1
imul eax, dword [edi + 0x230c], 0xeb
add eax, 0x14
mov dword [edi + 0x22f8], eax
mov dword [edi + 0x2300], 0xaf
mov eax, dword [edi + 0x2c]
mov dword [edi + 0x2310], eax
lea eax, [ebp - 0x1c]
push eax
call fcn.100486b0
push str.chams_friendly_invis
lea ecx, [ebp - 0x64]
lea esi, [edi + 0x23c4]
call fcn.1002f980
push str.color_invisible
lea ecx, [ebp - 0x4c]
mov dword [ebp - 4], 0x139
call fcn.1002f980
mov byte [ebp - 4], 0x3a
lea eax, [ebp - 0x4c]
push eax
lea ecx, [edi + 0x2444]
mov dword [edi + 0x243c], 0
mov dword [edi + 0x2440], 0
mov byte [edi + 0x2431], 0
call fcn.1002f900
lea eax, [ebp - 0x64]
push eax
lea ecx, [edi + 0x23fc]
call fcn.1002f900
lea ecx, [ebp - 0x4c]
mov dword [edi + 0x245c], 0xff0032ff
mov dword [edi + 0x2474], 0
call fcn.1002f930
lea ecx, [ebp - 0x64]
mov dword [ebp - 4], 0xffffffff
call fcn.1002f930
lea eax, [ebp - 0x1c]
mov dword [ebp - 0x1c], 0x10035a20
lea ecx, [esi + 0x58]
push eax
call fcn.100486b0
mov dword [ebp - 0x1c], esi
lea ecx, [edi + 0x18]
mov dword [edi + 0x23dc], 1
imul eax, dword [edi + 0x23dc], 0xeb
add eax, 0x14
mov dword [edi + 0x23c8], eax
mov dword [edi + 0x23d0], 0xaf
mov eax, dword [edi + 0x2c]
mov dword [edi + 0x23e0], eax
lea eax, [ebp - 0x1c]
push eax
call fcn.100486b0
push 0x100d74f8
lea ecx, [ebp - 0x64]
lea esi, [edi + 0x1e5c]
call fcn.1002f980
push str.chams_history
lea ecx, [ebp - 0x4c]
mov dword [ebp - 4], 0x13b
call fcn.1002f980
lea eax, [ebp - 0x64]
mov byte [ebp - 4], 0x3c
push eax
lea ecx, [edi + 0x1e94]
call fcn.1002f900
lea eax, [ebp - 0x4c]
mov byte [edi + 0x1ec5], 1
push eax
lea ecx, [edi + 0x1ecc]
call fcn.1002f900
lea ecx, [ebp - 0x4c]
mov byte [edi + 0x1ec8], 0
call fcn.1002f930
lea ecx, [ebp - 0x64]
mov dword [ebp - 4], 0xffffffff
call fcn.1002f930
lea eax, [ebp - 0x1c]
mov dword [ebp - 0x1c], 0x10035a30
lea ecx, [esi + 0x58]
push eax
call fcn.100486b0
mov dword [ebp - 0x1c], esi
mov dword [edi + 0x1e74], 1
imul eax, dword [edi + 0x1e74], 0xeb
add eax, 0x14
mov dword [edi + 0x1e60], eax
mov dword [edi + 0x1e68], 0xaf
mov eax, dword [edi + 0x2c]
mov dword [edi + 0x1e78], eax
lea eax, [ebp - 0x1c]
lea ecx, [edi + 0x18]
push eax
call fcn.100486b0
lea ecx, [ebp - 0x91]
call fcn.10048e40
push str.material
lea ecx, [ebp - 0x138]
mov esi, eax
call fcn.1002f980
push str.flat
lea ecx, [ebp - 0x120]
mov dword [ebp - 4], 0x13d
call fcn.1002f980
push str.metallic
lea ecx, [ebp - 0x108]
mov byte [ebp - 4], 0x3e
call fcn.1002f980
push str.gloss
lea ecx, [ebp - 0xf0]
mov byte [ebp - 4], 0x3f
call fcn.1002f980
push str.glow
lea ecx, [ebp - 0xd8]
mov byte [ebp - 4], 0x40
call fcn.1002f980
push str.outline_glow
lea ecx, [ebp - 0xc0]
mov byte [ebp - 4], 0x41
call fcn.1002f980
lea eax, [ebp - 0xa8]
mov dword [ebp - 4], 0x142
push eax
lea eax, [ebp - 0x138]
push eax
lea ecx, [ebp - 0x2c]
call fcn.10089a80
push esi
lea ecx, [ebp - 0x74]
push dword [eax + 4]
push dword [eax]
call fcn.10089aa0
push str.chams_enemy_history_mat
lea ecx, [ebp - 0x64]
mov byte [ebp - 4], 0x43
call fcn.1002f980
push str.chams_history_material
lea ecx, [ebp - 0x4c]
mov byte [ebp - 4], 0x44
call fcn.1002f980
lea eax, [ebp - 0x64]
mov byte [ebp - 4], 0x45
push eax
lea ecx, [edi + 0x1f1c]
call fcn.1002f900
lea eax, [ebp - 0x4c]
mov byte [edi + 0x1f4d], 1
push eax
lea ecx, [edi + 0x1f54]
call fcn.1002f900
xor eax, eax
mov ecx, 0xf
cmp byte [edi + 0x1f4d], al
cmovne eax, ecx
lea ecx, [ebp - 0x74]
mov dword [edi + 0x1f80], eax
add eax, 0x14
mov dword [edi + 0x1ef4], eax
mov dword [edi + 0x1ef8], eax
call fcn.1002ec60
mov esi, eax
lea ecx, [ebp - 0x74]
call fcn.1002ec50
mov dword [ebp - 0x1c], eax
cmp esi, eax
je 0x10068b38
lea eax, [edi + 0x1f6c]
mov edi, dword [ebp - 0x1c]
mov dword [ebp - 0x20], eax
push esi
mov ecx, eax
call fcn.10055f40
mov eax, dword [ebp - 0x20]
add esi, 0x18
cmp esi, edi
jne 0x10068b23
mov edi, dword [ebp - 0x30]
lea ecx, [edi + 0x1f6c]
call fcn.10035b30
test eax, eax
je 0x10068b51
mov dword [edi + 0x1f7c], 0
lea ecx, [ebp - 0x4c]
call fcn.1002f930
lea ecx, [ebp - 0x64]
call fcn.1002f930
lea ecx, [ebp - 0x74]
call fcn.10055f70
push fcn.1002f930
push 6
push 0x18
lea eax, [ebp - 0x138]
mov dword [ebp - 4], 0xffffffff
push eax
call fcn.100c3d56
lea eax, [ebp - 0x1c]
mov dword [ebp - 0x1c], 0x10035a30
lea ecx, [edi + 0x1f3c]
push eax
call fcn.100486b0
lea eax, [edi + 0x1ee4]
mov dword [ebp - 0x1c], eax
lea ecx, [edi + 0x18]
mov dword [edi + 0x1efc], 1
imul eax, dword [edi + 0x1efc], 0xeb
add eax, 0x14
mov dword [edi + 0x1ee8], eax
mov dword [edi + 0x1ef0], 0xaf
mov eax, dword [edi + 0x2c]
mov dword [edi + 0x1f00], eax
lea eax, [ebp - 0x1c]
push eax
call fcn.100486b0
push str.chams_history_col
lea ecx, [ebp - 0x64]
lea esi, [edi + 0x1f84]
call fcn.1002f980
push str.color
lea ecx, [ebp - 0x4c]
mov dword [ebp - 4], 0x146
call fcn.1002f980
mov byte [ebp - 4], 0x47
lea eax, [ebp - 0x4c]
push eax
lea ecx, [edi + 0x2004]
mov dword [edi + 0x1ffc], 0
mov dword [edi + 0x2000], 0
mov byte [edi + 0x1ff1], 0
call fcn.1002f900
lea eax, [ebp - 0x64]
push eax
lea ecx, [edi + 0x1fbc]
call fcn.1002f900
lea ecx, [ebp - 0x4c]
mov dword [edi + 0x201c], 0xff000000
mov dword [edi + 0x2034], 0
call fcn.1002f930
lea ecx, [ebp - 0x64]
mov dword [ebp - 4], 0xffffffff
call fcn.1002f930
lea eax, [ebp - 0x1c]
mov dword [ebp - 0x1c], 0x10035a30
lea ecx, [esi + 0x58]
push eax
call fcn.100486b0
mov dword [ebp - 0x1c], esi
lea ecx, [edi + 0x18]
mov dword [edi + 0x1f9c], 1
imul eax, dword [edi + 0x1f9c], 0xeb
add eax, 0x14
mov dword [edi + 0x1f88], eax
mov dword [edi + 0x1f90], 0xaf
mov eax, dword [edi + 0x2c]
mov dword [edi + 0x1fa0], eax
lea eax, [ebp - 0x1c]
push eax
call fcn.100486b0
push 0x100d75ac
lea ecx, [ebp - 0x64]
lea esi, [edi + 0x2054]
call fcn.1002f980
push str.history_skeleton
lea ecx, [ebp - 0x4c]
mov dword [ebp - 4], 0x148
call fcn.1002f980
lea eax, [ebp - 0x64]
mov byte [ebp - 4], 0x49
push eax
lea ecx, [edi + 0x208c]
call fcn.1002f900
lea eax, [ebp - 0x4c]
mov byte [edi + 0x20bd], 1
push eax
lea ecx, [edi + 0x20c4]
call fcn.1002f900
lea ecx, [ebp - 0x4c]
mov byte [edi + 0x20c0], 0
call fcn.1002f930
lea ecx, [ebp - 0x64]
mov dword [ebp - 4], 0xffffffff
call fcn.1002f930
lea eax, [ebp - 0x1c]
mov dword [ebp - 0x1c], 0x10035a30
lea ecx, [esi + 0x58]
push eax
call fcn.100486b0
mov dword [ebp - 0x1c], esi
lea ecx, [edi + 0x18]
mov dword [edi + 0x206c], 1
imul eax, dword [edi + 0x206c], 0xeb
add eax, 0x14
mov dword [edi + 0x2058], eax
mov dword [edi + 0x2060], 0xaf
mov eax, dword [edi + 0x2c]
mov dword [edi + 0x2070], eax
lea eax, [ebp - 0x1c]
push eax
call fcn.100486b0
push str.history_skeleton_col
lea ecx, [ebp - 0x64]
lea esi, [edi + 0x20dc]
call fcn.1002f980
push str.color
lea ecx, [ebp - 0x4c]
mov dword [ebp - 4], 0x14a
call fcn.1002f980
mov byte [ebp - 4], 0x4b
lea eax, [ebp - 0x4c]
push eax
lea ecx, [edi + 0x215c]
mov dword [edi + 0x2154], 0
mov dword [edi + 0x2158], 0
mov byte [edi + 0x2149], 0
call fcn.1002f900
lea eax, [ebp - 0x64]
push eax
lea ecx, [edi + 0x2114]
call fcn.1002f900
lea ecx, [ebp - 0x4c]
mov dword [edi + 0x2174], 0xffffffff
mov dword [edi + 0x218c], 0
call fcn.1002f930
lea ecx, [ebp - 0x64]
mov dword [ebp - 4], 0xffffffff
call fcn.1002f930
lea eax, [ebp - 0x1c]
mov dword [ebp - 0x1c], 0x10035a30
lea ecx, [esi + 0x58]
push eax
call fcn.100486b0
mov dword [ebp - 0x1c], esi
mov dword [edi + 0x20f4], 1
imul eax, dword [edi + 0x20f4], 0xeb
add eax, 0x14
mov dword [edi + 0x20e0], eax
mov dword [edi + 0x20e8], 0xaf
mov eax, dword [edi + 0x2c]
mov dword [edi + 0x20f8], eax
lea eax, [ebp - 0x1c]
lea ecx, [edi + 0x18]
push eax
call fcn.100486b0
push str.chams_fake
lea ecx, [ebp - 0x64]
lea esi, [edi + 0x2494]
call fcn.1002f980
push str.fake_chams
lea ecx, [ebp - 0x4c]
mov dword [ebp - 4], 0x14c
call fcn.1002f980
lea eax, [ebp - 0x64]
mov byte [ebp - 4], 0x4d
push eax
lea ecx, [edi + 0x24cc]
call fcn.1002f900
lea eax, [ebp - 0x4c]
mov byte [edi + 0x24fd], 1
push eax
lea ecx, [edi + 0x2504]
call fcn.1002f900
lea ecx, [ebp - 0x4c]
mov byte [edi + 0x2500], 0
call fcn.1002f930
lea ecx, [ebp - 0x64]
mov dword [ebp - 4], 0xffffffff
call fcn.1002f930
lea eax, [ebp - 0x1c]
mov dword [ebp - 0x1c], 0x10035a40
lea ecx, [esi + 0x58]
push eax
call fcn.100486b0
mov dword [ebp - 0x1c], esi
lea ecx, [edi + 0x18]
mov dword [edi + 0x24ac], 1
imul eax, dword [edi + 0x24ac], 0xeb
add eax, 0x14
mov dword [edi + 0x2498], eax
mov dword [edi + 0x24a0], 0xaf
mov eax, dword [edi + 0x2c]
mov dword [edi + 0x24b0], eax
lea eax, [ebp - 0x1c]
push eax
call fcn.100486b0
lea ecx, [ebp - 0x21]
call fcn.10048e40
push str.material
lea ecx, [ebp - 0x138]
mov esi, eax
call fcn.1002f980
push str.flat
lea ecx, [ebp - 0x120]
mov dword [ebp - 4], 0x14e
call fcn.1002f980
push str.metallic
lea ecx, [ebp - 0x108]
mov byte [ebp - 4], 0x4f
call fcn.1002f980
push str.gloss
lea ecx, [ebp - 0xf0]
mov byte [ebp - 4], 0x50
call fcn.1002f980
push str.glow
lea ecx, [ebp - 0xd8]
mov byte [ebp - 4], 0x51
call fcn.1002f980
push str.outline_glow
lea ecx, [ebp - 0xc0]
mov byte [ebp - 4], 0x52
call fcn.1002f980
mov dword [ebp - 4], 0x153
lea eax, [ebp - 0xa8]
push eax
lea eax, [ebp - 0x138]
push eax
lea ecx, [ebp - 0x2c]
call fcn.10089a80
push esi
lea ecx, [ebp - 0x74]
push dword [eax + 4]
push dword [eax]
call fcn.10089aa0
push str.chams_fake_mat
lea ecx, [ebp - 0x64]
mov byte [ebp - 4], 0x54
call fcn.1002f980
push str.chams_material
lea ecx, [ebp - 0x4c]
mov byte [ebp - 4], 0x55
call fcn.1002f980
lea eax, [ebp - 0x64]
mov byte [ebp - 4], 0x56
push eax
lea ecx, [edi + 0x2554]
call fcn.1002f900
lea eax, [ebp - 0x4c]
mov byte [edi + 0x2585], 1
push eax
lea ecx, [edi + 0x258c]
call fcn.1002f900
xor eax, eax
mov ecx, 0xf
cmp byte [edi + 0x2585], al
cmovne eax, ecx
lea ecx, [ebp - 0x74]
mov dword [edi + 0x25b8], eax
add eax, 0x14
mov dword [edi + 0x252c], eax
mov dword [edi + 0x2530], eax
call fcn.1002ec60
lea ecx, [ebp - 0x74]
mov esi, eax
call fcn.1002ec50
mov dword [ebp - 0x20], eax
cmp esi, eax
je 0x10069075
lea ecx, [edi + 0x25a4]
mov dword [ebp - 0x1c], ecx
mov edi, ecx
push esi
mov ecx, edi
call fcn.10055f40
add esi, 0x18
cmp esi, dword [ebp - 0x20]
jne 0x10069062
mov edi, dword [ebp - 0x30]
lea ecx, [edi + 0x25a4]
call fcn.10035b30
test eax, eax
je 0x1006908e
mov dword [edi + 0x25b4], 0
lea ecx, [ebp - 0x4c]
call fcn.1002f930
lea ecx, [ebp - 0x64]
call fcn.1002f930
lea ecx, [ebp - 0x74]
call fcn.10055f70
push fcn.1002f930
push 6
push 0x18
lea eax, [ebp - 0x138]
mov dword [ebp - 4], 0xffffffff
push eax
call fcn.100c3d56
lea eax, [ebp - 0x1c]
mov dword [ebp - 0x1c], 0x10035a40
lea ecx, [edi + 0x2574]
push eax
call fcn.100486b0
lea eax, [edi + 0x251c]
mov dword [ebp - 0x1c], eax
lea ecx, [edi + 0x18]
mov dword [edi + 0x2534], 1
imul eax, dword [edi + 0x2534], 0xeb
add eax, 0x14
mov dword [edi + 0x2520], eax
mov dword [edi + 0x2528], 0xaf
mov eax, dword [edi + 0x2c]
mov dword [edi + 0x2538], eax
lea eax, [ebp - 0x1c]
push eax
call fcn.100486b0
push str.chams_fake_col
lea ecx, [ebp - 0x64]
lea esi, [edi + 0x25bc]
call fcn.1002f980
push str.color
lea ecx, [ebp - 0x4c]
mov dword [ebp - 4], 0x157
call fcn.1002f980
mov byte [ebp - 4], 0x58
lea eax, [ebp - 0x4c]
push eax
lea ecx, [edi + 0x263c]
mov dword [edi + 0x2634], 0
mov dword [edi + 0x2638], 0
mov byte [edi + 0x2629], 0
call fcn.1002f900
lea eax, [ebp - 0x64]
push eax
lea ecx, [edi + 0x25f4]
call fcn.1002f900
lea ecx, [ebp - 0x4c]
mov dword [edi + 0x2654], 0xff00c8ff
mov dword [edi + 0x266c], 0
call fcn.1002f930
lea ecx, [ebp - 0x64]
mov dword [ebp - 4], 0xffffffff
call fcn.1002f930
lea eax, [ebp - 0x1c]
mov dword [ebp - 0x1c], 0x10035a40
lea ecx, [esi + 0x58]
push eax
call fcn.100486b0
mov dword [ebp - 0x1c], esi
lea ecx, [edi + 0x18]
mov dword [edi + 0x25d4], 1
imul eax, dword [edi + 0x25d4], 0xeb
add eax, 0x14
mov dword [edi + 0x25c0], eax
mov dword [edi + 0x25c8], 0xaf
mov eax, dword [edi + 0x2c]
mov dword [edi + 0x25d8], eax
lea eax, [ebp - 0x1c]
push eax
call fcn.100486b0
push str.chams_fake_glow_col
lea ecx, [ebp - 0x64]
add edi, 0x268c
call fcn.1002f980
push str.glow_color
lea ecx, [ebp - 0x4c]
mov dword [ebp - 4], 0x159
call fcn.1002f980
mov esi, dword [ebp - 0x30]
lea eax, [ebp - 0x4c]
mov byte [ebp - 4], 0x5a
push eax
lea ecx, [esi + 0x270c]
mov dword [esi + 0x2704], 0
mov dword [esi + 0x2708], 0
mov byte [esi + 0x26f9], 0
call fcn.1002f900
lea eax, [ebp - 0x64]
push eax
lea ecx, [esi + 0x26c4]
call fcn.1002f900
lea ecx, [ebp - 0x4c]
mov dword [esi + 0x2724], 0xff00c8ff
mov dword [esi + 0x273c], 0
call fcn.1002f930
lea ecx, [ebp - 0x64]
mov dword [ebp - 4], 0xffffffff
call fcn.1002f930
lea eax, [ebp - 0x1c]
mov dword [ebp - 0x1c], 0x10035a40
push eax
lea ecx, [edi + 0x58]
call fcn.100486b0
lea eax, [ebp - 0x1c]
mov dword [ebp - 0x1c], 0x10035a70
push eax
lea ecx, [edi + 0x58]
call fcn.100486b0
mov dword [ebp - 0x1c], edi
mov edi, esi
mov dword [edi + 0x26a4], 1
lea ecx, [edi + 0x18]
imul eax, dword [edi + 0x26a4], 0xeb
add eax, 0x14
mov dword [edi + 0x2690], eax
mov dword [edi + 0x2698], 0xaf
mov eax, dword [edi + 0x2c]
mov dword [edi + 0x26a8], eax
lea eax, [ebp - 0x1c]
push eax
call fcn.100486b0
push str.chams_shot
lea ecx, [ebp - 0x64]
lea esi, [edi + 0x275c]
call fcn.1002f980
push str.shot_chams
lea ecx, [ebp - 0x4c]
mov dword [ebp - 4], 0x15b
call fcn.1002f980
lea eax, [ebp - 0x64]
mov byte [ebp - 4], 0x5c
push eax
lea ecx, [edi + 0x2794]
call fcn.1002f900
lea eax, [ebp - 0x4c]
mov byte [edi + 0x27c5], 1
push eax
lea ecx, [edi + 0x27cc]
call fcn.1002f900
lea ecx, [ebp - 0x4c]
mov byte [edi + 0x27c8], 0
call fcn.1002f930
lea ecx, [ebp - 0x64]
mov dword [ebp - 4], 0xffffffff
call fcn.1002f930
lea eax, [ebp - 0x1c]
mov dword [ebp - 0x1c], 0x10035a50
lea ecx, [esi + 0x58]
push eax
call fcn.100486b0
mov dword [ebp - 0x1c], esi
mov dword [edi + 0x2774], 1
lea ecx, [edi + 0x18]
imul eax, dword [edi + 0x2774], 0xeb
add eax, 0x14
mov dword [edi + 0x2760], eax
mov dword [edi + 0x2768], 0xaf
mov eax, dword [edi + 0x2c]
mov dword [edi + 0x2778], eax
lea eax, [ebp - 0x1c]
push eax
call fcn.100486b0
lea ecx, [ebp - 0x91]
call fcn.10048e40
push str.material
lea ecx, [ebp - 0x138]
mov esi, eax
call fcn.1002f980
push str.flat
lea ecx, [ebp - 0x120]
mov dword [ebp - 4], 0x15d
call fcn.1002f980
push str.metallic
lea ecx, [ebp - 0x108]
mov byte [ebp - 4], 0x5e
call fcn.1002f980
push str.gloss
lea ecx, [ebp - 0xf0]
mov byte [ebp - 4], 0x5f
call fcn.1002f980
push str.glow
lea ecx, [ebp - 0xd8]
mov byte [ebp - 4], 0x60
call fcn.1002f980
push str.outline_glow
lea ecx, [ebp - 0xc0]
mov byte [ebp - 4], 0x61
call fcn.1002f980
lea eax, [ebp - 0xa8]
mov dword [ebp - 4], 0x162
push eax
lea eax, [ebp - 0x138]
push eax
lea ecx, [ebp - 0x2c]
call fcn.10089a80
push esi
lea ecx, [ebp - 0x74]
push dword [eax + 4]
push dword [eax]
call fcn.10089aa0
push str.chams_shot_mat
lea ecx, [ebp - 0x64]
mov byte [ebp - 4], 0x63
call fcn.1002f980
push str.chams_material
lea ecx, [ebp - 0x4c]
mov byte [ebp - 4], 0x64
call fcn.1002f980
lea eax, [ebp - 0x64]
mov byte [ebp - 4], 0x65
push eax
lea ecx, [edi + 0x281c]
call fcn.1002f900
lea eax, [ebp - 0x4c]
mov byte [edi + 0x284d], 1
push eax
lea ecx, [edi + 0x2854]
call fcn.1002f900
xor eax, eax
mov ecx, 0xf
cmp byte [edi + 0x284d], al
cmovne eax, ecx
mov dword [edi + 0x2880], eax
add eax, 0x14
lea ecx, [ebp - 0x74]
mov dword [edi + 0x27f4], eax
mov dword [edi + 0x27f8], eax
call fcn.1002ec60
lea ecx, [ebp - 0x74]
mov esi, eax
call fcn.1002ec50
mov dword [ebp - 0x1c], eax
cmp esi, eax
je 0x10069515
lea eax, [edi + 0x286c]
mov edi, dword [ebp - 0x1c]
mov dword [ebp - 0x20], eax
nop dword [eax + eax]
push esi
mov ecx, eax
call fcn.10055f40
mov eax, dword [ebp - 0x20]
add esi, 0x18
cmp esi, edi
jne 0x10069500
mov edi, dword [ebp - 0x30]
lea ecx, [edi + 0x286c]
call fcn.10035b30
test eax, eax
je 0x1006952e
mov dword [edi + 0x287c], 0
lea ecx, [ebp - 0x4c]
call fcn.1002f930
lea ecx, [ebp - 0x64]
call fcn.1002f930
lea ecx, [ebp - 0x74]
call fcn.10055f70
push fcn.1002f930
push 6
push 0x18
lea eax, [ebp - 0x138]
mov dword [ebp - 4], 0xffffffff
push eax
call fcn.100c3d56
lea eax, [ebp - 0x1c]
mov dword [ebp - 0x1c], 0x10035a50
lea ecx, [edi + 0x283c]
push eax
call fcn.100486b0
lea eax, [edi + 0x27e4]
mov dword [ebp - 0x1c], eax
lea ecx, [edi + 0x18]
mov dword [edi + 0x27fc], 1
imul eax, dword [edi + 0x27fc], 0xeb
add eax, 0x14
mov dword [edi + 0x27e8], eax
mov dword [edi + 0x27f0], 0xaf
mov eax, dword [edi + 0x2c]
mov dword [edi + 0x2800], eax
lea eax, [ebp - 0x1c]
push eax
call fcn.100486b0
push str.chams_shot_col
lea ecx, [ebp - 0x64]
lea esi, [edi + 0x2884]
call fcn.1002f980
push str.color
lea ecx, [ebp - 0x4c]
mov dword [ebp - 4], 0x166
call fcn.1002f980
mov byte [ebp - 4], 0x67
lea eax, [ebp - 0x4c]
push eax
lea ecx, [edi + 0x2904]
mov dword [edi + 0x28fc], 0
mov dword [edi + 0x2900], 0
mov byte [edi + 0x28f1], 0
call fcn.1002f900
lea eax, [ebp - 0x64]
push eax
lea ecx, [edi + 0x28bc]
call fcn.1002f900
lea ecx, [ebp - 0x4c]
mov dword [edi + 0x291c], 0xffffffff
mov dword [edi + 0x2934], 0
call fcn.1002f930
lea ecx, [ebp - 0x64]
mov dword [ebp - 4], 0xffffffff
call fcn.1002f930
lea eax, [ebp - 0x1c]
mov dword [ebp - 0x1c], 0x10035a50
lea ecx, [esi + 0x58]
push eax
call fcn.100486b0
mov dword [ebp - 0x1c], esi
lea ecx, [edi + 0x18]
mov dword [edi + 0x289c], 1
imul eax, dword [edi + 0x289c], 0xeb
add eax, 0x14
mov dword [edi + 0x2888], eax
mov dword [edi + 0x2890], 0xaf
mov eax, dword [edi + 0x2c]
mov dword [edi + 0x28a0], eax
lea eax, [ebp - 0x1c]
push eax
call fcn.100486b0
push 0x100d6aec
lea ecx, [ebp - 0x80]
lea esi, [edi + 0x2954]
call fcn.10040600
push str.chams_shot_fadetime
lea ecx, [ebp - 0x64]
mov dword [ebp - 4], 0x168
call fcn.1002f980
push str.fade_time
lea ecx, [ebp - 0x4c]
mov byte [ebp - 4], 0x69
call fcn.1002f980
lea eax, [ebp - 0x64]
mov byte [ebp - 4], 0x6a
push eax
lea ecx, [edi + 0x298c]
call fcn.1002f900
lea eax, [ebp - 0x4c]
mov byte [edi + 0x29bd], 1
push eax
lea ecx, [edi + 0x29dc]
call fcn.1002f900
xor eax, eax
mov dword [edi + 0x29c8], 0
cmp byte [edi + 0x29bd], al
mov ecx, 0xf
mov dword [edi + 0x29cc], 0x41200000
cmovne eax, ecx
mov dword [edi + 0x29c4], 0x3e99999a
mov dword [edi + 0x2a0c], eax
lea ecx, [edi + 0x29f4]
add eax, 8
mov dword [edi + 0x29d8], 1
mov dword [edi + 0x2964], eax
mov dword [edi + 0x2968], eax
lea eax, [ebp - 0x80]
push eax
mov dword [edi + 0x29d0], 0x3dcccccd
call fcn.10089ef0
lea ecx, [ebp - 0x4c]
call fcn.1002f930
lea ecx, [ebp - 0x64]
call fcn.1002f930
lea ecx, [ebp - 0x80]
mov dword [ebp - 4], 0xffffffff
call fcn.100405f0
lea eax, [ebp - 0x1c]
mov dword [ebp - 0x1c], 0x10035a50
lea ecx, [esi + 0x58]
push eax
call fcn.100486b0
mov dword [ebp - 0x1c], esi
lea ecx, [edi + 0x18]
mov dword [edi + 0x296c], 1
imul eax, dword [edi + 0x296c], 0xeb
add eax, 0x14
mov dword [edi + 0x2958], eax
mov dword [edi + 0x2960], 0xaf
mov eax, dword [edi + 0x2c]
mov dword [edi + 0x2970], eax
lea eax, [ebp - 0x1c]
push eax
call fcn.100486b0
push 0x100d7658
lea ecx, [ebp - 0x64]
lea esi, [edi + 0x2acc]
call fcn.1002f980
push str.weapon_chams
lea ecx, [ebp - 0x4c]
mov dword [ebp - 4], 0x16b
call fcn.1002f980
lea eax, [ebp - 0x64]
mov byte [ebp - 4], 0x6c
push eax
lea ecx, [edi + 0x2b04]
call fcn.1002f900
lea eax, [ebp - 0x4c]
mov byte [edi + 0x2b35], 1
push eax
lea ecx, [edi + 0x2b3c]
call fcn.1002f900
lea ecx, [ebp - 0x4c]
mov byte [edi + 0x2b38], 0
call fcn.1002f930
lea ecx, [ebp - 0x64]
mov dword [ebp - 4], 0xffffffff
call fcn.1002f930
lea eax, [ebp - 0x1c]
mov dword [ebp - 0x1c], 0x10035a60
lea ecx, [esi + 0x58]
push eax
call fcn.100486b0
mov dword [ebp - 0x1c], esi
lea ecx, [edi + 0x18]
mov dword [edi + 0x2ae4], 1
imul eax, dword [edi + 0x2ae4], 0xeb
add eax, 0x14
mov dword [edi + 0x2ad0], eax
mov dword [edi + 0x2ad8], 0xaf
mov eax, dword [edi + 0x2c]
mov dword [edi + 0x2ae8], eax
lea eax, [ebp - 0x1c]
push eax
call fcn.100486b0
lea ecx, [ebp - 0x21]
call fcn.10048e40
push str.material
lea ecx, [ebp - 0x138]
mov esi, eax
call fcn.1002f980
push str.flat
lea ecx, [ebp - 0x120]
mov dword [ebp - 4], 0x16d
call fcn.1002f980
push str.metallic
lea ecx, [ebp - 0x108]
mov byte [ebp - 4], 0x6e
call fcn.1002f980
push str.gloss
lea ecx, [ebp - 0xf0]
mov byte [ebp - 4], 0x6f
call fcn.1002f980
push str.glow
lea ecx, [ebp - 0xd8]
mov byte [ebp - 4], 0x70
call fcn.1002f980
push str.outline_glow
lea ecx, [ebp - 0xc0]
mov byte [ebp - 4], 0x71
call fcn.1002f980
lea eax, [ebp - 0xa8]
mov dword [ebp - 4], 0x172
push eax
lea eax, [ebp - 0x138]
push eax
lea ecx, [ebp - 0x2c]
call fcn.10089a80
push esi
lea ecx, [ebp - 0x74]
push dword [eax + 4]
push dword [eax]
call fcn.10089aa0
push str.weapon_chams_mat
lea ecx, [ebp - 0x64]
mov byte [ebp - 4], 0x73
call fcn.1002f980
push str.weapon_material
lea ecx, [ebp - 0x4c]
mov byte [ebp - 4], 0x74
call fcn.1002f980
mov byte [ebp - 4], 0x75
lea eax, [ebp - 0x64]
push eax
lea ecx, [edi + 0x2b8c]
call fcn.1002f900
lea eax, [ebp - 0x4c]
mov byte [edi + 0x2bbd], 1
push eax
lea ecx, [edi + 0x2bc4]
call fcn.1002f900
xor eax, eax
mov ecx, 0xf
cmp byte [edi + 0x2bbd], al
cmovne eax, ecx
lea ecx, [ebp - 0x74]
mov dword [edi + 0x2bf0], eax
add eax, 0x14
mov dword [edi + 0x2b64], eax
mov dword [edi + 0x2b68], eax
call fcn.1002ec60
lea ecx, [ebp - 0x74]
mov esi, eax
call fcn.1002ec50
mov dword [ebp - 0x1c], eax
cmp esi, eax
je 0x100699ec
lea eax, [edi + 0x2bdc]
mov edi, dword [ebp - 0x1c]
mov dword [ebp - 0x20], eax
push esi
mov ecx, eax
call fcn.10055f40
mov eax, dword [ebp - 0x20]
add esi, 0x18
cmp esi, edi
jne 0x100699d7
mov edi, dword [ebp - 0x30]
lea ecx, [edi + 0x2bdc]
call fcn.10035b30
test eax, eax
je 0x10069a05
mov dword [edi + 0x2bec], 0
lea ecx, [ebp - 0x4c]
call fcn.1002f930
lea ecx, [ebp - 0x64]
call fcn.1002f930
lea ecx, [ebp - 0x74]
call fcn.10055f70
push fcn.1002f930
push 6
push 0x18
lea eax, [ebp - 0x138]
mov dword [ebp - 4], 0xffffffff
push eax
call fcn.100c3d56
lea eax, [ebp - 0x1c]
mov dword [ebp - 0x1c], 0x10035a60
lea ecx, [edi + 0x2bac]
push eax
call fcn.100486b0
lea eax, [edi + 0x2b54]
mov dword [ebp - 0x1c], eax
lea ecx, [edi + 0x18]
mov dword [edi + 0x2b6c], 1
imul eax, dword [edi + 0x2b6c], 0xeb
add eax, 0x14
mov dword [edi + 0x2b58], eax
mov dword [edi + 0x2b60], 0xaf
mov eax, dword [edi + 0x2c]
mov dword [edi + 0x2b70], eax
lea eax, [ebp - 0x1c]
push eax
call fcn.100486b0
push str.weapon_chams_col
lea ecx, [ebp - 0x64]
lea esi, [edi + 0x2bf4]
call fcn.1002f980
push str.weapon_color
lea ecx, [ebp - 0x4c]
mov dword [ebp - 4], 0x176
call fcn.1002f980
mov byte [ebp - 4], 0x77
lea eax, [ebp - 0x4c]
push eax
lea ecx, [edi + 0x2c74]
mov dword [edi + 0x2c6c], 0
mov dword [edi + 0x2c70], 0
mov byte [edi + 0x2c61], 0
call fcn.1002f900
lea eax, [ebp - 0x64]
push eax
lea ecx, [edi + 0x2c2c]
call fcn.1002f900
lea ecx, [ebp - 0x4c]
mov dword [edi + 0x2c8c], 0xff000000
mov dword [edi + 0x2ca4], 0
call fcn.1002f930
lea ecx, [ebp - 0x64]
mov dword [ebp - 4], 0xffffffff
call fcn.1002f930
lea eax, [ebp - 0x1c]
mov dword [ebp - 0x1c], 0x10035a60
lea ecx, [esi + 0x58]
push eax
call fcn.100486b0
mov dword [ebp - 0x1c], esi
lea ecx, [edi + 0x18]
mov dword [edi + 0x2c0c], 1
imul eax, dword [edi + 0x2c0c], 0xeb
add eax, 0x14
mov dword [edi + 0x2bf8], eax
mov dword [edi + 0x2c00], 0xaf
mov eax, dword [edi + 0x2c]
mov dword [edi + 0x2c10], eax
lea eax, [ebp - 0x1c]
push eax
call fcn.100486b0
push str.weapon_chams_col2
lea ecx, [ebp - 0x64]
lea esi, [edi + 0x2cc4]
call fcn.1002f980
push str.weapon_color_2
lea ecx, [ebp - 0x4c]
mov dword [ebp - 4], 0x178
call fcn.1002f980
mov byte [ebp - 4], 0x79
lea eax, [ebp - 0x4c]
push eax
lea ecx, [edi + 0x2d44]
mov dword [edi + 0x2d3c], 0
mov dword [edi + 0x2d40], 0
mov byte [edi + 0x2d31], 0
call fcn.1002f900
lea eax, [ebp - 0x64]
push eax
lea ecx, [edi + 0x2cfc]
call fcn.1002f900
lea ecx, [ebp - 0x4c]
mov dword [edi + 0x2d5c], 0xffffffff
mov dword [edi + 0x2d74], 0
call fcn.1002f930
lea ecx, [ebp - 0x64]
mov dword [ebp - 4], 0xffffffff
call fcn.1002f930
lea eax, [ebp - 0x1c]
mov dword [ebp - 0x1c], 0x10035a60
push eax
lea ecx, [edi + 0x2d1c]
call fcn.100486b0
mov dword [ebp - 0x20], esi
lea ecx, [edi + 0x18]
mov dword [esi + 0x18], 1
imul eax, dword [esi + 0x18], 0xeb
add eax, 0x14
mov dword [esi + 4], eax
mov dword [esi + 0xc], 0xaf
mov eax, dword [edi + 0x2c]
mov dword [esi + 0x1c], eax
lea eax, [ebp - 0x20]
push eax
call fcn.100486b0
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.100c3c5c
mov esp, ebp
pop ebp
mov esp, ebx
pop ebx
ret