Function at 0x10015010
Capabilities:
Authenticate hmac
Contain obfuscated stackstrings
Hash data using fnv
Inspect section memory permissions

Disassembly:
push ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x10061dd1
mov eax, dword fs:[0]
push eax
sub esp, 0x604
mov eax, dword [0x10076040]
xor eax, ebp
mov dword [ebp - 0x10], eax
push esi
push edi
push eax
lea eax, [ebp - 0xc]
mov dword fs:[0], eax
mov ecx, dword [ebp + 8]
xor eax, eax
mov dword [ebp - 0x26c], ecx
mov dword [ebp - 0x260], eax
mov dword [ebp - 0x268], eax
test ecx, ecx
je 0x10017fb6
mov eax, dword [0x10144a3c]
cmp dword [eax + 0x74], 0
je 0x10017fb6
cmp dword [eax + 0x78], 0
je 0x10017fb6
mov eax, dword [0x10144a5c]
mov esi, dword [0x10144aa8]
cmp byte [eax + 0x222], 0
je 0x100150ed
mov eax, dword [ecx]
mov eax, dword [eax + 4]
call eax
mov ecx, eax
mov al, byte [ecx]
test al, al
jne 0x1001509f
mov edi, 0x811c9dc5
jmp 0x100150b5
movsx eax, al
inc ecx
xor eax, 0x811c9dc5
imul edx, eax, 0x1000193
call fcn.10014f80
mov edi, eax
mov edx, 0xf30c40c9
mov ecx, 0x10067c9d
call fcn.10014f80
mov ecx, dword [ebp - 0x26c]
cmp edi, eax
jne 0x100150ed
mov eax, dword [ecx]
push 0
push str.vote_option
mov eax, dword [eax + 0x18]
call eax
mov ecx, dword [ebp - 0x26c]
test eax, eax
jne 0x100150ea
inc dword [esi]
jmp 0x100150ed
inc dword [esi + 4]
mov eax, dword [ecx]
mov eax, dword [eax + 4]
call eax
mov cl, byte [eax]
test cl, cl
je case.0x10015426.8
movsx ecx, cl
xor ecx, 0x811c9dc5
imul edx, ecx, 0x1000193
lea ecx, [eax + 1]
call fcn.10014f80
cmp eax, 0x1b30ddf0
jne case.0x10015426.8
mov ecx, dword [0x10144a3c]
push 0
push str.userid
mov eax, dword [ecx + 0x20]
mov esi, dword [ecx + 0x14]
mov ecx, dword [ebp - 0x26c]
mov dword [ebp - 0x270], eax
mov eax, dword [eax]
mov edi, dword [eax + 0xc]
mov eax, dword [ecx]
mov eax, dword [eax + 0x18]
call eax
mov ecx, dword [esi]
push eax
mov edx, dword [ecx + 0x24]
mov ecx, esi
call edx
mov ecx, dword [ebp - 0x270]
push eax
call edi
mov edx, dword [0x10144a3c]
mov dword [ebp - 0x278], eax
push 0
push str.attacker
mov eax, dword [edx + 0x20]
mov esi, dword [edx + 0x14]
mov dword [ebp - 0x270], eax
mov ecx, dword [eax]
mov eax, dword [ebp - 0x26c]
mov edi, dword [ecx + 0xc]
mov ecx, dword [eax]
mov edx, dword [ecx + 0x18]
mov ecx, eax
call edx
mov ecx, dword [esi]
push eax
mov edx, dword [ecx + 0x24]
mov ecx, esi
call edx
mov ecx, dword [ebp - 0x270]
push eax
call edi
cmp dword [ebp - 0x278], 0
mov dword [ebp - 0x270], eax
je 0x10017fb6
test eax, eax
je 0x10017fb6
mov esi, dword [ebp - 0x26c]
push 0
push str.crit
mov ecx, dword [esi]
mov edx, dword [ecx + 0x14]
mov ecx, esi
call edx
mov ecx, dword [esi]
push 0
push str.damageamount
mov byte [ebp - 0x271], al
mov edx, dword [ecx + 0x18]
mov ecx, esi
call edx
mov ecx, dword [esi]
push 0
push str.health
mov dword [ebp - 0x264], eax
mov edx, dword [ecx + 0x18]
mov ecx, esi
call edx
mov edx, dword [0x10144a3c]
mov edi, dword [edx + 0x20]
mov ecx, dword [edi]
mov esi, dword [ecx + 0xc]
mov ecx, dword [edx + 0x14]
mov eax, dword [ecx]
mov eax, dword [eax + 0x30]
call eax
push eax
mov ecx, edi
call esi
cmp dword [ebp - 0x270], eax
jne 0x100152f4
mov ecx, dword [ebp - 0x26c]
push 0
push str.weaponid
mov eax, dword [ecx]
call dword [eax + 0x18]
mov eax, dword [0x10144a5c]
cmp byte [eax + 0x1c7], 0
je 0x100152f4
mov eax, dword [0x10144a3c]
mov esi, dword [ebp - 0x278]
mov ecx, dword [eax + 0x78]
cmp esi, ecx
je 0x100152f4
call fcn.10003ce0
cmp dword [eax], 0
je 0x100152f4
mov eax, dword [0x10144a3c]
mov ecx, esi
mov eax, dword [eax + 0x10]
mov dword [ebp - 0x2c8], eax
mov eax, dword [eax]
mov eax, dword [eax + 4]
mov dword [ebp - 0x294], eax
call fcn.10003930
mov edx, eax
lea ecx, [ebp - 0x4c]
call fcn.10014dc0
mov ecx, esi
movss xmm1, dword [eax + 4]
mov dword [ebp - 0x34], 0
movss dword [ebp - 0x30], xmm1
mov dword [ebp - 0x2c], 0
call fcn.10003660
mov ecx, esi
mov edi, eax
call fcn.100035c0
mov ecx, dword [ebp - 0x278]
mov esi, eax
call fcn.10003700
push ecx
mov dword [esp], 0x3f333333
lea ecx, [ebp - 0x34]
push 0xc
push 0x70
push 0x70
push 0x70
push ecx
mov ecx, dword [ebp - 0x2c8]
push edi
push esi
push eax
call dword [ebp - 0x294]
mov eax, dword [0x10144a3c]
mov esi, dword [eax + 0x78]
test esi, esi
je case.0x10015426.8
mov eax, dword fs:[0x2c]
mov ecx, dword [0x101433f8]
mov ecx, dword [eax + ecx*4]
mov eax, dword [0x101434a0]
cmp eax, dword [ecx + 4]
jle 0x10015365
push 0x101434a0
call fcn.1005eea1
add esp, 4
cmp dword [0x101434a0], 0xffffffff
jne 0x10015365
push str.m_iItemDefinitionIndex
push str.CEconEntity
mov dword [ebp - 4], 0
call fcn.10059a30
push 0x101434a0
mov dword [0x10143438], eax
mov dword [ebp - 4], 0xffffffff
call fcn.1005ee50
add esp, 4
mov eax, dword [0x10143438]
cmp dword [esi + eax], 0x3e6
jne case.0x10015426.8
mov ecx, dword [0x10144a3c]
mov edi, dword [ecx + 0x20]
mov ecx, dword [ecx + 0x78]
mov eax, dword [edi]
mov esi, dword [eax + 0x10]
call fcn.10003d80
mov ecx, edi
push dword [eax]
call esi
mov ecx, eax
mov eax, dword [ebp - 0x278]
cmp eax, ecx
jne 0x10017fb6
mov esi, dword [ebp - 0x270]
cmp esi, eax
je 0x10017fb6
test ecx, ecx
je 0x10017fb6
cmp dword [ebp - 0x264], 0x19
jle case.0x10015426.8
cmp byte [ebp - 0x271], 0
je case.0x10015426.8
mov eax, dword [0x10144a70]
mov byte [eax + 4], 1
mov ecx, dword [0x10144a3c]
mov ecx, dword [ecx + 0x14]
call fcn.10002650
addss xmm0, dword [0x1006d640]
mov eax, dword [0x10144a70]
mov ecx, esi
movss dword [eax + 0xc], xmm0
call fcn.10002910
test al, al
je case.0x10015426.8
mov ecx, esi
call fcn.100039d0
cmp dword [eax], 8
je case.0x10015426.8
mov ecx, esi
call fcn.100039d0
mov eax, dword [eax]
dec eax
cmp eax, 8
ja case.0x10015426.8
jmp dword [eax*4 + 0x10017ff8]
mov eax, dword [0x10144a70]
mov dword [eax + 8], 1
jmp case.0x10015426.8
mov eax, dword [0x10144a70]
mov ecx, esi
mov dword [eax + 8], 1
call fcn.1004a440
test eax, eax
je case.0x10015426.8
mov ecx, eax
call fcn.10003f60
cmp eax, 0xd
jmp 0x1001547f
mov eax, dword [0x10144a70]
mov ecx, esi
mov dword [eax + 8], 2
call fcn.1004a440
test eax, eax
je case.0x10015426.8
mov ecx, eax
call fcn.10003f60
cmp eax, 0xf
jne case.0x10015426.8
mov eax, dword [0x10144a70]
mov dword [eax + 8], 0
mov edx, 0xf50c43ef
mov ecx, 0x10067c51
call fcn.10014f80
mov edi, dword [ebp - 0x26c]
mov esi, eax
mov ecx, edi
mov edx, dword [edi]
mov edx, dword [edx + 4]
call edx
mov ecx, eax
mov dl, byte [ecx]
test dl, dl
jne 0x100154bc
mov ecx, 0x811c9dc5
jmp 0x100154d2
movsx eax, dl
inc ecx
xor eax, 0x811c9dc5
imul edx, eax, 0x1000193
call fcn.10014f80
mov ecx, eax
cmp ecx, esi
jne 0x100168a2
mov eax, dword [0x10144a5c]
cmp byte [eax + 0x224], 0
je 0x100168a2
mov ecx, dword [0x10144a3c]
push 0
push str.userid
mov eax, dword [ecx + 0x20]
mov esi, dword [ecx + 0x14]
mov ecx, dword [ebp - 0x26c]
mov dword [ebp - 0x264], eax
mov eax, dword [eax]
mov edi, dword [eax + 0xc]
mov eax, dword [ecx]
mov eax, dword [eax + 0x18]
call eax
mov ecx, dword [esi]
push eax
mov edx, dword [ecx + 0x24]
mov ecx, esi
call edx
mov ecx, dword [ebp - 0x264]
push eax
call edi
mov edi, eax
test edi, edi
je 0x1001689c
mov eax, dword [edi + 8]
lea ecx, [edi + 8]
mov eax, dword [eax + 0x24]
call eax
push 0x84
mov esi, eax
lea eax, [ebp - 0x154]
push 0
push eax
call sub.VCRUNTIME140.dll_memset
mov ecx, dword [0x10144a3c]
add esp, 0xc
mov edx, dword [ecx + 0x14]
mov ecx, dword [edx]
mov eax, dword [ecx + 0x20]
lea ecx, [ebp - 0x154]
push ecx
push esi
mov ecx, edx
call eax
mov eax, dword [0x101433f8]
mov esi, dword fs:[0x2c]
mov ecx, dword [0x10143454]
mov esi, dword [esi + eax*4]
cmp ecx, dword [esi + 4]
jle 0x100155db
push 0x10143454
call fcn.1005eea1
mov ecx, dword [0x10143454]
add esp, 4
cmp ecx, 0xffffffff
jne 0x100155db
push str.m_iTeamNum
push str.CBaseEntity
mov dword [ebp - 4], 1
call fcn.10059a30
push 0x10143454
mov dword [0x10143494], eax
mov dword [ebp - 4], 0xffffffff
call fcn.1005ee50
mov ecx, dword [0x10143454]
add esp, 4
mov eax, dword [0x10143494]
mov dword [ebp - 0x264], eax
mov eax, dword [0x10144a3c]
mov eax, dword [eax + 0x74]
mov dword [ebp - 0x294], eax
cmp ecx, dword [esi + 4]
jle 0x10015641
push 0x10143454
call fcn.1005eea1
add esp, 4
cmp dword [0x10143454], 0xffffffff
jne 0x10015641
push str.m_iTeamNum
push str.CBaseEntity
mov dword [ebp - 4], 2
call fcn.10059a30
push 0x10143454
mov dword [0x10143494], eax
mov dword [ebp - 4], 0xffffffff
call fcn.1005ee50
add esp, 4
mov ecx, dword [ebp - 0x264]
mov edx, dword [ebp - 0x294]
mov eax, dword [0x10143494]
mov ecx, dword [ecx + edi]
cmp ecx, dword [eax + edx]
mov edx, str._aFFFFFF
je 0x1001569e
push str.ENEMY
lea ecx, [ebp - 0x478]
call fcn.100180e0
mov dword [ebp - 4], 3
lea ecx, [ebp - 0x550]
push str._a404040
mov edx, eax
mov dword [ebp - 0x268], 1
call fcn.100181f0
add esp, 8
mov ecx, eax
mov eax, 3
jmp 0x100156db
push str.TEAM
lea ecx, [ebp - 0x538]
call fcn.100180e0
mov dword [ebp - 4], 5
lea ecx, [ebp - 0x520]
push str._a404040
mov edx, eax
mov dword [ebp - 0x268], 4
call fcn.100181f0
mov ecx, eax
add esp, 8
mov eax, 0xc
movups xmm0, xmmword [ecx]
mov dword [ebp - 0x260], eax
movups xmmword [ebp - 0xa0], xmm0
movq xmm0, qword [ecx + 0x10]
movq qword [ebp - 0x90], xmm0
mov dword [ebp - 4], 6
mov dword [ecx + 0x10], 0
mov dword [ecx + 0x14], 0xf
mov byte [ecx], 0
test al, 8
je 0x1001572e
and eax, 0xfffffff7
lea ecx, [ebp - 0x520]
mov dword [ebp - 0x260], eax
call fcn.100030a0
mov eax, dword [ebp - 0x260]
test al, 4
je 0x1001574c
and eax, 0xfffffffb
lea ecx, [ebp - 0x538]
mov dword [ebp - 0x260], eax
call fcn.100030a0
mov eax, dword [ebp - 0x260]
test al, 2
je 0x1001576a
and eax, 0xfffffffd
lea ecx, [ebp - 0x550]
mov dword [ebp - 0x260], eax
call fcn.100030a0
mov eax, dword [ebp - 0x260]
mov byte [ebp - 4], 9
test al, 1
je 0x10015786
and eax, 0xfffffffe
lea ecx, [ebp - 0x478]
mov dword [ebp - 0x260], eax
call fcn.100030a0
mov ecx, dword [0x101422b4]
mov esi, 0x7fffffff
mov eax, esi
sub eax, ecx
cmp eax, 7
jb 0x10017fd3
cmp dword [0x101422b8], 0xf
mov eax, 0x101422a4
push 7
cmova eax, dword [0x101422a4]
push str.CHEATER
push ecx
push eax
push ecx
push dword [ebp - 0x264]
lea ecx, [ebp - 0x290]
call fcn.10018400
mov edi, dword [ebp - 0x260]
or edi, 0x100000
push str._a404040
lea edx, [ebp - 0x290]
mov byte [ebp - 4], 0xa
lea ecx, [ebp - 0x28]
call fcn.100181f0
add esp, 4
mov byte [ebp - 4], 0xc
mov ecx, dword [ebp - 0x27c]
cmp ecx, 0xf
jbe 0x10015832
mov edx, dword [ebp - 0x290]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x10015828
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
jbe 0x10015828
call dword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
push ecx
push edx
call fcn.1005f254
add esp, 8
lea ecx, [ebp - 0x154]
mov dword [ebp - 0x280], 0
mov dword [ebp - 0x27c], 0xf
lea edx, [ecx + 1]
mov byte [ebp - 0x290], 0
mov al, byte [ecx]
inc ecx
test al, al
jne 0x10015856
sub ecx, edx
mov eax, esi
mov edx, dword [0x10142284]
sub eax, edx
cmp eax, ecx
jb 0x10017fd8
cmp dword [0x10142288], 0xf
mov eax, str._a0095FF
push ecx
cmova eax, dword [str._a0095FF]
lea ecx, [ebp - 0x154]
push ecx
push edx
push eax
push ecx
push dword [ebp - 0x264]
lea ecx, [ebp - 0x2ac]
call fcn.10018400
or edi, 0x200000
push str._aFFFFFF
lea edx, [ebp - 0x2ac]
mov byte [ebp - 4], 0xd
lea ecx, [ebp - 0xb8]
call fcn.100181f0
add esp, 4
mov byte [ebp - 4], 0xf
mov ecx, dword [ebp - 0x298]
cmp ecx, 0xf
jbe 0x10015903
mov edx, dword [ebp - 0x2ac]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x100158f9
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
jbe 0x100158f9
call dword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
push ecx
push edx
call fcn.1005f254
add esp, 8
lea ecx, [ebp - 0x130]
mov dword [ebp - 0x29c], 0
mov dword [ebp - 0x298], 0xf
lea edx, [ecx + 1]
mov byte [ebp - 0x2ac], 0
mov al, byte [ecx]
inc ecx
test al, al
jne 0x10015927
sub ecx, edx
mov eax, esi
mov edx, dword [0x10142284]
sub eax, edx
cmp eax, ecx
jb 0x10017fdd
cmp dword [0x10142288], 0xf
mov eax, str._a0095FF
push ecx
cmova eax, dword [str._a0095FF]
lea ecx, [ebp - 0x130]
push ecx
push edx
push eax
push ecx
push dword [ebp - 0x264]
lea ecx, [ebp - 0x290]
call fcn.10018400
or edi, 0x400000
push str._aFFFFFF
lea edx, [ebp - 0x290]
mov byte [ebp - 4], 0x10
lea ecx, [ebp - 0x70]
call fcn.100181f0
add esp, 4
mov byte [ebp - 4], 0x12
mov ecx, dword [ebp - 0x27c]
cmp ecx, 0xf
jbe 0x100159d1
mov edx, dword [ebp - 0x290]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x100159c7
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
jbe 0x100159c7
call dword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
push ecx
push edx
call fcn.1005f254
add esp, 8
mov ecx, dword [0x10142254]
mov eax, esi
sub eax, ecx
mov dword [ebp - 0x280], 0
mov dword [ebp - 0x27c], 0xf
mov byte [ebp - 0x290], 0
cmp eax, 1
jb 0x10017fe2
cmp dword [0x10142258], 0xf
mov eax, str._a404040
push 1
cmova eax, dword [str._a404040]
push 0x10067d20
push ecx
push eax
push ecx
push dword [ebp - 0x264]
lea ecx, [ebp - 0x4f0]
call fcn.10018400
or edi, 0x800000
push str._a7FFFAF
lea edx, [ebp - 0x4f0]
mov byte [ebp - 4], 0x13
lea ecx, [ebp - 0x508]
call fcn.100181f0
mov ecx, eax
add esp, 4
mov dword [ebp - 0x264], ecx
mov byte [ebp - 4], 0x14
mov esi, dword [ecx + 0x14]
mov eax, esi
mov edx, dword [ecx + 0x10]
sub eax, edx
cmp eax, 7
jb 0x10015a99
lea eax, [edx + 7]
mov dword [ecx + 0x10], eax
mov eax, ecx
cmp esi, 0xf
jbe 0x10015a7a
mov eax, dword [ecx]
push 7
lea esi, [eax + edx]
push str.Omicron
push esi
call sub.VCRUNTIME140.dll_memmove
mov eax, dword [ebp - 0x264]
add esp, 0xc
mov byte [esi + 7], 0
jmp 0x10015aad
push 7
push str.Omicron
push dword [ebp - 0x264]
push 7
call fcn.100182a0
mov dword [ebp - 0x318], 0
xorps xmm0, xmm0
movups xmmword [ebp - 0x328], xmm0
mov dword [ebp - 0x314], 0
or edi, 0x1000000
movups xmm0, xmmword [eax]
movups xmmword [ebp - 0x328], xmm0
movq xmm0, qword [eax + 0x10]
movq qword [ebp - 0x318], xmm0
mov dword [eax + 0x10], 0
mov dword [eax + 0x14], 0xf
mov byte [eax], 0
push str._a404040
lea edx, [ebp - 0x328]
mov byte [ebp - 4], 0x15
lea ecx, [ebp - 0x5c8]
call fcn.100181f0
add esp, 4
mov ecx, eax
mov byte [ebp - 4], 0x16
mov esi, dword [ecx + 0x14]
mov eax, esi
mov edx, dword [ecx + 0x10]
sub eax, edx
cmp eax, 4
jb 0x10015b48
lea eax, [edx + 4]
mov dword [ecx + 0x10], eax
mov eax, ecx
cmp esi, 0xf
jbe 0x10015b3a
mov eax, dword [ecx]
mov dword [eax + edx], 0x5b20205d
mov byte [eax + edx + 4], 0
jmp 0x10015b5e
push 4
push str.____
push dword [ebp - 0x264]
push 4
call fcn.100182a0
mov ecx, eax
mov dword [ebp - 0x300], 0
xorps xmm0, xmm0
movups xmmword [ebp - 0x310], xmm0
mov dword [ebp - 0x2fc], 0
or edi, 0x2000000
movups xmm0, xmmword [ecx]
movups xmmword [ebp - 0x310], xmm0
movq xmm0, qword [ecx + 0x10]
movq qword [ebp - 0x300], xmm0
mov dword [ecx + 0x10], 0
mov dword [ecx + 0x14], 0xf
mov byte [ecx], 0
lea eax, [ebp - 0xa0]
mov byte [ebp - 4], 0x17
push eax
lea edx, [ebp - 0x310]
lea ecx, [ebp - 0x610]
call fcn.100181f0
add esp, 4
mov ecx, eax
mov byte [ebp - 4], 0x18
mov esi, dword [ecx + 0x14]
mov eax, esi
mov edx, dword [ecx + 0x10]
sub eax, edx
cmp eax, 2
jb 0x10015bfd
lea eax, [edx + 2]
mov dword [ecx + 0x10], eax
mov eax, ecx
cmp esi, 0xf
jbe 0x10015bed
mov eax, dword [ecx]
mov esi, 0x205d
mov word [eax + edx], si
mov byte [eax + edx + 2], 0
jmp 0x10015c13
push 2
push 0x10067d0c
push dword [ebp - 0x264]
push 2
call fcn.100182a0
mov ecx, eax
mov dword [ebp - 0x2e8], 0
xorps xmm0, xmm0
movups xmmword [ebp - 0x2f8], xmm0
mov dword [ebp - 0x2e4], 0
or edi, 0x4000000
movups xmm0, xmmword [ecx]
movups xmmword [ebp - 0x2f8], xmm0
movq xmm0, qword [ecx + 0x10]
movq qword [ebp - 0x2e8], xmm0
mov dword [ecx + 0x10], 0
mov dword [ecx + 0x14], 0xf
mov byte [ecx], 0
lea eax, [ebp - 0xb8]
mov byte [ebp - 4], 0x19
push eax
lea edx, [ebp - 0x2f8]
lea ecx, [ebp - 0x568]
call fcn.100181f0
mov ecx, eax
add esp, 4
mov dword [ebp - 0x264], ecx
mov byte [ebp - 4], 0x1a
mov esi, dword [ecx + 0x14]
mov eax, esi
mov edx, dword [ecx + 0x10]
sub eax, edx
cmp eax, 0xe
jb 0x10015cc7
lea eax, [edx + 0xe]
mov dword [ecx + 0x10], eax
mov eax, ecx
cmp esi, 0xf
jbe 0x10015ca8
mov eax, dword [ecx]
push 0xe
lea esi, [eax + edx]
push str._has_joined.__
push esi
call sub.VCRUNTIME140.dll_memmove
mov eax, dword [ebp - 0x264]
add esp, 0xc
mov byte [esi + 0xe], 0
jmp 0x10015cdb
push 0xe
push str._has_joined.__
push dword [ebp - 0x264]
push 0xe
call fcn.100182a0
mov dword [ebp - 0x2d0], 0
xorps xmm0, xmm0
movups xmmword [ebp - 0x2e0], xmm0
mov dword [ebp - 0x2cc], 0
or edi, 0x8000000
movups xmm0, xmmword [eax]
movups xmmword [ebp - 0x2e0], xmm0
movq xmm0, qword [eax + 0x10]
movq qword [ebp - 0x2d0], xmm0
mov dword [eax + 0x10], 0
mov dword [eax + 0x14], 0xf
mov byte [eax], 0
lea eax, [ebp - 0x70]
mov byte [ebp - 4], 0x1b
push eax
lea edx, [ebp - 0x2e0]
lea ecx, [ebp - 0x5b0]
call fcn.100181f0
add esp, 4
mov ecx, eax
mov byte [ebp - 4], 0x1c
mov esi, dword [ecx + 0x14]
mov eax, esi
mov edx, dword [ecx + 0x10]
sub eax, edx
cmp eax, 1
jb 0x10015d6f
lea eax, [edx + 1]
mov dword [ecx + 0x10], eax
mov eax, ecx
cmp esi, 0xf
jbe 0x10015d67
mov eax, dword [ecx]
mov word [eax + edx], 0x5d
jmp 0x10015d85
push 1
push 0x10067cf8
push dword [ebp - 0x264]
push 1
call fcn.100182a0
mov ecx, eax
mov dword [ebp - 0x48], 0
xorps xmm0, xmm0
movups xmmword [ebp - 0x58], xmm0
mov dword [ebp - 0x44], 0
or edi, 0x10000000
movups xmm0, xmmword [ecx]
movups xmmword [ebp - 0x58], xmm0
movq xmm0, qword [ecx + 0x10]
movq qword [ebp - 0x48], xmm0
mov dword [ecx + 0x10], 0
mov dword [ecx + 0x14], 0xf
mov byte [ecx], 0
mov byte [ebp - 4], 0x1e
mov ecx, dword [ebp - 0x59c]
cmp ecx, 0xf
jbe 0x10015e00
mov edx, dword [ebp - 0x5b0]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x10015df6
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x1001610f
push ecx
push edx
call fcn.1005f254
add esp, 8
mov dword [ebp - 0x5a0], 0
mov dword [ebp - 0x59c], 0xf
mov byte [ebp - 0x5b0], 0
mov byte [ebp - 4], 0x1f
mov ecx, dword [ebp - 0x2cc]
cmp ecx, 0xf
jbe 0x10015e59
mov edx, dword [ebp - 0x2e0]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x10015e4f
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x1001610f
push ecx
push edx
call fcn.1005f254
add esp, 8
mov dword [ebp - 0x2d0], 0
mov dword [ebp - 0x2cc], 0xf
mov byte [ebp - 0x2e0], 0
mov byte [ebp - 4], 0x20
mov ecx, dword [ebp - 0x554]
cmp ecx, 0xf
jbe 0x10015eb2
mov edx, dword [ebp - 0x568]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x10015ea8
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x1001610f
push ecx
push edx
call fcn.1005f254
add esp, 8
mov dword [ebp - 0x558], 0
mov dword [ebp - 0x554], 0xf
mov byte [ebp - 0x568], 0
mov byte [ebp - 4], 0x21
mov ecx, dword [ebp - 0x2e4]
cmp ecx, 0xf
jbe 0x10015f0b
mov edx, dword [ebp - 0x2f8]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x10015f01
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x1001610f
push ecx
push edx
call fcn.1005f254
add esp, 8
mov dword [ebp - 0x2e8], 0
mov dword [ebp - 0x2e4], 0xf
mov byte [ebp - 0x2f8], 0
mov byte [ebp - 4], 0x22
mov ecx, dword [ebp - 0x5fc]
cmp ecx, 0xf
jbe 0x10015f64
mov edx, dword [ebp - 0x610]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x10015f5a
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x1001610f
push ecx
push edx
call fcn.1005f254
add esp, 8
mov dword [ebp - 0x600], 0
mov dword [ebp - 0x5fc], 0xf
mov byte [ebp - 0x610], 0
mov byte [ebp - 4], 0x23
mov ecx, dword [ebp - 0x2fc]
cmp ecx, 0xf
jbe 0x10015fbd
mov edx, dword [ebp - 0x310]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x10015fb3
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x1001610f
push ecx
push edx
call fcn.1005f254
add esp, 8
mov dword [ebp - 0x300], 0
mov dword [ebp - 0x2fc], 0xf
mov byte [ebp - 0x310], 0
mov byte [ebp - 4], 0x24
mov ecx, dword [ebp - 0x5b4]
cmp ecx, 0xf
jbe 0x10016016
mov edx, dword [ebp - 0x5c8]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x1001600c
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x1001610f
push ecx
push edx
call fcn.1005f254
add esp, 8
mov dword [ebp - 0x5b8], 0
mov dword [ebp - 0x5b4], 0xf
mov byte [ebp - 0x5c8], 0
mov byte [ebp - 4], 0x25
mov ecx, dword [ebp - 0x314]
cmp ecx, 0xf
jbe 0x1001606f
mov edx, dword [ebp - 0x328]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x10016065
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x1001610f
push ecx
push edx
call fcn.1005f254
add esp, 8
mov dword [ebp - 0x318], 0
mov dword [ebp - 0x314], 0xf
mov byte [ebp - 0x328], 0
mov byte [ebp - 4], 0x26
mov ecx, dword [ebp - 0x4f4]
cmp ecx, 0xf
jbe 0x100160c4
mov edx, dword [ebp - 0x508]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x100160ba
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x1001610f
push ecx
push edx
call fcn.1005f254
add esp, 8
mov dword [ebp - 0x4f8], 0
mov dword [ebp - 0x4f4], 0xf
mov byte [ebp - 0x508], 0
mov byte [ebp - 4], 0x27
mov ecx, dword [ebp - 0x4dc]
cmp ecx, 0xf
jbe 0x1001611f
mov edx, dword [ebp - 0x4f0]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x10016115
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
jbe 0x10016115
call dword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
push ecx
push edx
call fcn.1005f254
add esp, 8
mov ecx, dword [0x10142254]
mov eax, 0x7fffffff
sub eax, ecx
mov dword [ebp - 0x4e0], 0
mov dword [ebp - 0x4dc], 0xf
mov byte [ebp - 0x4f0], 0
cmp eax, 1
jb 0x10017fe7
cmp dword [0x10142258], 0xf
mov eax, str._a404040
push 1
cmova eax, dword [str._a404040]
push 0x10067d20
push ecx
push eax
push ecx
push dword [ebp - 0x264]
lea ecx, [ebp - 0x2c4]
call fcn.10018400
or edi, 0x20000000
push str._a7FFFAF
lea edx, [ebp - 0x2c4]
mov byte [ebp - 4], 0x28
lea ecx, [ebp - 0x430]
call fcn.100181f0
mov ecx, eax
add esp, 4
mov dword [ebp - 0x264], ecx
mov byte [ebp - 4], 0x29
mov esi, dword [ecx + 0x14]
mov eax, esi
mov edx, dword [ecx + 0x10]
sub eax, edx
cmp eax, 7
jb 0x100161ea
lea eax, [edx + 7]
mov dword [ecx + 0x10], eax
mov eax, ecx
cmp esi, 0xf
jbe 0x100161cb
mov eax, dword [ecx]
push 7
lea esi, [eax + edx]
push str.Omicron
push esi
call sub.VCRUNTIME140.dll_memmove
mov eax, dword [ebp - 0x264]
add esp, 0xc
mov byte [esi + 7], 0
jmp 0x100161fe
push 7
push str.Omicron
push dword [ebp - 0x264]
push 7
call fcn.100182a0
mov dword [ebp - 0x360], 0
xorps xmm0, xmm0
movups xmmword [ebp - 0x370], xmm0
mov dword [ebp - 0x35c], 0
or edi, 0x40000000
movups xmm0, xmmword [eax]
movups xmmword [ebp - 0x370], xmm0
movq xmm0, qword [eax + 0x10]
movq qword [ebp - 0x360], xmm0
mov dword [eax + 0x10], 0
mov dword [eax + 0x14], 0xf
mov byte [eax], 0
push str._a404040
lea edx, [ebp - 0x370]
mov byte [ebp - 4], 0x2a
lea ecx, [ebp - 0x418]
call fcn.100181f0
add esp, 4
mov ecx, eax
mov byte [ebp - 4], 0x2b
mov esi, dword [ecx + 0x14]
mov eax, esi
mov edx, dword [ecx + 0x10]
sub eax, edx
cmp eax, 2
jb 0x1001629b
lea eax, [edx + 2]
mov dword [ecx + 0x10], eax
mov eax, ecx
cmp esi, 0xf
jbe 0x1001628b
mov eax, dword [ecx]
mov esi, 0x205d
mov word [eax + edx], si
mov byte [eax + edx + 2], 0
jmp 0x100162b1
push 2
push 0x10067d0c
push dword [ebp - 0x264]
push 2
call fcn.100182a0
mov ecx, eax
mov dword [ebp - 0x348], 0
xorps xmm0, xmm0
movups xmmword [ebp - 0x358], xmm0
mov dword [ebp - 0x344], 0
or edi, 0x80000000
movups xmm0, xmmword [ecx]
movups xmmword [ebp - 0x358], xmm0
movq xmm0, qword [ecx + 0x10]
movq qword [ebp - 0x348], xmm0
mov dword [ecx + 0x10], 0
mov dword [ecx + 0x14], 0xf
mov byte [ecx], 0
mov dword [ebp - 0x260], edi
mov dword [ebp - 0x268], edi
lea eax, [ebp - 0xb8]
mov byte [ebp - 4], 0x2c
push eax
lea edx, [ebp - 0x358]
lea ecx, [ebp - 0x5e0]
call fcn.100181f0
add esp, 4
mov edi, eax
mov byte [ebp - 4], 0x2d
mov edx, dword [edi + 0x14]
mov eax, edx
mov ecx, dword [edi + 0x10]
sub eax, ecx
cmp eax, 0xb
jb 0x10016365
lea eax, [ecx + 0xb]
mov dword [edi + 0x10], eax
mov eax, edi
cmp edx, 0xf
jbe 0x1001634c
mov eax, dword [edi]
push 0xb
lea esi, [eax + ecx]
push str.is_a_known
push esi
call sub.VCRUNTIME140.dll_memmove
add esp, 0xc
mov byte [esi + 0xb], 0
jmp 0x1001637d
push 0xb
push str.is_a_known
push dword [ebp - 0x264]
mov ecx, edi
push 0xb
call fcn.100182a0
mov edi, eax
xorps xmm0, xmm0
mov dword [ebp - 0x330], 0
movups xmmword [ebp - 0x340], xmm0
mov dword [ebp - 0x32c], 0
movups xmm0, xmmword [edi]
movups xmmword [ebp - 0x340], xmm0
movq xmm0, qword [edi + 0x10]
movq qword [ebp - 0x330], xmm0
mov dword [edi + 0x10], 0
lea eax, [ebp - 0x28]
mov dword [edi + 0x14], 0xf
lea edx, [ebp - 0x340]
mov byte [edi], 0
lea ecx, [ebp - 0x5f8]
push eax
mov byte [ebp - 4], 0x2e
call fcn.100181f0
add esp, 4
mov ecx, eax
mov byte [ebp - 4], 0x2f
mov esi, dword [ecx + 0x14]
mov eax, esi
mov edx, dword [ecx + 0x10]
sub eax, edx
cmp eax, 1
jb 0x1001640b
lea eax, [edx + 1]
mov dword [ecx + 0x10], eax
mov eax, ecx
cmp esi, 0xf
jbe 0x10016403
mov eax, dword [ecx]
mov word [eax + edx], 0x21
jmp 0x10016421
push 1
push 0x10067d24
push dword [ebp - 0x264]
push 1
call fcn.100182a0
mov ecx, eax
movups xmm0, xmmword [ecx]
movups xmmword [ebp - 0x88], xmm0
movq xmm0, qword [ecx + 0x10]
movq qword [ebp - 0x78], xmm0
mov byte [ebp - 4], 0x31
mov dword [ecx + 0x10], 0
mov dword [ecx + 0x14], 0xf
mov byte [ecx], 0
mov ecx, dword [ebp - 0x5e4]
cmp ecx, 0xf
jbe 0x10016484
mov edx, dword [ebp - 0x5f8]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x1001647a
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x100166e1
push ecx
push edx
call fcn.1005f254
add esp, 8
mov dword [ebp - 0x5e8], 0
mov dword [ebp - 0x5e4], 0xf
mov byte [ebp - 0x5f8], 0
mov byte [ebp - 4], 0x32
mov ecx, dword [ebp - 0x32c]
cmp ecx, 0xf
jbe 0x100164dd
mov edx, dword [ebp - 0x340]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x100164d3
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x100166e1
push ecx
push edx
call fcn.1005f254
add esp, 8
mov dword [ebp - 0x330], 0
mov dword [ebp - 0x32c], 0xf
mov byte [ebp - 0x340], 0
mov byte [ebp - 4], 0x33
mov ecx, dword [ebp - 0x5cc]
cmp ecx, 0xf
jbe 0x10016536
mov edx, dword [ebp - 0x5e0]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x1001652c
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x100166e1
push ecx
push edx
call fcn.1005f254
add esp, 8
mov dword [ebp - 0x5d0], 0
mov dword [ebp - 0x5cc], 0xf
mov byte [ebp - 0x5e0], 0
mov byte [ebp - 4], 0x34
mov ecx, dword [ebp - 0x344]
cmp ecx, 0xf
jbe 0x1001658f
mov edx, dword [ebp - 0x358]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x10016585
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x100166e1
push ecx
push edx
call fcn.1005f254
add esp, 8
mov dword [ebp - 0x348], 0
mov dword [ebp - 0x344], 0xf
mov byte [ebp - 0x358], 0
mov byte [ebp - 4], 0x35
mov ecx, dword [ebp - 0x404]
cmp ecx, 0xf
jbe 0x100165e8
mov edx, dword [ebp - 0x418]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x100165de
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x100166e1
push ecx
push edx
call fcn.1005f254
add esp, 8
mov dword [ebp - 0x408], 0
mov dword [ebp - 0x404], 0xf
mov byte [ebp - 0x418], 0
mov byte [ebp - 4], 0x36
mov ecx, dword [ebp - 0x35c]
cmp ecx, 0xf
jbe 0x10016641
mov edx, dword [ebp - 0x370]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x10016637
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x100166e1
push ecx
push edx
call fcn.1005f254
add esp, 8
mov dword [ebp - 0x360], 0
mov dword [ebp - 0x35c], 0xf
mov byte [ebp - 0x370], 0
mov byte [ebp - 4], 0x37
mov ecx, dword [ebp - 0x41c]
cmp ecx, 0xf
jbe 0x10016696
mov edx, dword [ebp - 0x430]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x1001668c
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x100166e1
push ecx
push edx
call fcn.1005f254
add esp, 8
mov dword [ebp - 0x420], 0
mov dword [ebp - 0x41c], 0xf
mov byte [ebp - 0x430], 0
mov byte [ebp - 4], 0x38
mov ecx, dword [ebp - 0x2b0]
cmp ecx, 0xf
jbe 0x100166f1
mov edx, dword [ebp - 0x2c4]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x100166e7
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
jbe 0x100166e7
call dword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
push ecx
push edx
call fcn.1005f254
add esp, 8
mov eax, dword [0x10144a3c]
cmp dword [ebp - 0x44], 0xf
mov dword [ebp - 0x2b4], 0
mov dword [ebp - 0x2b0], 0xf
mov eax, dword [eax + 4]
mov byte [ebp - 0x2c4], 0
mov ecx, dword [eax + 0x1c]
lea eax, [ebp - 0x58]
cmova eax, dword [ebp - 0x58]
push eax
push 0
push ecx
call fcn.10014f30
mov byte [ebp - 4], 0x27
add esp, 0xc
mov ecx, dword [ebp - 0x74]
cmp ecx, 0xf
jbe 0x10016769
mov edx, dword [ebp - 0x88]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x1001675f
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x1001688c
push ecx
push edx
call fcn.1005f254
add esp, 8
mov byte [ebp - 4], 0x12
mov ecx, dword [ebp - 0x44]
cmp ecx, 0xf
jbe 0x100167a1
mov edx, dword [ebp - 0x58]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x10016797
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x1001688c
push ecx
push edx
call fcn.1005f254
add esp, 8
mov byte [ebp - 4], 0xf
mov ecx, dword [ebp - 0x5c]
mov dword [ebp - 0x48], 0
mov dword [ebp - 0x44], 0xf
mov byte [ebp - 0x58], 0
cmp ecx, 0xf
jbe 0x100167eb
mov edx, dword [ebp - 0x70]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x100167e1
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x1001688c
push ecx
push edx
call fcn.1005f254
add esp, 8
mov byte [ebp - 4], 0xc
mov ecx, dword [ebp - 0xa4]
cmp ecx, 0xf
jbe 0x10016825
mov edx, dword [ebp - 0xb8]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x1001681b
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x1001688c
push ecx
push edx
call fcn.1005f254
add esp, 8
mov byte [ebp - 4], 9
mov ecx, dword [ebp - 0x14]
cmp ecx, 0xf
jbe 0x10016859
mov edx, dword [ebp - 0x28]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x1001684f
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x1001688c
push ecx
push edx
call fcn.1005f254
add esp, 8
mov dword [ebp - 4], 0xffffffff
mov ecx, dword [ebp - 0x8c]
cmp ecx, 0xf
jbe 0x1001689c
mov edx, dword [ebp - 0xa0]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x10016892
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
jbe 0x10016892
call dword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
push ecx
push edx
call fcn.1005f254
add esp, 8
mov edi, dword [ebp - 0x26c]
mov eax, dword [edi]
mov ecx, edi
mov eax, dword [eax + 4]
call eax
mov ecx, eax
mov al, byte [ecx]
test al, al
jne 0x100168ba
mov esi, 0x811c9dc5
jmp 0x100168d0
movsx eax, al
inc ecx
xor eax, 0x811c9dc5
imul edx, eax, 0x1000193
call fcn.10014f80
mov esi, eax
mov edx, 0xf50c43ef
mov ecx, 0x10067c61
call fcn.10014f80
cmp esi, eax
jne 0x10016f54
mov eax, dword [0x10144a5c]
cmp byte [eax + 0x225], 0
je 0x10016f54
mov ecx, dword [0x10144a3c]
push 0
push str.userid
mov eax, dword [ecx + 0x20]
mov esi, dword [ecx + 0x14]
mov ecx, dword [ebp - 0x26c]
mov dword [ebp - 0x264], eax
mov eax, dword [eax]
mov edi, dword [eax + 0xc]
mov eax, dword [ecx]
mov eax, dword [eax + 0x18]
call eax
mov ecx, dword [esi]
push eax
mov edx, dword [ecx + 0x24]
mov ecx, esi
call edx
mov ecx, dword [ebp - 0x264]
push eax
call edi
mov edi, dword [ebp - 0x26c]
test eax, eax
je 0x10016f54
mov eax, dword [edi]
mov ecx, edi
push 0x10067484
push str.name
mov eax, dword [eax + 0x20]
call eax
mov edx, eax
mov dword [ebp - 0x264], eax
lea eax, [edx + 1]
mov cl, byte [edx]
inc edx
test cl, cl
jne 0x10016963
mov ecx, dword [0x10142284]
sub edx, eax
mov esi, 0x7fffffff
mov eax, esi
sub eax, ecx
cmp eax, edx
jb 0x10017fec
cmp dword [0x10142288], 0xf
mov eax, str._a0095FF
push edx
push dword [ebp - 0x264]
cmova eax, dword [str._a0095FF]
push ecx
push eax
push ecx
push dword [ebp - 0x264]
lea ecx, [ebp - 0x2c4]
call fcn.10018400
push str._aFFFFFF
lea edx, [ebp - 0x2c4]
mov dword [ebp - 4], 0x39
lea ecx, [ebp - 0x28]
call fcn.100181f0
add esp, 4
mov byte [ebp - 4], 0x3b
mov ecx, dword [ebp - 0x2b0]
cmp ecx, 0xf
jbe 0x10016a0e
mov edx, dword [ebp - 0x2c4]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x10016a04
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
jbe 0x10016a04
call dword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
push ecx
push edx
call fcn.1005f254
add esp, 8
mov ecx, dword [0x10142254]
sub esi, ecx
mov dword [ebp - 0x2b4], 0
mov dword [ebp - 0x2b0], 0xf
mov byte [ebp - 0x2c4], 0
cmp esi, 1
jb 0x10017ff1
cmp dword [0x10142258], 0xf
mov eax, str._a404040
push 1
cmova eax, dword [str._a404040]
push 0x10067d20
push ecx
push eax
push ecx
push dword [ebp - 0x264]
lea ecx, [ebp - 0x4d8]
call fcn.10018400
push str._a7FFFAF
lea edx, [ebp - 0x4d8]
mov byte [ebp - 4], 0x3c
lea ecx, [ebp - 0x3e8]
call fcn.100181f0
mov ecx, eax
add esp, 4
mov dword [ebp - 0x264], ecx
mov byte [ebp - 4], 0x3d
mov esi, dword [ecx + 0x14]
mov eax, esi
mov edx, dword [ecx + 0x10]
sub eax, edx
cmp eax, 7
jb 0x10016ace
lea eax, [edx + 7]
mov dword [ecx + 0x10], eax
mov eax, ecx
cmp esi, 0xf
jbe 0x10016aaf
mov eax, dword [ecx]
push 7
lea esi, [eax + edx]
push str.Omicron
push esi
call sub.VCRUNTIME140.dll_memmove
mov eax, dword [ebp - 0x264]
add esp, 0xc
mov byte [esi + 7], 0
jmp 0x10016ae2
push 7
push str.Omicron
push dword [ebp - 0x264]
push 7
call fcn.100182a0
xorps xmm0, xmm0
mov dword [ebp - 0x29c], 0
movups xmmword [ebp - 0x2ac], xmm0
mov dword [ebp - 0x298], 0
movups xmm0, xmmword [eax]
movups xmmword [ebp - 0x2ac], xmm0
movq xmm0, qword [eax + 0x10]
movq qword [ebp - 0x29c], xmm0
mov dword [eax + 0x10], 0
lea edx, [ebp - 0x2ac]
mov dword [eax + 0x14], 0xf
lea ecx, [ebp - 0x490]
mov byte [eax], 0
push str._a404040
mov byte [ebp - 4], 0x3e
call fcn.100181f0
add esp, 4
mov ecx, eax
mov byte [ebp - 4], 0x3f
mov esi, dword [ecx + 0x14]
mov eax, esi
mov edx, dword [ecx + 0x10]
sub eax, edx
cmp eax, 2
jb 0x10016b79
lea eax, [edx + 2]
mov dword [ecx + 0x10], eax
mov eax, ecx
cmp esi, 0xf
jbe 0x10016b69
mov eax, dword [ecx]
mov esi, 0x205d
mov word [eax + edx], si
mov byte [eax + edx + 2], 0
jmp 0x10016b8f
push 2
push 0x10067d0c
push dword [ebp - 0x264]
push 2
call fcn.100182a0
mov ecx, eax
xorps xmm0, xmm0
mov dword [ebp - 0x378], 0
movups xmmword [ebp - 0x388], xmm0
mov dword [ebp - 0x374], 0
movups xmm0, xmmword [ecx]
movups xmmword [ebp - 0x388], xmm0
movq xmm0, qword [ecx + 0x10]
movq qword [ebp - 0x378], xmm0
mov dword [ecx + 0x10], 0
lea eax, [ebp - 0x28]
mov dword [ecx + 0x14], 0xf
lea edx, [ebp - 0x388]
mov byte [ecx], 0
lea ecx, [ebp - 0x448]
push eax
mov byte [ebp - 4], 0x40
call fcn.100181f0
add esp, 4
mov esi, eax
mov byte [ebp - 4], 0x41
mov edx, dword [esi + 0x14]
mov eax, edx
mov ecx, dword [esi + 0x10]
sub eax, ecx
mov dword [ebp - 0x264], ecx
cmp eax, 0xa
jb 0x10016c4c
mov dword [ebp - 0x270], esi
lea eax, [ecx + 0xa]
mov dword [esi + 0x10], eax
mov eax, esi
cmp edx, 0xf
jbe 0x10016c27
mov eax, dword [esi]
mov dword [ebp - 0x270], eax
push 0xa
add eax, ecx
push str._has_left.
push eax
call sub.VCRUNTIME140.dll_memmove
mov eax, dword [ebp - 0x264]
add esp, 0xc
mov ecx, dword [ebp - 0x270]
mov byte [ecx + eax + 0xa], 0
jmp 0x10016c64
push 0xa
push str._has_left.
push dword [ebp - 0x264]
mov ecx, esi
push 0xa
call fcn.100182a0
mov esi, eax
xorps xmm0, xmm0
mov dword [ebp - 0x30], 0
movups xmmword [ebp - 0x40], xmm0
mov dword [ebp - 0x2c], 0
movups xmm0, xmmword [esi]
movups xmmword [ebp - 0x40], xmm0
movq xmm0, qword [esi + 0x10]
movq qword [ebp - 0x30], xmm0
mov byte [ebp - 4], 0x43
mov dword [esi + 0x10], 0
mov dword [esi + 0x14], 0xf
mov byte [esi], 0
mov ecx, dword [ebp - 0x434]
cmp ecx, 0xf
jbe 0x10016cd9
mov edx, dword [ebp - 0x448]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x10016ccf
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x10016e84
push ecx
push edx
call fcn.1005f254
add esp, 8
mov dword [ebp - 0x438], 0
mov dword [ebp - 0x434], 0xf
mov byte [ebp - 0x448], 0
mov byte [ebp - 4], 0x44
mov ecx, dword [ebp - 0x374]
cmp ecx, 0xf
jbe 0x10016d32
mov edx, dword [ebp - 0x388]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x10016d28
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x10016e84
push ecx
push edx
call fcn.1005f254
add esp, 8
mov dword [ebp - 0x378], 0
mov dword [ebp - 0x374], 0xf
mov byte [ebp - 0x388], 0
mov byte [ebp - 4], 0x45
mov ecx, dword [ebp - 0x47c]
cmp ecx, 0xf
jbe 0x10016d8b
mov edx, dword [ebp - 0x490]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x10016d81
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x10016e84
push ecx
push edx
call fcn.1005f254
add esp, 8
mov dword [ebp - 0x480], 0
mov dword [ebp - 0x47c], 0xf
mov byte [ebp - 0x490], 0
mov byte [ebp - 4], 0x46
mov ecx, dword [ebp - 0x298]
cmp ecx, 0xf
jbe 0x10016de4
mov edx, dword [ebp - 0x2ac]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x10016dda
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x10016e84
push ecx
push edx
call fcn.1005f254
add esp, 8
mov dword [ebp - 0x29c], 0
mov dword [ebp - 0x298], 0xf
mov byte [ebp - 0x2ac], 0
mov byte [ebp - 4], 0x47
mov ecx, dword [ebp - 0x3d4]
cmp ecx, 0xf
jbe 0x10016e39
mov edx, dword [ebp - 0x3e8]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x10016e2f
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x10016e84
push ecx
push edx
call fcn.1005f254
add esp, 8
mov dword [ebp - 0x3d8], 0
mov dword [ebp - 0x3d4], 0xf
mov byte [ebp - 0x3e8], 0
mov byte [ebp - 4], 0x48
mov ecx, dword [ebp - 0x4c4]
cmp ecx, 0xf
jbe 0x10016e94
mov edx, dword [ebp - 0x4d8]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x10016e8a
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
jbe 0x10016e8a
call dword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
push ecx
push edx
call fcn.1005f254
add esp, 8
mov eax, dword [0x10144a3c]
cmp dword [ebp - 0x2c], 0xf
mov dword [ebp - 0x4c8], 0
mov dword [ebp - 0x4c4], 0xf
mov eax, dword [eax + 4]
mov byte [ebp - 0x4d8], 0
mov ecx, dword [eax + 0x1c]
lea eax, [ebp - 0x40]
cmova eax, dword [ebp - 0x40]
push eax
push 0
push ecx
call fcn.10014f30
mov byte [ebp - 4], 0x3b
add esp, 0xc
mov ecx, dword [ebp - 0x2c]
cmp ecx, 0xf
jbe 0x10016f05
mov edx, dword [ebp - 0x40]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x10016efb
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x10016f44
push ecx
push edx
call fcn.1005f254
add esp, 8
mov dword [ebp - 4], 0xffffffff
mov ecx, dword [ebp - 0x14]
mov dword [ebp - 0x30], 0
mov dword [ebp - 0x2c], 0xf
mov byte [ebp - 0x40], 0
cmp ecx, 0xf
jbe 0x10016f54
mov edx, dword [ebp - 0x28]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x10016f4a
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
jbe 0x10016f4a
call dword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
push ecx
push edx
call fcn.1005f254
add esp, 8
mov edx, 0xf50c43ef
mov ecx, 0x10067c75
call fcn.10014f80
mov edx, dword [edi]
mov ecx, edi
mov esi, eax
mov edx, dword [edx + 4]
call edx
mov ecx, eax
mov dl, byte [ecx]
test dl, dl
jne 0x10016f7d
mov eax, 0x811c9dc5
jmp 0x10016f91
movsx eax, dl
inc ecx
xor eax, 0x811c9dc5
imul edx, eax, 0x1000193
call fcn.10014f80
cmp eax, esi
jne 0x100175dd
mov eax, dword [0x10144a5c]
cmp byte [eax + 0x226], 0
je 0x100175dd
mov ecx, dword [0x10144a3c]
push 0
push str.userid
mov eax, dword [ecx + 0x20]
mov esi, dword [ecx + 0x14]
mov ecx, dword [ebp - 0x26c]
mov dword [ebp - 0x264], eax
mov eax, dword [eax]
mov edi, dword [eax + 0xc]
mov eax, dword [ecx]
mov eax, dword [eax + 0x18]
call eax
mov ecx, dword [esi]
push eax
mov edx, dword [ecx + 0x24]
mov ecx, esi
call edx
mov ecx, dword [ebp - 0x264]
push eax
call edi
mov edi, eax
test edi, edi
je 0x100175d7
mov ecx, edi
call fcn.10003510
push 0x84
mov esi, eax
lea eax, [ebp - 0x25c]
push 0
push eax
call sub.VCRUNTIME140.dll_memset
mov ecx, dword [0x10144a3c]
lea eax, [ebp - 0x25c]
add esp, 0xc
mov ecx, dword [ecx + 0x14]
push eax
push esi
call fcn.100034f0
mov ecx, dword [0x10144a3c]
mov ecx, dword [ecx + 0x74]
call fcn.10003520
mov ecx, edi
mov esi, eax
call fcn.10003520
mov edx, str._aFFFFFF
mov ecx, dword [eax]
cmp ecx, dword [esi]
je 0x10017096
push str.ENEMY
lea ecx, [ebp - 0x520]
call fcn.100180e0
mov dword [ebp - 4], 0x49
mov edx, eax
mov ecx, dword [ebp - 0x260]
or ecx, 0x10
mov dword [ebp - 0x260], ecx
mov dword [ebp - 0x268], ecx
lea ecx, [ebp - 0x538]
push str._a404040
call fcn.100181f0
add esp, 8
mov edx, dword [ebp - 0x260]
or edx, 0x20
jmp 0x100170e3
push str.TEAM
lea ecx, [ebp - 0x550]
call fcn.100180e0
mov dword [ebp - 4], 0x4b
mov edx, eax
mov ecx, dword [ebp - 0x260]
or ecx, 0x40
mov dword [ebp - 0x260], ecx
mov dword [ebp - 0x268], ecx
lea ecx, [ebp - 0x478]
push str._a404040
call fcn.100181f0
mov edx, dword [ebp - 0x260]
add esp, 8
or edx, 0x80
push eax
lea ecx, [ebp - 0x88]
mov dword [ebp - 0x268], edx
mov dword [ebp - 0x260], edx
call fcn.10018090
mov dword [ebp - 4], 0x4c
test dl, dl
jns 0x10017129
and edx, 0xffffff7f
lea ecx, [ebp - 0x478]
mov dword [ebp - 0x260], edx
mov dword [ebp - 0x268], edx
call fcn.100030a0
mov edx, dword [ebp - 0x260]
test dl, 0x40
je 0x1001714e
and edx, 0xffffffbf
lea ecx, [ebp - 0x550]
mov dword [ebp - 0x260], edx
mov dword [ebp - 0x268], edx
call fcn.100030a0
mov edx, dword [ebp - 0x260]
test dl, 0x20
je 0x10017173
and edx, 0xffffffdf
lea ecx, [ebp - 0x538]
mov dword [ebp - 0x260], edx
mov dword [ebp - 0x268], edx
call fcn.100030a0
mov edx, dword [ebp - 0x260]
mov byte [ebp - 4], 0x4f
test dl, 0x10
je 0x10017196
and edx, 0xffffffef
lea ecx, [ebp - 0x520]
mov dword [ebp - 0x260], edx
mov dword [ebp - 0x268], edx
call fcn.100030a0
lea eax, [ebp - 0x25c]
mov edx, str._a0095FF
push eax
lea ecx, [ebp - 0x28]
call fcn.100180e0
push str._aFFFFFF
mov edx, eax
mov byte [ebp - 4], 0x50
lea ecx, [ebp - 0x70]
call fcn.100181f0
add esp, 8
lea ecx, [ebp - 0x28]
mov byte [ebp - 4], 0x52
call fcn.100030a0
mov edi, dword [ebp - 0x26c]
mov ecx, edi
push 0
push str.class
mov eax, dword [edi]
mov eax, dword [eax + 0x18]
call eax
mov ecx, eax
call fcn.10014fa0
push eax
mov edx, str._a0095FF
lea ecx, [ebp - 0x478]
call fcn.100180e0
push str._aFFFFFF
mov edx, eax
mov byte [ebp - 4], 0x53
lea ecx, [ebp - 0x28]
call fcn.100181f0
add esp, 8
lea ecx, [ebp - 0x478]
mov byte [ebp - 4], 0x55
call fcn.100030a0
push 0x10067d20
mov edx, str._a404040
lea ecx, [ebp - 0x3b8]
call fcn.100180e0
push str._a7FFFAF
mov edx, eax
mov byte [ebp - 4], 0x56
lea ecx, [ebp - 0x3d0]
call fcn.100181f0
push str.Omicron
mov edx, eax
mov byte [ebp - 4], 0x57
lea ecx, [ebp - 0x400]
call fcn.10018140
push str._a404040
mov edx, eax
mov byte [ebp - 4], 0x58
lea ecx, [ebp - 0x4a8]
call fcn.100181f0
push str.____
mov edx, eax
mov byte [ebp - 4], 0x59
lea ecx, [ebp - 0x460]
call fcn.10018140
lea ecx, [ebp - 0x88]
mov byte [ebp - 4], 0x5a
push ecx
mov edx, eax
lea ecx, [ebp - 0x598]
call fcn.100181f0
add esp, 0x18
mov ecx, eax
mov byte [ebp - 4], 0x5b
mov esi, dword [ecx + 0x14]
mov eax, esi
mov edx, dword [ecx + 0x10]
sub eax, edx
cmp eax, 2
jb 0x100172db
lea eax, [edx + 2]
mov dword [ecx + 0x10], eax
mov eax, ecx
cmp esi, 0xf
jbe 0x100172cb
mov eax, dword [ecx]
mov esi, 0x205d
mov word [eax + edx], si
mov byte [eax + edx + 2], 0
jmp 0x100172f1
push 2
push 0x10067d0c
push dword [ebp - 0x264]
push 2
call fcn.100182a0
mov ecx, eax
xorps xmm0, xmm0
mov dword [ebp - 0x4b0], 0
movups xmmword [ebp - 0x4c0], xmm0
mov dword [ebp - 0x4ac], 0
movups xmm0, xmmword [ecx]
movups xmmword [ebp - 0x4c0], xmm0
movq xmm0, qword [ecx + 0x10]
movq qword [ebp - 0x4b0], xmm0
mov dword [ecx + 0x10], 0
lea eax, [ebp - 0x70]
mov dword [ecx + 0x14], 0xf
lea edx, [ebp - 0x4c0]
mov byte [ecx], 0
lea ecx, [ebp - 0x580]
push eax
mov byte [ebp - 4], 0x5c
call fcn.100181f0
mov ecx, eax
add esp, 4
mov dword [ebp - 0x264], ecx
mov byte [ebp - 4], 0x5d
mov esi, dword [ecx + 0x14]
mov eax, esi
mov edx, dword [ecx + 0x10]
sub eax, edx
cmp eax, 0x12
jb 0x1001739c
lea eax, [edx + 0x12]
mov dword [ecx + 0x10], eax
mov eax, ecx
cmp esi, 0xf
jbe 0x1001737d
mov eax, dword [ecx]
push 0x12
lea esi, [eax + edx]
push str._changed_class_to
push esi
call sub.VCRUNTIME140.dll_memmove
mov eax, dword [ebp - 0x264]
add esp, 0xc
mov byte [esi + 0x12], 0
jmp 0x100173b0
push 0x12
push str._changed_class_to
push dword [ebp - 0x264]
push 0x12
call fcn.100182a0
xorps xmm0, xmm0
mov dword [ebp - 0x280], 0
movups xmmword [ebp - 0x290], xmm0
mov dword [ebp - 0x27c], 0
movups xmm0, xmmword [eax]
movups xmmword [ebp - 0x290], xmm0
movq xmm0, qword [eax + 0x10]
movq qword [ebp - 0x280], xmm0
mov dword [eax + 0x10], 0
lea edx, [ebp - 0x290]
mov dword [eax + 0x14], 0xf
lea ecx, [ebp - 0x3a0]
mov byte [eax], 0
lea eax, [ebp - 0x28]
push eax
mov byte [ebp - 4], 0x5e
call fcn.100181f0
add esp, 4
mov ecx, eax
mov byte [ebp - 4], 0x5f
mov esi, dword [ecx + 0x14]
mov eax, esi
mov edx, dword [ecx + 0x10]
sub eax, edx
cmp eax, 1
jb 0x1001743e
lea eax, [edx + 1]
mov dword [ecx + 0x10], eax
mov eax, ecx
cmp esi, 0xf
jbe 0x10017436
mov eax, dword [ecx]
mov word [eax + edx], 0x2e
jmp 0x10017454
push 1
push 0x10067c38
push dword [ebp - 0x264]
push 1
call fcn.100182a0
mov ecx, eax
xorps xmm0, xmm0
mov dword [ebp - 0xc0], 0
movups xmmword [ebp - 0xd0], xmm0
mov dword [ebp - 0xbc], 0
movups xmm0, xmmword [ecx]
movups xmmword [ebp - 0xd0], xmm0
movq xmm0, qword [ecx + 0x10]
movq qword [ebp - 0xc0], xmm0
mov byte [ebp - 4], 0x61
mov dword [ecx + 0x10], 0
mov dword [ecx + 0x14], 0xf
mov byte [ecx], 0
mov ecx, dword [ebp - 0x38c]
cmp ecx, 0xf
jbe 0x100174da
mov edx, dword [ebp - 0x3a0]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x100174d0
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
jbe 0x100174d0
call dword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
push ecx
push edx
call fcn.1005f254
add esp, 8
mov dword [ebp - 0x390], 0
mov dword [ebp - 0x38c], 0xf
mov byte [ebp - 0x3a0], 0
mov eax, dword [ebp - 0x27c]
cmp eax, 0xf
jbe 0x1001750f
mov edx, dword [ebp - 0x290]
push eax
call fcn.10003140
add esp, 4
mov dword [ebp - 0x280], 0
mov dword [ebp - 0x27c], 0xf
mov byte [ebp - 0x290], 0
lea ecx, [ebp - 0x580]
call fcn.100030a0
lea ecx, [ebp - 0x4c0]
call fcn.100030a0
lea ecx, [ebp - 0x598]
call fcn.100030a0
lea ecx, [ebp - 0x460]
call fcn.100030a0
lea ecx, [ebp - 0x4a8]
call fcn.100030a0
lea ecx, [ebp - 0x400]
call fcn.100030a0
lea ecx, [ebp - 0x3d0]
call fcn.100030a0
lea ecx, [ebp - 0x3b8]
mov byte [ebp - 4], 0x6a
call fcn.100030a0
mov eax, dword [0x10144a3c]
lea ecx, [ebp - 0xd0]
mov eax, dword [eax + 4]
mov edx, dword [eax + 0x1c]
call fcn.1000bee0
push eax
push 0
push edx
call fcn.10014f30
add esp, 0xc
lea ecx, [ebp - 0xd0]
call fcn.100030a0
lea ecx, [ebp - 0x28]
call fcn.100030a0
lea ecx, [ebp - 0x70]
call fcn.100030a0
lea ecx, [ebp - 0x88]
mov dword [ebp - 4], 0xffffffff
call fcn.100030a0
jmp 0x100175dd
mov edi, dword [ebp - 0x26c]
mov eax, dword [edi]
mov ecx, edi
mov eax, dword [eax + 4]
call eax
mov ecx, eax
mov al, byte [ecx]
test al, al
jne 0x100175f5
mov esi, 0x811c9dc5
jmp 0x1001760b
movsx eax, al
inc ecx
xor eax, 0x811c9dc5
imul edx, eax, 0x1000193
call fcn.10014f80
mov esi, eax
mov edx, 0xf50c43ef
mov ecx, 0x10067c89
call fcn.10014f80
cmp esi, eax
jne 0x10017a5e
mov eax, dword [0x10144a5c]
cmp byte [eax + 0x227], 0
je 0x10017a5e
mov ecx, dword [0x10144a3c]
push 0
push str.userid
mov eax, dword [ecx + 0x20]
mov esi, dword [ecx + 0x14]
mov ecx, dword [ebp - 0x26c]
mov dword [ebp - 0x264], eax
mov eax, dword [eax]
mov edi, dword [eax + 0xc]
mov eax, dword [ecx]
mov eax, dword [eax + 0x18]
call eax
mov ecx, dword [esi]
push eax
mov edx, dword [ecx + 0x24]
mov ecx, esi
call edx
mov ecx, dword [ebp - 0x264]
push eax
call edi
mov edi, dword [ebp - 0x26c]
mov dword [ebp - 0x264], eax
test eax, eax
je 0x10017a5e
mov ecx, dword [edi]
push 0x10067484
push str.oldname
mov eax, dword [ecx + 0x20]
mov ecx, edi
call eax
push eax
mov edx, str._a0095FF
lea ecx, [ebp - 0x3b8]
call fcn.100180e0
push str._aFFFFFF
mov edx, eax
mov dword [ebp - 4], 0x6b
lea ecx, [ebp - 0xa0]
call fcn.100181f0
add esp, 8
lea ecx, [ebp - 0x3b8]
mov byte [ebp - 4], 0x6d
call fcn.100030a0
mov eax, dword [edi]
mov ecx, edi
push 0x10067484
push str.newname
mov eax, dword [eax + 0x20]
call eax
push eax
mov edx, str._a0095FF
lea ecx, [ebp - 0x3d0]
call fcn.100180e0
push str._aFFFFFF
mov edx, eax
mov byte [ebp - 4], 0x6e
lea ecx, [ebp - 0x88]
call fcn.100181f0
add esp, 8
lea ecx, [ebp - 0x3d0]
mov byte [ebp - 4], 0x70
call fcn.100030a0
mov ecx, dword [0x10144a3c]
mov ecx, dword [ecx + 0x74]
call fcn.10003520
mov ecx, dword [ebp - 0x264]
mov esi, eax
call fcn.10003520
mov edx, str._aFFFFFF
mov ecx, dword [eax]
cmp ecx, dword [esi]
je 0x10017796
push str.ENEMY
lea ecx, [ebp - 0x460]
call fcn.100180e0
mov byte [ebp - 4], 0x71
mov edx, eax
mov ecx, dword [ebp - 0x260]
or ecx, 0x100
mov dword [ebp - 0x260], ecx
mov dword [ebp - 0x268], ecx
lea ecx, [ebp - 0x4a8]
push str._a404040
call fcn.100181f0
add esp, 8
mov edx, dword [ebp - 0x260]
or edx, 0x200
jmp 0x100177e6
push str.TEAM
lea ecx, [ebp - 0x400]
call fcn.100180e0
mov dword [ebp - 4], 0x73
mov edx, eax
mov ecx, dword [ebp - 0x260]
or ecx, 0x400
mov dword [ebp - 0x260], ecx
mov dword [ebp - 0x268], ecx
lea ecx, [ebp - 0x3b8]
push str._a404040
call fcn.100181f0
mov edx, dword [ebp - 0x260]
add esp, 8
or edx, 0x800
push eax
lea ecx, [ebp - 0x70]
mov dword [ebp - 0x268], edx
mov dword [ebp - 0x260], edx
call fcn.10018090
mov dword [ebp - 4], 0x74
test edx, 0x800
je 0x1001782d
and edx, 0xfffff7ff
lea ecx, [ebp - 0x3b8]
mov dword [ebp - 0x260], edx
mov dword [ebp - 0x268], edx
call fcn.100030a0
mov edx, dword [ebp - 0x260]
test edx, 0x400
je 0x10017858
and edx, 0xfffffbff
lea ecx, [ebp - 0x400]
mov dword [ebp - 0x260], edx
mov dword [ebp - 0x268], edx
call fcn.100030a0
mov edx, dword [ebp - 0x260]
test edx, 0x200
je 0x10017883
and edx, 0xfffffdff
lea ecx, [ebp - 0x4a8]
mov dword [ebp - 0x260], edx
mov dword [ebp - 0x268], edx
call fcn.100030a0
mov edx, dword [ebp - 0x260]
mov byte [ebp - 4], 0x77
test edx, 0x100
je 0x100178ac
and edx, 0xfffffeff
lea ecx, [ebp - 0x460]
mov dword [ebp - 0x260], edx
mov dword [ebp - 0x268], edx
call fcn.100030a0
push 0x10067d20
mov edx, str._a404040
lea ecx, [ebp - 0x3e8]
call fcn.100180e0
push str._a7FFFAF
mov edx, eax
mov byte [ebp - 4], 0x78
lea ecx, [ebp - 0x3a0]
call fcn.100181f0
push str.Omicron
mov edx, eax
mov byte [ebp - 4], 0x79
lea ecx, [ebp - 0xb8]
call fcn.10018140
push str._a404040
mov edx, eax
mov byte [ebp - 4], 0x7a
lea ecx, [ebp - 0x520]
call fcn.100181f0
push str.____
mov edx, eax
mov byte [ebp - 4], 0x7b
lea ecx, [ebp - 0x538]
call fcn.10018140
lea ecx, [ebp - 0x70]
mov byte [ebp - 4], 0x7c
push ecx
mov edx, eax
lea ecx, [ebp - 0x550]
call fcn.100181f0
push 0x10067d0c
mov edx, eax
mov byte [ebp - 4], 0x7d
lea ecx, [ebp - 0x478]
call fcn.10018140
lea ecx, [ebp - 0xa0]
mov byte [ebp - 4], 0x7e
push ecx
mov edx, eax
lea ecx, [ebp - 0x580]
call fcn.100181f0
push str._changed_name_to
mov edx, eax
mov byte [ebp - 4], 0x7f
lea ecx, [ebp - 0x598]
call fcn.10018140
lea ecx, [ebp - 0x88]
mov byte [ebp - 4], 0x80
push ecx
mov edx, eax
lea ecx, [ebp - 0x3d0]
call fcn.100181f0
push 0x10067c38
mov edx, eax
mov byte [ebp - 4], 0x81
lea ecx, [ebp - 0x28]
call fcn.10018140
add esp, 0x2c
lea ecx, [ebp - 0x3d0]
call fcn.100030a0
lea ecx, [ebp - 0x598]
call fcn.100030a0
lea ecx, [ebp - 0x580]
call fcn.100030a0
lea ecx, [ebp - 0x478]
call fcn.100030a0
lea ecx, [ebp - 0x550]
call fcn.100030a0
lea ecx, [ebp - 0x538]
call fcn.100030a0
lea ecx, [ebp - 0x520]
call fcn.100030a0
lea ecx, [ebp - 0xb8]
call fcn.100030a0
lea ecx, [ebp - 0x3a0]
call fcn.100030a0
lea ecx, [ebp - 0x3e8]
mov byte [ebp - 4], 0x8c
call fcn.100030a0
mov eax, dword [0x10144a3c]
lea ecx, [ebp - 0x28]
mov eax, dword [eax + 4]
mov edx, dword [eax + 0x1c]
call fcn.1000bee0
push eax
push 0
push edx
call fcn.10014f30
add esp, 0xc
lea ecx, [ebp - 0x28]
call fcn.100030a0
lea ecx, [ebp - 0x70]
call fcn.100030a0
lea ecx, [ebp - 0x88]
call fcn.100030a0
lea ecx, [ebp - 0xa0]
mov dword [ebp - 4], 0xffffffff
call fcn.100030a0
mov edx, 0xf30c40c9
mov ecx, 0x10067c9d
call fcn.10014f80
mov edx, dword [edi]
mov ecx, edi
mov esi, eax
mov edx, dword [edx + 4]
call edx
mov ecx, eax
mov dl, byte [ecx]
test dl, dl
jne 0x10017a87
mov eax, 0x811c9dc5
jmp 0x10017a9b
movsx eax, dl
inc ecx
xor eax, 0x811c9dc5
imul edx, eax, 0x1000193
call fcn.10014f80
cmp eax, esi
jne 0x10017fb6
mov eax, dword [0x10144a5c]
cmp byte [eax + 0x228], 0
je 0x10017fb6
mov eax, dword [0x10144a3c]
mov ecx, dword [ebp - 0x26c]
push 0
push str.entityid
mov edi, dword [eax + 0x20]
mov eax, dword [edi]
mov esi, dword [eax + 0xc]
mov eax, dword [ecx]
mov eax, dword [eax + 0x18]
call eax
push eax
mov ecx, edi
call esi
mov edi, eax
test edi, edi
je 0x10017fb6
mov ecx, dword [ebp - 0x26c]
push 0
push str.vote_option
mov eax, dword [ecx]
mov eax, dword [eax + 0x18]
call eax
mov ecx, edi
mov dword [ebp - 0x264], eax
call fcn.10003510
push 0x84
mov esi, eax
lea eax, [ebp - 0x1d8]
push 0
push eax
call sub.VCRUNTIME140.dll_memset
mov ecx, dword [0x10144a3c]
lea eax, [ebp - 0x1d8]
add esp, 0xc
mov ecx, dword [ecx + 0x14]
push eax
push esi
call fcn.100034f0
mov ecx, dword [0x10144a3c]
mov ecx, dword [ecx + 0x74]
call fcn.10003520
mov ecx, edi
mov esi, eax
call fcn.10003520
mov edx, str._aFFFFFF
mov ecx, dword [eax]
cmp ecx, dword [esi]
je 0x10017ba8
push str.ENEMY
lea ecx, [ebp - 0x4a8]
call fcn.100180e0
mov dword [ebp - 4], 0x8d
mov edx, eax
mov ecx, dword [ebp - 0x260]
or ecx, 0x1000
mov dword [ebp - 0x260], ecx
mov dword [ebp - 0x268], ecx
lea ecx, [ebp - 0x400]
push str._a404040
call fcn.100181f0
add esp, 8
mov edx, dword [ebp - 0x260]
or edx, 0x2000
jmp 0x10017bf8
push str.TEAM
lea ecx, [ebp - 0x3d0]
call fcn.100180e0
mov dword [ebp - 4], 0x8f
mov edx, eax
mov ecx, dword [ebp - 0x260]
or ecx, 0x4000
mov dword [ebp - 0x260], ecx
mov dword [ebp - 0x268], ecx
lea ecx, [ebp - 0x3b8]
push str._a404040
call fcn.100181f0
mov edx, dword [ebp - 0x260]
add esp, 8
or edx, 0x8000
push eax
lea ecx, [ebp - 0xa0]
mov dword [ebp - 0x268], edx
mov dword [ebp - 0x260], edx
call fcn.10018090
mov dword [ebp - 4], 0x90
test edx, 0x8000
je 0x10017c42
and edx, 0xffff7fff
lea ecx, [ebp - 0x3b8]
mov dword [ebp - 0x260], edx
mov dword [ebp - 0x268], edx
call fcn.100030a0
mov edx, dword [ebp - 0x260]
test edx, 0x4000
je 0x10017c6d
and edx, 0xffffbfff
lea ecx, [ebp - 0x3d0]
mov dword [ebp - 0x260], edx
mov dword [ebp - 0x268], edx
call fcn.100030a0
mov edx, dword [ebp - 0x260]
test edx, 0x2000
je 0x10017c98
and edx, 0xffffdfff
lea ecx, [ebp - 0x400]
mov dword [ebp - 0x260], edx
mov dword [ebp - 0x268], edx
call fcn.100030a0
mov edx, dword [ebp - 0x260]
mov byte [ebp - 4], 0x93
test edx, 0x1000
je 0x10017cc1
and edx, 0xffffefff
lea ecx, [ebp - 0x4a8]
mov dword [ebp - 0x260], edx
mov dword [ebp - 0x268], edx
call fcn.100030a0
lea eax, [ebp - 0x1d8]
mov edx, str._a0095FF
push eax
lea ecx, [ebp - 0x460]
call fcn.100180e0
push str._aFFFFFF
mov edx, eax
mov byte [ebp - 4], 0x94
lea ecx, [ebp - 0x88]
call fcn.100181f0
add esp, 8
lea ecx, [ebp - 0x460]
mov byte [ebp - 4], 0x96
call fcn.100030a0
cmp dword [ebp - 0x264], 0
jne 0x10017d51
push 0x10067da0
mov edx, str._a3AFF4D
lea ecx, [ebp - 0x4a8]
call fcn.100180e0
mov byte [ebp - 4], 0x97
lea ecx, [ebp - 0x400]
mov esi, dword [ebp - 0x260]
mov edx, eax
or esi, 0x10000
push str._aFFFFFF
mov dword [ebp - 0x268], esi
call fcn.100181f0
add esp, 8
or esi, 0x20000
jmp 0x10017d9a
push 0x10067da4
mov edx, 0x101422a4
lea ecx, [ebp - 0x3d0]
call fcn.100180e0
mov dword [ebp - 4], 0x99
lea ecx, [ebp - 0x3b8]
mov esi, dword [ebp - 0x260]
mov edx, eax
or esi, 0x40000
push str._aFFFFFF
mov dword [ebp - 0x268], esi
call fcn.100181f0
add esp, 8
or esi, 0x80000
push eax
lea ecx, [ebp - 0x28]
call fcn.10018090
mov dword [ebp - 4], 0x9a
test esi, 0x80000
je 0x10017dc3
lea ecx, [ebp - 0x3b8]
and esi, 0xfff7ffff
call fcn.100030a0
test esi, 0x40000
je 0x10017ddc
lea ecx, [ebp - 0x3d0]
and esi, 0xfffbffff
call fcn.100030a0
test esi, 0x20000
je 0x10017df5
lea ecx, [ebp - 0x400]
and esi, 0xfffdffff
call fcn.100030a0
mov byte [ebp - 4], 0x9d
test esi, 0x10000
je 0x10017e0c
lea ecx, [ebp - 0x4a8]
call fcn.100030a0
push 0x10067d20
mov edx, str._a404040
lea ecx, [ebp - 0x418]
call fcn.100180e0
push str._a7FFFAF
mov edx, eax
mov byte [ebp - 4], 0x9e
lea ecx, [ebp - 0x430]
call fcn.100181f0
push str.Omicron
mov edx, eax
mov byte [ebp - 4], 0x9f
lea ecx, [ebp - 0x448]
call fcn.10018140
push str._a404040
mov edx, eax
mov byte [ebp - 4], 0xa0
lea ecx, [ebp - 0x490]
call fcn.100181f0
push str.____
mov edx, eax
mov byte [ebp - 4], 0xa1
lea ecx, [ebp - 0x3e8]
call fcn.10018140
lea ecx, [ebp - 0xa0]
mov byte [ebp - 4], 0xa2
push ecx
mov edx, eax
lea ecx, [ebp - 0x3a0]
call fcn.100181f0
push 0x10067d0c
mov edx, eax
mov byte [ebp - 4], 0xa3
lea ecx, [ebp - 0xb8]
call fcn.10018140
lea ecx, [ebp - 0x88]
mov byte [ebp - 4], 0xa4
push ecx
mov edx, eax
lea ecx, [ebp - 0x580]
call fcn.100181f0
push str._voted
mov edx, eax
mov byte [ebp - 4], 0xa5
lea ecx, [ebp - 0x598]
call fcn.10018140
lea ecx, [ebp - 0x28]
mov byte [ebp - 4], 0xa6
push ecx
mov edx, eax
lea ecx, [ebp - 0x460]
call fcn.100181f0
push 0x10067c38
mov edx, eax
mov byte [ebp - 4], 0xa7
lea ecx, [ebp - 0x70]
call fcn.10018140
add esp, 0x2c
lea ecx, [ebp - 0x460]
call fcn.100030a0
lea ecx, [ebp - 0x598]
call fcn.100030a0
lea ecx, [ebp - 0x580]
call fcn.100030a0
lea ecx, [ebp - 0xb8]
call fcn.100030a0
lea ecx, [ebp - 0x3a0]
call fcn.100030a0
lea ecx, [ebp - 0x3e8]
call fcn.100030a0
lea ecx, [ebp - 0x490]
call fcn.100030a0
lea ecx, [ebp - 0x448]
call fcn.100030a0
lea ecx, [ebp - 0x430]
call fcn.100030a0
lea ecx, [ebp - 0x418]
mov byte [ebp - 4], 0xb2
call fcn.100030a0
lea ecx, [ebp - 0x70]
call fcn.1000bee0
push eax
mov eax, dword [0x10144a3c]
push 0
mov eax, dword [eax + 4]
push dword [eax + 0x1c]
call fcn.10014f30
add esp, 0xc
lea ecx, [ebp - 0x70]
call fcn.100030a0
lea ecx, [ebp - 0x28]
call fcn.100030a0
lea ecx, [ebp - 0x88]
call fcn.100030a0
lea ecx, [ebp - 0xa0]
call fcn.100030a0
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
mov ecx, dword [ebp - 0x10]
xor ecx, ebp
call fcn.1005ee17
mov esp, ebp
pop ebp
ret 4
call fcn.10001f40
call fcn.10001f40
call fcn.10001f40
call fcn.10001f40
call fcn.10001f40
call fcn.10001f40
call fcn.10001f40
nop
adc dword [ecx + eax + 0x10], 0x10015481
cmp edx, dword [ecx + eax + 16]
sub eax, -2129657516
push esp
add dword [eax], edx
adc dword [ecx + eax + 0x10], 0x1001545e
lea edx, [ecx + eax + 16]
adc dword [ecx + eax + 16], 0xcccccccc