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

Disassembly:
push ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x10068ad9
mov eax, dword fs:[0]
push eax
sub esp, 0x578
mov eax, dword [0x1007d008]
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 - 0x284], ecx
mov dword [ebp - 0x278], eax
mov dword [ebp - 0x280], eax
test ecx, ecx
je 0x10016801
mov eax, dword [0x1014b5ec]
cmp dword [eax + 0x74], 0
je 0x10016801
cmp dword [eax + 0x78], 0
je 0x10016801
mov eax, dword [0x1014b60c]
mov esi, dword [0x1014b650]
cmp byte [eax + 0x1cb], 0
je 0x1001372d
mov eax, dword [ecx]
mov eax, dword [eax + 4]
call eax
mov ecx, eax
mov al, byte [ecx]
test al, al
jne 0x100136df
mov edi, 0x811c9dc5
jmp 0x100136f5
movsx eax, al
inc ecx
xor eax, 0x811c9dc5
imul edx, eax, 0x1000193
call fcn.10013630
mov edi, eax
mov edx, 0xf30c40c9
mov ecx, 0x1006ec9d
call fcn.10013630
mov ecx, dword [ebp - 0x284]
cmp edi, eax
jne 0x1001372d
mov eax, dword [ecx]
push 0
push str.vote_option
mov eax, dword [eax + 0x18]
call eax
mov ecx, dword [ebp - 0x284]
test eax, eax
jne 0x1001372a
inc dword [esi]
jmp 0x1001372d
inc dword [esi + 4]
mov eax, dword [ecx]
mov eax, dword [eax + 4]
call eax
mov edx, dword fs:[0x2c]
mov dword [ebp - 0x298], edx
mov cl, byte [eax]
test cl, cl
je case.0x10013a83.8
movsx ecx, cl
xor ecx, 0x811c9dc5
imul edx, ecx, 0x1000193
lea ecx, [eax + 1]
call fcn.10013630
cmp eax, 0x1b30ddf0
jne case.0x10013a83.8
mov ecx, dword [0x1014b5ec]
push 0
push str.userid
mov eax, dword [ecx + 0x20]
mov esi, dword [ecx + 0x14]
mov ecx, dword [ebp - 0x284]
mov dword [ebp - 0x28c], 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 - 0x28c]
push eax
call edi
mov edx, dword [0x1014b5ec]
mov dword [ebp - 0x294], eax
push 0
push str.attacker
mov eax, dword [edx + 0x20]
mov esi, dword [edx + 0x14]
mov dword [ebp - 0x28c], eax
mov ecx, dword [eax]
mov eax, dword [ebp - 0x284]
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 - 0x28c]
push eax
call edi
cmp dword [ebp - 0x294], 0
mov dword [ebp - 0x28c], eax
je 0x10016801
test eax, eax
je 0x10016801
mov esi, dword [ebp - 0x284]
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 - 0x285], al
mov edx, dword [ecx + 0x18]
mov ecx, esi
call edx
mov ecx, dword [esi]
push 0
push str.health
mov dword [ebp - 0x27c], eax
mov edx, dword [ecx + 0x18]
mov ecx, esi
call edx
mov edx, dword [0x1014b5ec]
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 - 0x28c], eax
jne 0x10013950
mov ecx, dword [ebp - 0x284]
push 0
push str.weaponid
mov eax, dword [ecx]
call dword [eax + 0x18]
mov edx, dword [0x1014b5ec]
mov esi, dword [ebp - 0x294]
cmp esi, dword [edx + 0x74]
je 0x10013956
mov ecx, dword [edx + 0x78]
call fcn.10003350
cmp eax, 0x19
je 0x10013950
mov ecx, dword [0x1014b5ec]
mov ecx, dword [ecx + 0x78]
call fcn.10008900
test al, al
je 0x10013950
mov eax, dword [0x1014b5ec]
mov ecx, esi
mov eax, dword [eax + 0x10]
mov dword [ebp - 0x314], eax
mov eax, dword [eax]
mov eax, dword [eax + 4]
mov dword [ebp - 0x290], eax
call fcn.10002ca0
mov edx, eax
lea ecx, [ebp - 0x64]
call fcn.10013470
mov ecx, esi
movss xmm1, dword [eax + 4]
mov dword [ebp - 0x4c], 0
movss dword [ebp - 0x48], xmm1
mov dword [ebp - 0x44], 0
call fcn.10002930
mov ecx, esi
mov edi, eax
call fcn.10002890
mov ecx, dword [ebp - 0x294]
mov esi, eax
call fcn.100029d0
push ecx
mov dword [esp], 0x40000000
lea ecx, [ebp - 0x4c]
push 0x19
push 0xff
push 0xff
push 0xff
push ecx
mov ecx, dword [ebp - 0x314]
push edi
push esi
push eax
call dword [ebp - 0x290]
mov edx, dword [0x1014b5ec]
mov esi, dword [edx + 0x78]
test esi, esi
je case.0x10013a83.8
mov eax, dword [ebp - 0x298]
mov ecx, dword [0x10149fcc]
mov ecx, dword [eax + ecx*4]
mov eax, dword [0x1014a058]
cmp eax, dword [ecx + 4]
jle 0x100139c8
push 0x1014a058
call fcn.10065ce1
add esp, 4
cmp dword [0x1014a058], 0xffffffff
jne 0x100139c2
push str.m_iItemDefinitionIndex
push str.CEconEntity
mov dword [ebp - 4], 0
call fcn.10061c10
push 0x1014a058
mov dword [0x10149fe0], eax
mov dword [ebp - 4], 0xffffffff
call fcn.10065c97
add esp, 4
mov edx, dword [0x1014b5ec]
mov eax, dword [0x10149fe0]
cmp dword [esi + eax], 0x3e6
jne case.0x10013a83.8
mov edi, dword [edx + 0x20]
mov ecx, dword [edx + 0x78]
mov eax, dword [edi]
mov esi, dword [eax + 0x10]
call fcn.10003170
mov ecx, edi
push dword [eax]
call esi
mov ecx, eax
mov eax, dword [ebp - 0x294]
cmp eax, ecx
jne 0x10016801
mov esi, dword [ebp - 0x28c]
cmp esi, eax
je 0x10016801
test ecx, ecx
je 0x10016801
cmp dword [ebp - 0x27c], 0x19
jle case.0x10013a83.8
cmp byte [ebp - 0x285], 0
je case.0x10013a83.8
mov eax, dword [0x1014b618]
mov byte [eax + 4], 1
mov ecx, dword [0x1014b5ec]
mov ecx, dword [ecx + 0x14]
call fcn.10002650
addss xmm0, dword [0x100748a4]
mov eax, dword [0x1014b618]
mov ecx, esi
movss dword [eax + 0xc], xmm0
call fcn.10002f30
test al, al
je case.0x10013a83.8
mov ecx, esi
call fcn.10002d40
cmp dword [eax], 8
je case.0x10013a83.8
mov ecx, esi
call fcn.10002d40
mov eax, dword [eax]
dec eax
cmp eax, 8
ja case.0x10013a83.8
jmp dword [eax*4 + 0x1001684c]
mov eax, dword [0x1014b618]
mov dword [eax + 8], 1
jmp case.0x10013a83.8
mov eax, dword [0x1014b618]
mov ecx, esi
mov dword [eax + 8], 1
call fcn.10052850
test eax, eax
je case.0x10013a83.8
mov ecx, eax
call fcn.10003350
cmp eax, 0xd
jmp 0x10013adc
mov eax, dword [0x1014b618]
mov ecx, esi
mov dword [eax + 8], 2
call fcn.10052850
test eax, eax
je case.0x10013a83.8
mov ecx, eax
call fcn.10003350
cmp eax, 0xf
jne case.0x10013a83.8
mov eax, dword [0x1014b618]
mov dword [eax + 8], 0
mov ecx, dword [ebp - 0x284]
mov eax, dword [ecx]
mov eax, dword [eax + 4]
call eax
mov ecx, eax
mov al, byte [ecx]
test al, al
jne 0x10013b06
mov esi, 0x811c9dc5
jmp 0x10013b1c
movsx eax, al
inc ecx
xor eax, 0x811c9dc5
imul edx, eax, 0x1000193
call fcn.10013630
mov esi, eax
mov edx, 0xf50c43ef
mov ecx, 0x1006ec51
call fcn.10013630
cmp esi, eax
jne 0x10014eb7
mov eax, dword [0x1014b60c]
cmp byte [eax + 0x1cd], 0
je 0x10014eb7
mov ecx, dword [0x1014b5ec]
push 0
push str.userid
mov eax, dword [ecx + 0x20]
mov esi, dword [ecx + 0x14]
mov ecx, dword [ebp - 0x284]
mov dword [ebp - 0x27c], 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 - 0x27c]
push eax
call edi
mov edi, eax
test edi, edi
je 0x10014eb7
mov ecx, dword [edi + 8]
mov edx, dword [ecx + 0x24]
lea ecx, [edi + 8]
call edx
push 0x84
mov esi, eax
lea eax, [ebp - 0x16c]
push 0
push eax
call sub.VCRUNTIME140.dll_memset
mov ecx, dword [0x1014b5ec]
add esp, 0xc
mov edx, dword [ecx + 0x14]
mov ecx, dword [edx]
mov eax, dword [ecx + 0x20]
lea ecx, [ebp - 0x16c]
push ecx
push esi
mov ecx, edx
call eax
mov eax, dword [0x10149fcc]
mov esi, dword [ebp - 0x298]
mov ecx, dword [0x10149ffc]
mov esi, dword [esi + eax*4]
cmp ecx, dword [esi + 4]
jle 0x10013c33
push 0x10149ffc
call fcn.10065ce1
mov ecx, dword [0x10149ffc]
add esp, 4
cmp ecx, 0xffffffff
jne 0x10013c33
push str.m_iTeamNum
push str.CBaseEntity
mov dword [ebp - 4], 1
call fcn.10061c10
push 0x10149ffc
mov dword [0x1014a048], eax
mov dword [ebp - 4], 0xffffffff
call fcn.10065c97
mov ecx, dword [0x10149ffc]
add esp, 4
mov eax, dword [0x1014a048]
mov dword [ebp - 0x27c], eax
mov eax, dword [0x1014b5ec]
mov eax, dword [eax + 0x74]
mov dword [ebp - 0x290], eax
cmp ecx, dword [esi + 4]
jle 0x10013c99
push 0x10149ffc
call fcn.10065ce1
add esp, 4
cmp dword [0x10149ffc], 0xffffffff
jne 0x10013c99
push str.m_iTeamNum
push str.CBaseEntity
mov dword [ebp - 4], 2
call fcn.10061c10
push 0x10149ffc
mov dword [0x1014a048], eax
mov dword [ebp - 4], 0xffffffff
call fcn.10065c97
add esp, 4
mov ecx, dword [ebp - 0x27c]
mov edx, dword [ebp - 0x290]
mov eax, dword [0x1014a048]
mov ecx, dword [ecx + edi]
cmp ecx, dword [eax + edx]
mov edx, str._aFFFFFF
je 0x10013cf6
push str.ENEMY
lea ecx, [ebp - 0x44c]
call fcn.100169a0
mov dword [ebp - 4], 3
lea ecx, [ebp - 0x584]
push str._a404040
mov edx, eax
mov dword [ebp - 0x280], 1
call fcn.10016ab0
add esp, 8
mov ecx, eax
mov eax, 3
jmp 0x10013d33
push str.TEAM
lea ecx, [ebp - 0x56c]
call fcn.100169a0
mov dword [ebp - 4], 5
lea ecx, [ebp - 0x554]
push str._a404040
mov edx, eax
mov dword [ebp - 0x280], 4
call fcn.10016ab0
mov ecx, eax
add esp, 8
mov eax, 0xc
movups xmm0, xmmword [ecx]
mov dword [ebp - 0x278], eax
movups xmmword [ebp - 0x88], xmm0
movq xmm0, qword [ecx + 0x10]
movq qword [ebp - 0x78], xmm0
mov dword [ebp - 4], 6
mov dword [ecx + 0x10], 0
mov dword [ecx + 0x14], 0xf
mov byte [ecx], 0
test al, 8
je 0x10013d83
and eax, 0xfffffff7
lea ecx, [ebp - 0x554]
mov dword [ebp - 0x278], eax
call fcn.10006a20
mov eax, dword [ebp - 0x278]
test al, 4
je 0x10013da1
and eax, 0xfffffffb
lea ecx, [ebp - 0x56c]
mov dword [ebp - 0x278], eax
call fcn.10006a20
mov eax, dword [ebp - 0x278]
test al, 2
je 0x10013dbf
and eax, 0xfffffffd
lea ecx, [ebp - 0x584]
mov dword [ebp - 0x278], eax
call fcn.10006a20
mov eax, dword [ebp - 0x278]
mov byte [ebp - 4], 9
test al, 1
je 0x10013ddb
and eax, 0xfffffffe
lea ecx, [ebp - 0x44c]
mov dword [ebp - 0x278], eax
call fcn.10006a20
mov ecx, dword [0x1014923c]
mov esi, 0x7fffffff
mov eax, esi
sub eax, ecx
cmp eax, 9
jb 0x1001681e
cmp dword [0x10149240], 0x10
mov eax, 0x1014922c
push 9
cmovae eax, dword [0x1014922c]
push str._Cheater
push ecx
push eax
push ecx
push dword [ebp - 0x27c]
lea ecx, [ebp - 0x2c8]
call fcn.10016ce0
mov edi, dword [ebp - 0x278]
or edi, 0x1000000
push str._a404040
lea edx, [ebp - 0x2c8]
mov byte [ebp - 4], 0xa
lea ecx, [ebp - 0x28]
call fcn.10016ab0
add esp, 4
mov byte [ebp - 4], 0xc
mov ecx, dword [ebp - 0x2b4]
cmp ecx, 0x10
jb 0x10013e87
mov edx, dword [ebp - 0x2c8]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x10013e7d
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
jbe 0x10013e7d
call dword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
push ecx
push edx
call fcn.1006621b
add esp, 8
lea ecx, [ebp - 0x16c]
mov dword [ebp - 0x2b8], 0
mov dword [ebp - 0x2b4], 0xf
lea edx, [ecx + 1]
mov byte [ebp - 0x2c8], 0
nop dword [eax + eax]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x10013eb0
sub ecx, edx
mov eax, esi
mov edx, dword [0x1014920c]
sub eax, edx
cmp eax, ecx
jb 0x10016823
cmp dword [0x10149210], 0x10
mov eax, str._a0095FF
push ecx
cmovae eax, dword [str._a0095FF]
lea ecx, [ebp - 0x16c]
push ecx
push edx
push eax
push ecx
push dword [ebp - 0x27c]
lea ecx, [ebp - 0xe8]
call fcn.10016ce0
or edi, 0x2000000
push str._aFFFFFF
lea edx, [ebp - 0xe8]
mov byte [ebp - 4], 0xd
lea ecx, [ebp - 0xa0]
call fcn.10016ab0
add esp, 4
mov byte [ebp - 4], 0xf
mov ecx, dword [ebp - 0xd4]
cmp ecx, 0x10
jb 0x10013f5d
mov edx, dword [ebp - 0xe8]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x10013f53
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
jbe 0x10013f53
call dword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
push ecx
push edx
call fcn.1006621b
add esp, 8
lea ecx, [ebp - 0x148]
mov dword [ebp - 0xd8], 0
mov dword [ebp - 0xd4], 0xf
lea edx, [ecx + 1]
mov byte [ebp - 0xe8], 0
mov al, byte [ecx]
inc ecx
test al, al
jne 0x10013f81
sub ecx, edx
mov eax, esi
mov edx, dword [0x1014920c]
sub eax, edx
cmp eax, ecx
jb 0x10016828
cmp dword [0x10149210], 0x10
mov eax, str._a0095FF
push ecx
cmovae eax, dword [str._a0095FF]
lea ecx, [ebp - 0x148]
push ecx
push edx
push eax
push ecx
push dword [ebp - 0x27c]
lea ecx, [ebp - 0x2c8]
call fcn.10016ce0
or edi, 0x4000000
push str._aFFFFFF
lea edx, [ebp - 0x2c8]
mov byte [ebp - 4], 0x10
lea ecx, [ebp - 0x40]
call fcn.10016ab0
add esp, 4
mov byte [ebp - 4], 0x12
mov ecx, dword [ebp - 0x2b4]
cmp ecx, 0x10
jb 0x1001402b
mov edx, dword [ebp - 0x2c8]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x10014021
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
jbe 0x10014021
call dword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
push ecx
push edx
call fcn.1006621b
add esp, 8
mov ecx, dword [0x101491dc]
mov eax, esi
sub eax, ecx
mov dword [ebp - 0x2b8], 0
mov dword [ebp - 0x2b4], 0xf
mov byte [ebp - 0x2c8], 0
cmp eax, 1
jb 0x1001682d
cmp dword [0x101491e0], 0x10
mov eax, str._a404040
push 1
cmovae eax, dword [str._a404040]
push 0x1006ed2c
push ecx
push eax
push ecx
push dword [ebp - 0x27c]
lea ecx, [ebp - 0x50c]
call fcn.10016ce0
or edi, 0x8000000
push str._aFF4141
lea edx, [ebp - 0x50c]
mov byte [ebp - 4], 0x13
lea ecx, [ebp - 0x4f4]
call fcn.10016ab0
add esp, 4
mov ecx, eax
mov byte [ebp - 4], 0x14
mov esi, dword [ecx + 0x14]
mov eax, esi
mov edx, dword [ecx + 0x10]
sub eax, edx
cmp eax, 4
jb 0x100140dc
lea eax, [edx + 4]
mov dword [ecx + 0x10], eax
mov eax, ecx
cmp esi, 0x10
jb 0x100140ce
mov eax, dword [ecx]
mov dword [eax + edx], 0x20475420
mov byte [eax + edx + 4], 0
jmp 0x100140f2
push 4
push str._TG
push dword [ebp - 0x27c]
push 4
call fcn.10016b80
mov ecx, eax
mov dword [ebp - 0x394], 0
xorps xmm0, xmm0
movups xmmword [ebp - 0x3a4], xmm0
mov dword [ebp - 0x390], 0
or edi, 0x10000000
movups xmm0, xmmword [ecx]
movups xmmword [ebp - 0x3a4], xmm0
movq xmm0, qword [ecx + 0x10]
movq qword [ebp - 0x394], xmm0
mov dword [ecx + 0x10], 0
mov dword [ecx + 0x14], 0xf
mov byte [ecx], 0
push str._a404040
lea edx, [ebp - 0x3a4]
mov byte [ebp - 4], 0x15
lea ecx, [ebp - 0x4c4]
call fcn.10016ab0
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 0x1001418d
lea eax, [edx + 4]
mov dword [ecx + 0x10], eax
mov eax, ecx
cmp esi, 0x10
jb 0x1001417f
mov eax, dword [ecx]
mov dword [eax + edx], 0x5b20205d
mov byte [eax + edx + 4], 0
jmp 0x100141a3
push 4
push str.____
push dword [ebp - 0x27c]
push 4
call fcn.10016b80
mov ecx, eax
mov dword [ebp - 0x37c], 0
xorps xmm0, xmm0
movups xmmword [ebp - 0x38c], xmm0
mov dword [ebp - 0x378], 0
or edi, 0x20000000
movups xmm0, xmmword [ecx]
movups xmmword [ebp - 0x38c], xmm0
movq xmm0, qword [ecx + 0x10]
movq qword [ebp - 0x37c], xmm0
mov dword [ecx + 0x10], 0
mov dword [ecx + 0x14], 0xf
mov byte [ecx], 0
lea eax, [ebp - 0x88]
mov byte [ebp - 4], 0x17
push eax
lea edx, [ebp - 0x38c]
lea ecx, [ebp - 0x4ac]
call fcn.10016ab0
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 0x10014242
lea eax, [edx + 2]
mov dword [ecx + 0x10], eax
mov eax, ecx
cmp esi, 0x10
jb 0x10014232
mov eax, dword [ecx]
mov esi, 0x205d
mov word [eax + edx], si
mov byte [eax + edx + 2], 0
jmp 0x10014258
push 2
push 0x1006ed18
push dword [ebp - 0x27c]
push 2
call fcn.10016b80
mov ecx, eax
mov dword [ebp - 0x364], 0
xorps xmm0, xmm0
movups xmmword [ebp - 0x374], xmm0
mov dword [ebp - 0x360], 0
or edi, 0x40000000
movups xmm0, xmmword [ecx]
movups xmmword [ebp - 0x374], xmm0
movq xmm0, qword [ecx + 0x10]
movq qword [ebp - 0x364], xmm0
mov dword [ecx + 0x10], 0
mov dword [ecx + 0x14], 0xf
mov byte [ecx], 0
lea eax, [ebp - 0xa0]
mov byte [ebp - 4], 0x19
push eax
lea edx, [ebp - 0x374]
lea ecx, [ebp - 0x524]
call fcn.10016ab0
mov ecx, eax
add esp, 4
mov dword [ebp - 0x27c], 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 0x1001430c
lea eax, [edx + 0xe]
mov dword [ecx + 0x10], eax
mov eax, ecx
cmp esi, 0x10
jb 0x100142ed
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 - 0x27c]
add esp, 0xc
mov byte [esi + 0xe], 0
jmp 0x10014320
push 0xe
push str._has_joined.__
push dword [ebp - 0x27c]
push 0xe
call fcn.10016b80
mov dword [ebp - 0x34c], 0
xorps xmm0, xmm0
movups xmmword [ebp - 0x35c], xmm0
mov dword [ebp - 0x348], 0
or edi, 0x80000000
movups xmm0, xmmword [eax]
movups xmmword [ebp - 0x35c], xmm0
movq xmm0, qword [eax + 0x10]
movq qword [ebp - 0x34c], xmm0
mov dword [eax + 0x10], 0
mov dword [eax + 0x14], 0xf
mov byte [eax], 0
mov dword [ebp - 0x278], edi
mov dword [ebp - 0x280], edi
lea eax, [ebp - 0x40]
mov byte [ebp - 4], 0x1b
push eax
lea edx, [ebp - 0x35c]
lea ecx, [ebp - 0x53c]
call fcn.10016ab0
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 0x100143c0
lea eax, [edx + 1]
mov dword [ecx + 0x10], eax
mov eax, ecx
cmp esi, 0x10
jb 0x100143b8
mov eax, dword [ecx]
mov word [eax + edx], 0x5d
jmp 0x100143d6
push 1
push 0x1006ed04
push dword [ebp - 0x27c]
push 1
call fcn.10016b80
mov ecx, eax
xorps xmm0, xmm0
mov dword [ebp - 0x60], 0
movups xmmword [ebp - 0x70], xmm0
mov dword [ebp - 0x5c], 0
movups xmm0, xmmword [ecx]
movups xmmword [ebp - 0x70], xmm0
movq xmm0, qword [ecx + 0x10]
movq qword [ebp - 0x60], xmm0
mov byte [ebp - 4], 0x1e
mov dword [ecx + 0x10], 0
mov dword [ecx + 0x14], 0xf
mov byte [ecx], 0
mov ecx, dword [ebp - 0x528]
cmp ecx, 0x10
jb 0x1001444b
mov edx, dword [ebp - 0x53c]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x10014441
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x1001475a
push ecx
push edx
call fcn.1006621b
add esp, 8
mov dword [ebp - 0x52c], 0
mov dword [ebp - 0x528], 0xf
mov byte [ebp - 0x53c], 0
mov byte [ebp - 4], 0x1f
mov ecx, dword [ebp - 0x348]
cmp ecx, 0x10
jb 0x100144a4
mov edx, dword [ebp - 0x35c]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x1001449a
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x1001475a
push ecx
push edx
call fcn.1006621b
add esp, 8
mov dword [ebp - 0x34c], 0
mov dword [ebp - 0x348], 0xf
mov byte [ebp - 0x35c], 0
mov byte [ebp - 4], 0x20
mov ecx, dword [ebp - 0x510]
cmp ecx, 0x10
jb 0x100144fd
mov edx, dword [ebp - 0x524]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x100144f3
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x1001475a
push ecx
push edx
call fcn.1006621b
add esp, 8
mov dword [ebp - 0x514], 0
mov dword [ebp - 0x510], 0xf
mov byte [ebp - 0x524], 0
mov byte [ebp - 4], 0x21
mov ecx, dword [ebp - 0x360]
cmp ecx, 0x10
jb 0x10014556
mov edx, dword [ebp - 0x374]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x1001454c
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x1001475a
push ecx
push edx
call fcn.1006621b
add esp, 8
mov dword [ebp - 0x364], 0
mov dword [ebp - 0x360], 0xf
mov byte [ebp - 0x374], 0
mov byte [ebp - 4], 0x22
mov ecx, dword [ebp - 0x498]
cmp ecx, 0x10
jb 0x100145af
mov edx, dword [ebp - 0x4ac]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x100145a5
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x1001475a
push ecx
push edx
call fcn.1006621b
add esp, 8
mov dword [ebp - 0x49c], 0
mov dword [ebp - 0x498], 0xf
mov byte [ebp - 0x4ac], 0
mov byte [ebp - 4], 0x23
mov ecx, dword [ebp - 0x378]
cmp ecx, 0x10
jb 0x10014608
mov edx, dword [ebp - 0x38c]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x100145fe
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x1001475a
push ecx
push edx
call fcn.1006621b
add esp, 8
mov dword [ebp - 0x37c], 0
mov dword [ebp - 0x378], 0xf
mov byte [ebp - 0x38c], 0
mov byte [ebp - 4], 0x24
mov ecx, dword [ebp - 0x4b0]
cmp ecx, 0x10
jb 0x10014661
mov edx, dword [ebp - 0x4c4]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x10014657
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x1001475a
push ecx
push edx
call fcn.1006621b
add esp, 8
mov dword [ebp - 0x4b4], 0
mov dword [ebp - 0x4b0], 0xf
mov byte [ebp - 0x4c4], 0
mov byte [ebp - 4], 0x25
mov ecx, dword [ebp - 0x390]
cmp ecx, 0x10
jb 0x100146ba
mov edx, dword [ebp - 0x3a4]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x100146b0
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x1001475a
push ecx
push edx
call fcn.1006621b
add esp, 8
mov dword [ebp - 0x394], 0
mov dword [ebp - 0x390], 0xf
mov byte [ebp - 0x3a4], 0
mov byte [ebp - 4], 0x26
mov ecx, dword [ebp - 0x4e0]
cmp ecx, 0x10
jb 0x1001470f
mov edx, dword [ebp - 0x4f4]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x10014705
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x1001475a
push ecx
push edx
call fcn.1006621b
add esp, 8
mov dword [ebp - 0x4e4], 0
mov dword [ebp - 0x4e0], 0xf
mov byte [ebp - 0x4f4], 0
mov byte [ebp - 4], 0x27
mov ecx, dword [ebp - 0x4f8]
cmp ecx, 0x10
jb 0x1001476a
mov edx, dword [ebp - 0x50c]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x10014760
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
jbe 0x10014760
call dword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
push ecx
push edx
call fcn.1006621b
add esp, 8
mov ecx, dword [0x101491dc]
mov eax, 0x7fffffff
sub eax, ecx
mov dword [ebp - 0x4fc], 0
mov dword [ebp - 0x4f8], 0xf
mov byte [ebp - 0x50c], 0
cmp eax, 1
jb 0x10016832
cmp dword [0x101491e0], 0x10
mov eax, str._a404040
push 1
cmovae eax, dword [str._a404040]
push 0x1006ed2c
push ecx
push eax
push ecx
push dword [ebp - 0x27c]
lea ecx, [ebp - 0x2e0]
call fcn.10016ce0
push str._aFF4141
lea edx, [ebp - 0x2e0]
mov byte [ebp - 4], 0x28
lea ecx, [ebp - 0x47c]
call fcn.10016ab0
add esp, 4
mov ecx, eax
mov byte [ebp - 4], 0x29
mov esi, dword [ecx + 0x14]
mov eax, esi
mov edx, dword [ecx + 0x10]
sub eax, edx
cmp eax, 4
jb 0x10014818
lea eax, [edx + 4]
mov dword [ecx + 0x10], eax
mov eax, ecx
cmp esi, 0x10
jb 0x1001480a
mov eax, dword [ecx]
mov dword [eax + edx], 0x20475420
mov byte [eax + edx + 4], 0
jmp 0x1001482e
push 4
push str._TG
push dword [ebp - 0x27c]
push 4
call fcn.10016b80
mov ecx, eax
xorps xmm0, xmm0
mov dword [ebp - 0x3f4], 0
movups xmmword [ebp - 0x404], xmm0
mov dword [ebp - 0x3f0], 0
movups xmm0, xmmword [ecx]
movups xmmword [ebp - 0x404], xmm0
movq xmm0, qword [ecx + 0x10]
movq qword [ebp - 0x3f4], xmm0
mov dword [ecx + 0x10], 0
lea edx, [ebp - 0x404]
mov dword [ecx + 0x14], 0xf
mov byte [ecx], 0
lea ecx, [ebp - 0x434]
push str._a404040
mov byte [ebp - 4], 0x2a
call fcn.10016ab0
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 0x100148c5
lea eax, [edx + 2]
mov dword [ecx + 0x10], eax
mov eax, ecx
cmp esi, 0x10
jb 0x100148b5
mov eax, dword [ecx]
mov esi, 0x205d
mov word [eax + edx], si
mov byte [eax + edx + 2], 0
jmp 0x100148db
push 2
push 0x1006ed18
push dword [ebp - 0x27c]
push 2
call fcn.10016b80
mov ecx, eax
xorps xmm0, xmm0
mov dword [ebp - 0x40c], 0
movups xmmword [ebp - 0x41c], xmm0
mov dword [ebp - 0x408], 0
movups xmm0, xmmword [ecx]
movups xmmword [ebp - 0x41c], xmm0
movq xmm0, qword [ecx + 0x10]
movq qword [ebp - 0x40c], xmm0
mov dword [ecx + 0x10], 0
lea eax, [ebp - 0xa0]
mov dword [ecx + 0x14], 0xf
lea edx, [ebp - 0x41c]
mov byte [ecx], 0
lea ecx, [ebp - 0x464]
push eax
mov byte [ebp - 4], 0x2c
call fcn.10016ab0
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 0x1001497d
lea eax, [ecx + 0xb]
mov dword [edi + 0x10], eax
mov eax, edi
cmp edx, 0x10
jb 0x10014964
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 0x10014995
push 0xb
push str.is_a_known
push dword [ebp - 0x27c]
mov ecx, edi
push 0xb
call fcn.10016b80
mov edi, eax
xorps xmm0, xmm0
mov dword [ebp - 0x3ac], 0
movups xmmword [ebp - 0x3bc], xmm0
mov dword [ebp - 0x3a8], 0
movups xmm0, xmmword [edi]
movups xmmword [ebp - 0x3bc], xmm0
movq xmm0, qword [edi + 0x10]
movq qword [ebp - 0x3ac], xmm0
mov dword [edi + 0x10], 0
lea eax, [ebp - 0x28]
mov dword [edi + 0x14], 0xf
lea edx, [ebp - 0x3bc]
mov byte [edi], 0
lea ecx, [ebp - 0x4dc]
push eax
mov byte [ebp - 4], 0x2e
call fcn.10016ab0
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 0x10014a23
lea eax, [edx + 1]
mov dword [ecx + 0x10], eax
mov eax, ecx
cmp esi, 0x10
jb 0x10014a1b
mov eax, dword [ecx]
mov word [eax + edx], 0x21
jmp 0x10014a39
push 1
push 0x1006ed30
push dword [ebp - 0x27c]
push 1
call fcn.10016b80
mov ecx, eax
movups xmm0, xmmword [ecx]
movups xmmword [ebp - 0xe8], xmm0
movq xmm0, qword [ecx + 0x10]
movq qword [ebp - 0xd8], xmm0
mov byte [ebp - 4], 0x31
mov dword [ecx + 0x10], 0
mov dword [ecx + 0x14], 0xf
mov byte [ecx], 0
mov ecx, dword [ebp - 0x4c8]
cmp ecx, 0x10
jb 0x10014a9f
mov edx, dword [ebp - 0x4dc]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x10014a95
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x10014cfc
push ecx
push edx
call fcn.1006621b
add esp, 8
mov dword [ebp - 0x4cc], 0
mov dword [ebp - 0x4c8], 0xf
mov byte [ebp - 0x4dc], 0
mov byte [ebp - 4], 0x32
mov ecx, dword [ebp - 0x3a8]
cmp ecx, 0x10
jb 0x10014af8
mov edx, dword [ebp - 0x3bc]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x10014aee
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x10014cfc
push ecx
push edx
call fcn.1006621b
add esp, 8
mov dword [ebp - 0x3ac], 0
mov dword [ebp - 0x3a8], 0xf
mov byte [ebp - 0x3bc], 0
mov byte [ebp - 4], 0x33
mov ecx, dword [ebp - 0x450]
cmp ecx, 0x10
jb 0x10014b51
mov edx, dword [ebp - 0x464]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x10014b47
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x10014cfc
push ecx
push edx
call fcn.1006621b
add esp, 8
mov dword [ebp - 0x454], 0
mov dword [ebp - 0x450], 0xf
mov byte [ebp - 0x464], 0
mov byte [ebp - 4], 0x34
mov ecx, dword [ebp - 0x408]
cmp ecx, 0x10
jb 0x10014baa
mov edx, dword [ebp - 0x41c]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x10014ba0
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x10014cfc
push ecx
push edx
call fcn.1006621b
add esp, 8
mov dword [ebp - 0x40c], 0
mov dword [ebp - 0x408], 0xf
mov byte [ebp - 0x41c], 0
mov byte [ebp - 4], 0x35
mov ecx, dword [ebp - 0x420]
cmp ecx, 0x10
jb 0x10014c03
mov edx, dword [ebp - 0x434]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x10014bf9
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x10014cfc
push ecx
push edx
call fcn.1006621b
add esp, 8
mov dword [ebp - 0x424], 0
mov dword [ebp - 0x420], 0xf
mov byte [ebp - 0x434], 0
mov byte [ebp - 4], 0x36
mov ecx, dword [ebp - 0x3f0]
cmp ecx, 0x10
jb 0x10014c5c
mov edx, dword [ebp - 0x404]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x10014c52
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x10014cfc
push ecx
push edx
call fcn.1006621b
add esp, 8
mov dword [ebp - 0x3f4], 0
mov dword [ebp - 0x3f0], 0xf
mov byte [ebp - 0x404], 0
mov byte [ebp - 4], 0x37
mov ecx, dword [ebp - 0x468]
cmp ecx, 0x10
jb 0x10014cb1
mov edx, dword [ebp - 0x47c]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x10014ca7
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x10014cfc
push ecx
push edx
call fcn.1006621b
add esp, 8
mov dword [ebp - 0x46c], 0
mov dword [ebp - 0x468], 0xf
mov byte [ebp - 0x47c], 0
mov byte [ebp - 4], 0x38
mov ecx, dword [ebp - 0x2cc]
cmp ecx, 0x10
jb 0x10014d0c
mov edx, dword [ebp - 0x2e0]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x10014d02
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
jbe 0x10014d02
call dword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
push ecx
push edx
call fcn.1006621b
add esp, 8
mov eax, dword [0x1014b5ec]
cmp dword [ebp - 0x5c], 0x10
mov dword [ebp - 0x2d0], 0
mov dword [ebp - 0x2cc], 0xf
mov eax, dword [eax + 4]
mov byte [ebp - 0x2e0], 0
mov ecx, dword [eax + 0x1c]
lea eax, [ebp - 0x70]
cmovae eax, dword [ebp - 0x70]
push eax
push 0
push ecx
call fcn.100135e0
mov byte [ebp - 4], 0x27
add esp, 0xc
mov ecx, dword [ebp - 0xd4]
cmp ecx, 0x10
jb 0x10014d87
mov edx, dword [ebp - 0xe8]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x10014d7d
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x10014ea7
push ecx
push edx
call fcn.1006621b
add esp, 8
mov byte [ebp - 4], 0x12
mov ecx, dword [ebp - 0x5c]
cmp ecx, 0x10
jb 0x10014dbf
mov edx, dword [ebp - 0x70]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x10014db5
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x10014ea7
push ecx
push edx
call fcn.1006621b
add esp, 8
mov byte [ebp - 4], 0xf
mov ecx, dword [ebp - 0x2c]
mov dword [ebp - 0x60], 0
mov dword [ebp - 0x5c], 0xf
mov byte [ebp - 0x70], 0
cmp ecx, 0x10
jb 0x10014e09
mov edx, dword [ebp - 0x40]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x10014dff
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x10014ea7
push ecx
push edx
call fcn.1006621b
add esp, 8
mov byte [ebp - 4], 0xc
mov ecx, dword [ebp - 0x8c]
cmp ecx, 0x10
jb 0x10014e43
mov edx, dword [ebp - 0xa0]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x10014e39
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x10014ea7
push ecx
push edx
call fcn.1006621b
add esp, 8
mov byte [ebp - 4], 9
mov ecx, dword [ebp - 0x14]
cmp ecx, 0x10
jb 0x10014e77
mov edx, dword [ebp - 0x28]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x10014e6d
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x10014ea7
push ecx
push edx
call fcn.1006621b
add esp, 8
mov dword [ebp - 4], 0xffffffff
mov ecx, dword [ebp - 0x74]
cmp ecx, 0x10
jb 0x10014eb7
mov edx, dword [ebp - 0x88]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x10014ead
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
jbe 0x10014ead
call dword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
push ecx
push edx
call fcn.1006621b
add esp, 8
mov ecx, dword [ebp - 0x284]
mov eax, dword [ecx]
mov eax, dword [eax + 4]
call eax
mov ecx, eax
mov al, byte [ecx]
test al, al
jne 0x10014ed3
mov esi, 0x811c9dc5
jmp 0x10014ee9
movsx eax, al
inc ecx
xor eax, 0x811c9dc5
imul edx, eax, 0x1000193
call fcn.10013630
mov esi, eax
mov edx, 0xf50c43ef
mov ecx, 0x1006ec61
call fcn.10013630
cmp esi, eax
jne 0x100157f5
mov eax, dword [0x1014b60c]
cmp byte [eax + 0x1ce], 0
je 0x100157f5
mov ecx, dword [0x1014b5ec]
push 0
push str.userid
mov eax, dword [ecx + 0x20]
mov esi, dword [ecx + 0x14]
mov ecx, dword [ebp - 0x284]
mov dword [ebp - 0x27c], 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 - 0x27c]
push eax
call edi
mov edi, eax
test edi, edi
je 0x100157f5
mov ecx, dword [edi + 8]
mov edx, dword [ecx + 0x24]
lea ecx, [edi + 8]
call edx
push 0x84
mov esi, eax
lea eax, [ebp - 0x1f0]
push 0
push eax
call sub.VCRUNTIME140.dll_memset
mov ecx, dword [0x1014b5ec]
add esp, 0xc
mov edx, dword [ecx + 0x14]
mov ecx, dword [edx]
mov eax, dword [ecx + 0x20]
lea ecx, [ebp - 0x1f0]
push ecx
push esi
mov ecx, edx
call eax
mov ecx, dword [ebp - 0x298]
mov eax, dword [0x10149fcc]
mov esi, dword [ecx + eax*4]
mov ecx, dword [0x10149ffc]
cmp ecx, dword [esi + 4]
jle 0x10015000
push 0x10149ffc
call fcn.10065ce1
mov ecx, dword [0x10149ffc]
add esp, 4
cmp ecx, 0xffffffff
jne 0x10015000
push str.m_iTeamNum
push str.CBaseEntity
mov dword [ebp - 4], 0x39
call fcn.10061c10
push 0x10149ffc
mov dword [0x1014a048], eax
mov dword [ebp - 4], 0xffffffff
call fcn.10065c97
mov ecx, dword [0x10149ffc]
add esp, 4
mov eax, dword [0x1014a048]
mov dword [ebp - 0x27c], eax
mov eax, dword [0x1014b5ec]
mov eax, dword [eax + 0x74]
mov dword [ebp - 0x290], eax
cmp ecx, dword [esi + 4]
jle 0x10015066
push 0x10149ffc
call fcn.10065ce1
add esp, 4
cmp dword [0x10149ffc], 0xffffffff
jne 0x10015066
push str.m_iTeamNum
push str.CBaseEntity
mov dword [ebp - 4], 0x3a
call fcn.10061c10
push 0x10149ffc
mov dword [0x1014a048], eax
mov dword [ebp - 4], 0xffffffff
call fcn.10065c97
add esp, 4
mov ecx, dword [ebp - 0x27c]
mov edx, dword [ebp - 0x290]
mov eax, dword [0x1014a048]
mov ecx, dword [edi + ecx]
cmp ecx, dword [eax + edx]
mov edx, str._aFFFFFF
je 0x100150d2
push str.ENEMY
lea ecx, [ebp - 0x310]
call fcn.100169a0
mov dword [ebp - 4], 0x3b
mov edx, eax
mov ecx, dword [ebp - 0x278]
or ecx, 0x10
mov dword [ebp - 0x278], ecx
mov dword [ebp - 0x280], ecx
lea ecx, [ebp - 0x2b0]
push str._a404040
call fcn.10016ab0
add esp, 8
mov ecx, eax
mov eax, dword [ebp - 0x278]
or eax, 0x20
jmp 0x10015120
push str.TEAM
lea ecx, [ebp - 0x344]
call fcn.100169a0
mov dword [ebp - 4], 0x3d
mov edx, eax
mov ecx, dword [ebp - 0x278]
or ecx, 0x40
mov dword [ebp - 0x278], ecx
mov dword [ebp - 0x280], ecx
lea ecx, [ebp - 0x32c]
push str._a404040
call fcn.10016ab0
mov ecx, eax
add esp, 8
mov eax, dword [ebp - 0x278]
or eax, 0x80
movups xmm0, xmmword [ecx]
mov dword [ebp - 0x280], eax
mov dword [ebp - 0x278], eax
movups xmmword [ebp - 0x40], xmm0
movq xmm0, qword [ecx + 0x10]
movq qword [ebp - 0x30], xmm0
mov dword [ebp - 4], 0x3e
mov dword [ecx + 0x10], 0
mov dword [ecx + 0x14], 0xf
mov byte [ecx], 0
test al, al
jns 0x1001517b
and eax, 0xffffff7f
lea ecx, [ebp - 0x32c]
mov dword [ebp - 0x278], eax
mov dword [ebp - 0x280], eax
call fcn.10006a20
mov eax, dword [ebp - 0x278]
test al, 0x40
je 0x1001519f
and eax, 0xffffffbf
lea ecx, [ebp - 0x344]
mov dword [ebp - 0x278], eax
mov dword [ebp - 0x280], eax
call fcn.10006a20
mov eax, dword [ebp - 0x278]
test al, 0x20
je 0x100151c3
and eax, 0xffffffdf
lea ecx, [ebp - 0x2b0]
mov dword [ebp - 0x278], eax
mov dword [ebp - 0x280], eax
call fcn.10006a20
mov eax, dword [ebp - 0x278]
mov byte [ebp - 4], 0x41
test al, 0x10
je 0x100151e5
and eax, 0xffffffef
lea ecx, [ebp - 0x310]
mov dword [ebp - 0x278], eax
mov dword [ebp - 0x280], eax
call fcn.10006a20
mov ecx, dword [ebp - 0x284]
push 0x1006e51c
push str.name
mov eax, dword [ecx]
mov eax, dword [eax + 0x20]
call eax
mov esi, eax
mov edx, esi
lea eax, [edx + 1]
mov cl, byte [edx]
inc edx
test cl, cl
jne 0x10015203
mov ecx, dword [0x1014920c]
sub edx, eax
mov edi, 0x7fffffff
mov eax, edi
sub eax, ecx
cmp eax, edx
jb 0x10016837
cmp dword [0x10149210], 0x10
mov eax, str._a0095FF
push edx
cmovae eax, dword [str._a0095FF]
push esi
push ecx
push eax
push ecx
push dword [ebp - 0x27c]
lea ecx, [ebp - 0x2e0]
call fcn.10016ce0
push str._aFFFFFF
lea edx, [ebp - 0x2e0]
mov byte [ebp - 4], 0x42
lea ecx, [ebp - 0x28]
call fcn.10016ab0
add esp, 4
mov byte [ebp - 4], 0x44
mov ecx, dword [ebp - 0x2cc]
cmp ecx, 0x10
jb 0x100152a6
mov edx, dword [ebp - 0x2e0]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x1001529c
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
jbe 0x1001529c
call dword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
push ecx
push edx
call fcn.1006621b
add esp, 8
mov ecx, dword [0x101491dc]
mov eax, edi
sub eax, ecx
mov dword [ebp - 0x2d0], 0
mov dword [ebp - 0x2cc], 0xf
mov byte [ebp - 0x2e0], 0
cmp eax, 1
jb 0x1001683c
cmp dword [0x101491e0], 0x10
mov eax, str._a404040
push 1
cmovae eax, dword [str._a404040]
push 0x1006ed2c
push ecx
push eax
push ecx
push dword [ebp - 0x27c]
lea ecx, [ebp - 0x2f8]
call fcn.10016ce0
push str._aFF4141
lea edx, [ebp - 0x2f8]
mov byte [ebp - 4], 0x45
lea ecx, [ebp - 0xb8]
call fcn.10016ab0
add esp, 4
mov ecx, eax
mov byte [ebp - 4], 0x46
mov esi, dword [ecx + 0x14]
mov eax, esi
mov edx, dword [ecx + 0x10]
sub eax, edx
cmp eax, 4
jb 0x10015351
lea eax, [edx + 4]
mov dword [ecx + 0x10], eax
mov eax, ecx
cmp esi, 0x10
jb 0x10015343
mov eax, dword [ecx]
mov dword [eax + edx], 0x20475420
mov byte [eax + edx + 4], 0
jmp 0x10015367
push 4
push str._TG
push dword [ebp - 0x27c]
push 4
call fcn.10016b80
mov ecx, eax
xorps xmm0, xmm0
mov dword [ebp - 0x3c4], 0
movups xmmword [ebp - 0x3d4], xmm0
mov dword [ebp - 0x3c0], 0
movups xmm0, xmmword [ecx]
movups xmmword [ebp - 0x3d4], xmm0
movq xmm0, qword [ecx + 0x10]
movq qword [ebp - 0x3c4], xmm0
mov dword [ecx + 0x10], 0
lea edx, [ebp - 0x3d4]
mov dword [ecx + 0x14], 0xf
mov byte [ecx], 0
lea ecx, [ebp - 0xd0]
push str._a404040
mov byte [ebp - 4], 0x47
call fcn.10016ab0
add esp, 4
mov ecx, eax
mov byte [ebp - 4], 0x48
mov esi, dword [ecx + 0x14]
mov eax, esi
mov edx, dword [ecx + 0x10]
sub eax, edx
cmp eax, 2
jb 0x100153fe
lea eax, [edx + 2]
mov dword [ecx + 0x10], eax
mov eax, ecx
cmp esi, 0x10
jb 0x100153ee
mov eax, dword [ecx]
mov esi, 0x205d
mov word [eax + edx], si
mov byte [eax + edx + 2], 0
jmp 0x10015414
push 2
push 0x1006ed18
push dword [ebp - 0x27c]
push 2
call fcn.10016b80
mov ecx, eax
xorps xmm0, xmm0
mov dword [ebp - 0x3dc], 0
movups xmmword [ebp - 0x3ec], xmm0
mov dword [ebp - 0x3d8], 0
movups xmm0, xmmword [ecx]
movups xmmword [ebp - 0x3ec], xmm0
movq xmm0, qword [ecx + 0x10]
movq qword [ebp - 0x3dc], xmm0
mov dword [ecx + 0x10], 0
lea eax, [ebp - 0x28]
mov dword [ecx + 0x14], 0xf
lea edx, [ebp - 0x3ec]
mov byte [ecx], 0
lea ecx, [ebp - 0x494]
push eax
mov byte [ebp - 4], 0x49
call fcn.10016ab0
add esp, 4
mov edi, eax
mov byte [ebp - 4], 0x4a
mov edx, dword [edi + 0x14]
mov eax, edx
mov ecx, dword [edi + 0x10]
sub eax, ecx
cmp eax, 0xa
jb 0x100154b3
lea eax, [ecx + 0xa]
mov dword [edi + 0x10], eax
mov eax, edi
cmp edx, 0x10
jb 0x1001549a
mov eax, dword [edi]
push 0xa
lea esi, [eax + ecx]
push str._has_left.
push esi
call sub.VCRUNTIME140.dll_memmove
add esp, 0xc
mov byte [esi + 0xa], 0
jmp 0x100154cb
push 0xa
push str._has_left.
push dword [ebp - 0x27c]
mov ecx, edi
push 0xa
call fcn.10016b80
mov edi, eax
xorps xmm0, xmm0
mov dword [ebp - 0x48], 0
movups xmmword [ebp - 0x58], xmm0
mov dword [ebp - 0x44], 0
movups xmm0, xmmword [edi]
movups xmmword [ebp - 0x58], xmm0
movq xmm0, qword [edi + 0x10]
movq qword [ebp - 0x48], xmm0
mov byte [ebp - 4], 0x4c
mov dword [edi + 0x10], 0
mov dword [edi + 0x14], 0xf
mov byte [edi], 0
mov ecx, dword [ebp - 0x480]
cmp ecx, 0x10
jb 0x10015540
mov edx, dword [ebp - 0x494]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x10015536
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x100156eb
push ecx
push edx
call fcn.1006621b
add esp, 8
mov dword [ebp - 0x484], 0
mov dword [ebp - 0x480], 0xf
mov byte [ebp - 0x494], 0
mov byte [ebp - 4], 0x4d
mov ecx, dword [ebp - 0x3d8]
cmp ecx, 0x10
jb 0x10015599
mov edx, dword [ebp - 0x3ec]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x1001558f
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x100156eb
push ecx
push edx
call fcn.1006621b
add esp, 8
mov dword [ebp - 0x3dc], 0
mov dword [ebp - 0x3d8], 0xf
mov byte [ebp - 0x3ec], 0
mov byte [ebp - 4], 0x4e
mov ecx, dword [ebp - 0xbc]
cmp ecx, 0x10
jb 0x100155f2
mov edx, dword [ebp - 0xd0]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x100155e8
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x100156eb
push ecx
push edx
call fcn.1006621b
add esp, 8
mov dword [ebp - 0xc0], 0
mov dword [ebp - 0xbc], 0xf
mov byte [ebp - 0xd0], 0
mov byte [ebp - 4], 0x4f
mov ecx, dword [ebp - 0x3c0]
cmp ecx, 0x10
jb 0x1001564b
mov edx, dword [ebp - 0x3d4]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x10015641
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x100156eb
push ecx
push edx
call fcn.1006621b
add esp, 8
mov dword [ebp - 0x3c4], 0
mov dword [ebp - 0x3c0], 0xf
mov byte [ebp - 0x3d4], 0
mov byte [ebp - 4], 0x50
mov ecx, dword [ebp - 0xa4]
cmp ecx, 0x10
jb 0x100156a0
mov edx, dword [ebp - 0xb8]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x10015696
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x100156eb
push ecx
push edx
call fcn.1006621b
add esp, 8
mov dword [ebp - 0xa8], 0
mov dword [ebp - 0xa4], 0xf
mov byte [ebp - 0xb8], 0
mov byte [ebp - 4], 0x51
mov ecx, dword [ebp - 0x2e4]
cmp ecx, 0x10
jb 0x100156fb
mov edx, dword [ebp - 0x2f8]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x100156f1
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
jbe 0x100156f1
call dword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
push ecx
push edx
call fcn.1006621b
add esp, 8
mov eax, dword [0x1014b5ec]
cmp dword [ebp - 0x44], 0x10
mov dword [ebp - 0x2e8], 0
mov dword [ebp - 0x2e4], 0xf
mov eax, dword [eax + 4]
mov byte [ebp - 0x2f8], 0
mov ecx, dword [eax + 0x1c]
lea eax, [ebp - 0x58]
cmovae eax, dword [ebp - 0x58]
push eax
push 0
push ecx
call fcn.100135e0
mov byte [ebp - 4], 0x44
add esp, 0xc
mov ecx, dword [ebp - 0x44]
cmp ecx, 0x10
jb 0x1001576c
mov edx, dword [ebp - 0x58]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x10015762
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x100157a8
push ecx
push edx
call fcn.1006621b
add esp, 8
mov byte [ebp - 4], 0x41
mov ecx, dword [ebp - 0x14]
mov dword [ebp - 0x48], 0
mov dword [ebp - 0x44], 0xf
mov byte [ebp - 0x58], 0
cmp ecx, 0x10
jb 0x100157b8
mov edx, dword [ebp - 0x28]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x100157ae
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
jbe 0x100157ae
call dword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
push ecx
push edx
call fcn.1006621b
add esp, 8
mov dword [ebp - 4], 0xffffffff
mov ecx, dword [ebp - 0x2c]
cmp ecx, 0x10
jb 0x100157f5
mov edx, dword [ebp - 0x40]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x100157eb
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
jbe 0x100157eb
call dword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
push ecx
push edx
call fcn.1006621b
add esp, 8
mov edx, 0xf50c43ef
mov ecx, 0x1006ec75
call fcn.10013630
mov esi, eax
mov eax, dword [ebp - 0x284]
mov ecx, eax
mov edx, dword [eax]
mov edx, dword [edx + 4]
call edx
mov ecx, eax
mov dl, byte [ecx]
test dl, dl
jne 0x10015824
mov eax, 0x811c9dc5
jmp 0x10015838
movsx eax, dl
inc ecx
xor eax, 0x811c9dc5
imul edx, eax, 0x1000193
call fcn.10013630
cmp eax, esi
jne 0x10015e23
mov eax, dword [0x1014b60c]
cmp byte [eax + 0x1cf], 0
je 0x10015e23
mov ecx, dword [0x1014b5ec]
push 0
push str.userid
mov eax, dword [ecx + 0x20]
mov esi, dword [ecx + 0x14]
mov ecx, dword [ebp - 0x284]
mov dword [ebp - 0x27c], 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 - 0x27c]
push eax
call edi
mov edi, eax
test edi, edi
je 0x10015e23
mov ecx, edi
call fcn.100027e0
push 0x84
mov esi, eax
lea eax, [ebp - 0x1f0]
push 0
push eax
call sub.VCRUNTIME140.dll_memset
mov ecx, dword [0x1014b5ec]
lea eax, [ebp - 0x1f0]
add esp, 0xc
mov ecx, dword [ecx + 0x14]
push eax
push esi
call fcn.10002640
mov ecx, dword [0x1014b5ec]
mov ecx, dword [ecx + 0x74]
call fcn.100027f0
mov ecx, edi
mov esi, eax
call fcn.100027f0
mov edx, str._aFFFFFF
mov ecx, dword [eax]
cmp ecx, dword [esi]
je 0x10015943
push str.ENEMY
lea ecx, [ebp - 0x32c]
call fcn.100169a0
mov dword [ebp - 4], 0x52
mov edx, eax
mov ecx, dword [ebp - 0x278]
or ecx, 0x100
mov dword [ebp - 0x278], ecx
mov dword [ebp - 0x280], ecx
lea ecx, [ebp - 0x344]
push str._a404040
call fcn.10016ab0
add esp, 8
mov edx, dword [ebp - 0x278]
or edx, 0x200
jmp 0x10015993
push str.TEAM
lea ecx, [ebp - 0x2b0]
call fcn.100169a0
mov dword [ebp - 4], 0x54
mov edx, eax
mov ecx, dword [ebp - 0x278]
or ecx, 0x400
mov dword [ebp - 0x278], ecx
mov dword [ebp - 0x280], ecx
lea ecx, [ebp - 0x310]
push str._a404040
call fcn.10016ab0
mov edx, dword [ebp - 0x278]
add esp, 8
or edx, 0x800
push eax
lea ecx, [ebp - 0x40]
mov dword [ebp - 0x280], edx
mov dword [ebp - 0x278], edx
call fcn.10016920
mov dword [ebp - 4], 0x55
test edx, 0x800
je 0x100159da
and edx, 0xfffff7ff
lea ecx, [ebp - 0x310]
mov dword [ebp - 0x278], edx
mov dword [ebp - 0x280], edx
call fcn.10006a20
mov edx, dword [ebp - 0x278]
test edx, 0x400
je 0x10015a05
and edx, 0xfffffbff
lea ecx, [ebp - 0x2b0]
mov dword [ebp - 0x278], edx
mov dword [ebp - 0x280], edx
call fcn.10006a20
mov edx, dword [ebp - 0x278]
test edx, 0x200
je 0x10015a30
and edx, 0xfffffdff
lea ecx, [ebp - 0x344]
mov dword [ebp - 0x278], edx
mov dword [ebp - 0x280], edx
call fcn.10006a20
mov edx, dword [ebp - 0x278]
mov byte [ebp - 4], 0x58
test edx, 0x100
je 0x10015a59
and edx, 0xfffffeff
lea ecx, [ebp - 0x32c]
mov dword [ebp - 0x278], edx
mov dword [ebp - 0x280], edx
call fcn.10006a20
lea eax, [ebp - 0x1f0]
mov edx, str._a0095FF
push eax
lea ecx, [ebp - 0x44c]
call fcn.100169a0
push str._aFFFFFF
mov edx, eax
mov byte [ebp - 4], 0x59
lea ecx, [ebp - 0xd0]
call fcn.10016ab0
add esp, 8
lea ecx, [ebp - 0x44c]
mov byte [ebp - 4], 0x5b
call fcn.10006a20
mov ecx, dword [ebp - 0x284]
push 0
push str.class
mov eax, dword [ecx]
mov eax, dword [eax + 0x18]
call eax
dec eax
cmp eax, 8
ja case.default.0x10015ab2
jmp dword [eax*4 + 0x10016870]
mov edx, str.Scout
jmp 0x10015afd
mov edx, str.Soldier
jmp 0x10015afd
mov edx, str.Pyro
jmp 0x10015afd
mov edx, str.Demoman
jmp 0x10015afd
mov edx, str.Heavy
jmp 0x10015afd
mov edx, str.Engineer
jmp 0x10015afd
mov edx, str.Medic
jmp 0x10015afd
mov edx, str.Sniper
jmp 0x10015afd
mov edx, 0x1006ec40
jmp 0x10015afd
mov edx, 0x1006e51c
mov ecx, edx
lea esi, [ecx + 1]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x10015b02
mov edi, 0x7fffffff
sub ecx, esi
mov esi, dword [0x1014920c]
mov eax, edi
sub eax, esi
cmp eax, ecx
jb 0x10016841
cmp dword [0x10149210], 0x10
mov eax, str._a0095FF
push ecx
cmovae eax, dword [str._a0095FF]
push edx
push esi
push eax
push ecx
push dword [ebp - 0x27c]
lea ecx, [ebp - 0x2f8]
call fcn.10016ce0
push str._aFFFFFF
lea edx, [ebp - 0x2f8]
mov byte [ebp - 4], 0x5c
lea ecx, [ebp - 0xb8]
call fcn.10016ab0
add esp, 4
mov byte [ebp - 4], 0x5e
mov ecx, dword [ebp - 0x2e4]
cmp ecx, 0x10
jb 0x10015ba8
mov edx, dword [ebp - 0x2f8]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x10015b9e
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
jbe 0x10015b9e
call dword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
push ecx
push edx
call fcn.1006621b
add esp, 8
mov ecx, dword [0x101491dc]
sub edi, ecx
mov dword [ebp - 0x2e8], 0
mov dword [ebp - 0x2e4], 0xf
mov byte [ebp - 0x2f8], 0
cmp edi, 1
jb 0x10016846
cmp dword [0x101491e0], 0x10
mov eax, str._a404040
push 1
cmovae eax, dword [str._a404040]
push 0x1006ed2c
push ecx
push eax
push ecx
push dword [ebp - 0x27c]
lea ecx, [ebp - 0x88]
call fcn.10016ce0
push str._aFF4141
lea edx, [ebp - 0x88]
mov byte [ebp - 4], 0x5f
lea ecx, [ebp - 0x554]
call fcn.10016ab0
add esp, 4
mov edx, eax
mov byte [ebp - 4], 0x60
mov esi, dword [edx + 0x14]
mov eax, esi
mov ecx, dword [edx + 0x10]
sub eax, ecx
cmp eax, 4
jb 0x10015c51
lea eax, [ecx + 4]
mov dword [edx + 0x10], eax
mov eax, edx
cmp esi, 0x10
jb 0x10015c43
mov eax, dword [edx]
mov dword [eax + ecx], 0x20475420
mov byte [eax + ecx + 4], 0
jmp 0x10015c69
push 4
push str._TG
push dword [ebp - 0x27c]
mov ecx, edx
push 4
call fcn.10016b80
mov edx, eax
push ecx
push dword [ebp - 0x27c]
lea ecx, [ebp - 0x28]
call fcn.10016b60
push edx
call fcn.10016970
mov edx, ecx
mov byte [ebp - 4], 0x61
push str._a404040
lea ecx, [ebp - 0x56c]
call fcn.10016ab0
push str.____
mov edx, eax
mov byte [ebp - 4], 0x62
lea ecx, [ebp - 0x584]
call fcn.10016a00
lea ecx, [ebp - 0x40]
mov byte [ebp - 4], 0x63
push ecx
mov edx, eax
lea ecx, [ebp - 0x44c]
call fcn.10016ab0
push 0x1006ed18
mov edx, eax
mov byte [ebp - 4], 0x64
lea ecx, [ebp - 0x32c]
call fcn.10016a00
lea ecx, [ebp - 0xd0]
mov byte [ebp - 4], 0x65
push ecx
mov edx, eax
lea ecx, [ebp - 0x344]
call fcn.10016ab0
push str._changed_class_to
mov edx, eax
mov byte [ebp - 4], 0x66
lea ecx, [ebp - 0x2b0]
call fcn.10016a00
lea ecx, [ebp - 0xb8]
mov byte [ebp - 4], 0x67
push ecx
mov edx, eax
lea ecx, [ebp - 0x310]
call fcn.10016ab0
push 0x1006ebf8
mov edx, eax
mov byte [ebp - 4], 0x68
lea ecx, [ebp - 0xa0]
call fcn.10016a00
add esp, 0x20
lea ecx, [ebp - 0x310]
call fcn.10006a20
lea ecx, [ebp - 0x2b0]
call fcn.10006a20
lea ecx, [ebp - 0x344]
call fcn.10006a20
lea ecx, [ebp - 0x32c]
call fcn.10006a20
lea ecx, [ebp - 0x44c]
call fcn.10006a20
lea ecx, [ebp - 0x584]
call fcn.10006a20
lea ecx, [ebp - 0x56c]
call fcn.10006a20
lea ecx, [ebp - 0x28]
call fcn.10006a20
lea ecx, [ebp - 0x554]
call fcn.10006a20
lea ecx, [ebp - 0x88]
mov byte [ebp - 4], 0x73
call fcn.10006a20
mov eax, dword [0x1014b5ec]
lea ecx, [ebp - 0xa0]
mov eax, dword [eax + 4]
mov edx, dword [eax + 0x1c]
call fcn.100168a0
push eax
push 0
push edx
call fcn.100135e0
add esp, 0xc
lea ecx, [ebp - 0xa0]
call fcn.10006a20
lea ecx, [ebp - 0xb8]
call fcn.10006a20
lea ecx, [ebp - 0xd0]
call fcn.10006a20
mov dword [ebp - 4], 0xffffffff
mov ecx, dword [ebp - 0x2c]
cmp ecx, 0x10
jb 0x10015e23
mov edx, dword [ebp - 0x40]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x10015e19
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
jbe 0x10015e19
call dword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
push ecx
push edx
call fcn.1006621b
add esp, 8
mov edx, 0xf50c43ef
mov ecx, 0x1006ec89
call fcn.10013630
mov esi, eax
mov eax, dword [ebp - 0x284]
mov ecx, eax
mov edx, dword [eax]
mov edx, dword [edx + 4]
call edx
mov ecx, eax
mov dl, byte [ecx]
test dl, dl
jne 0x10015e52
mov eax, 0x811c9dc5
jmp 0x10015e66
movsx eax, dl
inc ecx
xor eax, 0x811c9dc5
imul edx, eax, 0x1000193
call fcn.10013630
cmp eax, esi
jne 0x100162a2
mov eax, dword [0x1014b60c]
cmp byte [eax + 0x1d0], 0
je 0x100162a2
mov ecx, dword [0x1014b5ec]
push 0
push str.userid
mov eax, dword [ecx + 0x20]
mov esi, dword [ecx + 0x14]
mov ecx, dword [ebp - 0x284]
mov dword [ebp - 0x27c], 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 - 0x27c]
push eax
call edi
mov edi, eax
test edi, edi
je 0x100162a2
mov esi, dword [ebp - 0x284]
push 0x1006e51c
push str.oldname
mov ecx, dword [esi]
mov edx, dword [ecx + 0x20]
mov ecx, esi
call edx
push eax
mov edx, str._a0095FF
lea ecx, [ebp - 0x310]
call fcn.100169a0
push str._aFFFFFF
mov edx, eax
mov dword [ebp - 4], 0x74
lea ecx, [ebp - 0xa0]
call fcn.10016ab0
add esp, 8
lea ecx, [ebp - 0x310]
mov byte [ebp - 4], 0x76
call fcn.10006a20
mov eax, dword [esi]
mov ecx, esi
push 0x1006e51c
push str.newname
mov eax, dword [eax + 0x20]
call eax
push eax
mov edx, str._a0095FF
lea ecx, [ebp - 0x2b0]
call fcn.100169a0
push str._aFFFFFF
mov edx, eax
mov byte [ebp - 4], 0x77
lea ecx, [ebp - 0x88]
call fcn.10016ab0
add esp, 8
lea ecx, [ebp - 0x2b0]
mov byte [ebp - 4], 0x79
call fcn.10006a20
mov ecx, dword [0x1014b5ec]
mov ecx, dword [ecx + 0x74]
call fcn.100027f0
mov ecx, edi
mov esi, eax
call fcn.100027f0
mov edx, str._aFFFFFF
mov ecx, dword [eax]
cmp ecx, dword [esi]
je 0x10015fda
push str.ENEMY
lea ecx, [ebp - 0x44c]
call fcn.100169a0
mov byte [ebp - 4], 0x7a
mov edx, eax
mov ecx, dword [ebp - 0x278]
or ecx, 0x1000
mov dword [ebp - 0x278], ecx
mov dword [ebp - 0x280], ecx
lea ecx, [ebp - 0x32c]
push str._a404040
call fcn.10016ab0
add esp, 8
mov edx, dword [ebp - 0x278]
or edx, 0x2000
jmp 0x1001602a
push str.TEAM
lea ecx, [ebp - 0x344]
call fcn.100169a0
mov dword [ebp - 4], 0x7c
mov edx, eax
mov ecx, dword [ebp - 0x278]
or ecx, 0x4000
mov dword [ebp - 0x278], ecx
mov dword [ebp - 0x280], ecx
lea ecx, [ebp - 0x310]
push str._a404040
call fcn.10016ab0
mov edx, dword [ebp - 0x278]
add esp, 8
or edx, 0x8000
push eax
lea ecx, [ebp - 0x40]
mov dword [ebp - 0x280], edx
mov dword [ebp - 0x278], edx
call fcn.10016920
mov dword [ebp - 4], 0x7d
test edx, 0x8000
je 0x10016071
and edx, 0xffff7fff
lea ecx, [ebp - 0x310]
mov dword [ebp - 0x278], edx
mov dword [ebp - 0x280], edx
call fcn.10006a20
mov edx, dword [ebp - 0x278]
test edx, 0x4000
je 0x1001609c
and edx, 0xffffbfff
lea ecx, [ebp - 0x344]
mov dword [ebp - 0x278], edx
mov dword [ebp - 0x280], edx
call fcn.10006a20
mov edx, dword [ebp - 0x278]
test edx, 0x2000
je 0x100160c7
and edx, 0xffffdfff
lea ecx, [ebp - 0x32c]
mov dword [ebp - 0x278], edx
mov dword [ebp - 0x280], edx
call fcn.10006a20
mov edx, dword [ebp - 0x278]
mov byte [ebp - 4], 0x80
test edx, 0x1000
je 0x100160f0
and edx, 0xffffefff
lea ecx, [ebp - 0x44c]
mov dword [ebp - 0x278], edx
mov dword [ebp - 0x280], edx
call fcn.10006a20
push 0x1006ed2c
mov edx, str._a404040
lea ecx, [ebp - 0x464]
call fcn.100169a0
push str._aFF4141
mov edx, eax
mov byte [ebp - 4], 0x81
lea ecx, [ebp - 0x434]
call fcn.10016ab0
push str._TG
mov edx, eax
mov byte [ebp - 4], 0x82
lea ecx, [ebp - 0x47c]
call fcn.10016a00
push str._a404040
mov edx, eax
mov byte [ebp - 4], 0x83
lea ecx, [ebp - 0x494]
call fcn.10016ab0
push str.____
mov edx, eax
mov byte [ebp - 4], 0x84
lea ecx, [ebp - 0xd0]
call fcn.10016a00
lea ecx, [ebp - 0x40]
mov byte [ebp - 4], 0x85
push ecx
mov edx, eax
lea ecx, [ebp - 0xb8]
call fcn.10016ab0
push 0x1006ed18
mov edx, eax
mov byte [ebp - 4], 0x86
lea ecx, [ebp - 0x554]
call fcn.10016a00
lea ecx, [ebp - 0xa0]
mov byte [ebp - 4], 0x87
push ecx
mov edx, eax
lea ecx, [ebp - 0x56c]
call fcn.10016ab0
push str._changed_name_to
mov edx, eax
mov byte [ebp - 4], 0x88
lea ecx, [ebp - 0x584]
call fcn.10016a00
lea ecx, [ebp - 0x88]
mov byte [ebp - 4], 0x89
push ecx
mov edx, eax
lea ecx, [ebp - 0x2b0]
call fcn.10016ab0
push 0x1006ebf8
mov edx, eax
mov byte [ebp - 4], 0x8a
lea ecx, [ebp - 0x28]
call fcn.10016a00
add esp, 0x2c
lea ecx, [ebp - 0x2b0]
call fcn.10006a20
lea ecx, [ebp - 0x584]
call fcn.10006a20
lea ecx, [ebp - 0x56c]
call fcn.10006a20
lea ecx, [ebp - 0x554]
call fcn.10006a20
lea ecx, [ebp - 0xb8]
call fcn.10006a20
lea ecx, [ebp - 0xd0]
call fcn.10006a20
lea ecx, [ebp - 0x494]
call fcn.10006a20
lea ecx, [ebp - 0x47c]
call fcn.10006a20
lea ecx, [ebp - 0x434]
call fcn.10006a20
lea ecx, [ebp - 0x464]
mov byte [ebp - 4], 0x95
call fcn.10006a20
mov eax, dword [0x1014b5ec]
lea ecx, [ebp - 0x28]
mov eax, dword [eax + 4]
mov edx, dword [eax + 0x1c]
call fcn.100168a0
push eax
push 0
push edx
call fcn.100135e0
add esp, 0xc
lea ecx, [ebp - 0x28]
call fcn.10006a20
lea ecx, [ebp - 0x40]
call fcn.10006a20
lea ecx, [ebp - 0x88]
call fcn.10006a20
lea ecx, [ebp - 0xa0]
mov dword [ebp - 4], 0xffffffff
call fcn.10006a20
mov ecx, dword [ebp - 0x284]
mov eax, dword [ecx]
mov eax, dword [eax + 4]
call eax
mov ecx, eax
mov al, byte [ecx]
test al, al
jne 0x100162be
mov esi, 0x811c9dc5
jmp 0x100162d4
movsx eax, al
inc ecx
xor eax, 0x811c9dc5
imul edx, eax, 0x1000193
call fcn.10013630
mov esi, eax
mov edx, 0xf30c40c9
mov ecx, 0x1006ec9d
call fcn.10013630
cmp esi, eax
jne 0x10016801
mov eax, dword [0x1014b60c]
cmp byte [eax + 0x1d1], 0
je 0x10016801
mov eax, dword [0x1014b5ec]
mov ecx, dword [ebp - 0x284]
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 0x10016801
mov ecx, dword [ebp - 0x284]
push 0
push str.vote_option
mov eax, dword [ecx]
mov eax, dword [eax + 0x18]
call eax
test eax, eax
mov ecx, edi
sete byte [ebp - 0x285]
call fcn.100027e0
push 0x84
mov esi, eax
lea eax, [ebp - 0x274]
push 0
push eax
call sub.VCRUNTIME140.dll_memset
mov ecx, dword [0x1014b5ec]
lea eax, [ebp - 0x274]
add esp, 0xc
mov ecx, dword [ecx + 0x14]
push eax
push esi
call fcn.10002640
mov ecx, dword [0x1014b5ec]
mov ecx, dword [ecx + 0x74]
call fcn.100027f0
mov ecx, edi
mov esi, eax
call fcn.100027f0
mov edx, str._aFFFFFF
mov ecx, dword [eax]
cmp ecx, dword [esi]
je 0x100163f3
push str.ENEMY
lea ecx, [ebp - 0x32c]
call fcn.100169a0
mov dword [ebp - 4], 0x96
mov edx, eax
mov ecx, dword [ebp - 0x278]
or ecx, 0x10000
mov dword [ebp - 0x278], ecx
mov dword [ebp - 0x280], ecx
lea ecx, [ebp - 0x344]
push str._a404040
call fcn.10016ab0
add esp, 8
mov edx, dword [ebp - 0x278]
or edx, 0x20000
jmp 0x10016443
push str.TEAM
lea ecx, [ebp - 0x2b0]
call fcn.100169a0
mov dword [ebp - 4], 0x98
mov edx, eax
mov ecx, dword [ebp - 0x278]
or ecx, 0x40000
mov dword [ebp - 0x278], ecx
mov dword [ebp - 0x280], ecx
lea ecx, [ebp - 0x310]
push str._a404040
call fcn.10016ab0
mov edx, dword [ebp - 0x278]
add esp, 8
or edx, 0x80000
push eax
lea ecx, [ebp - 0xa0]
mov dword [ebp - 0x280], edx
mov dword [ebp - 0x278], edx
call fcn.10016920
mov dword [ebp - 4], 0x99
test edx, 0x80000
je 0x1001648d
and edx, 0xfff7ffff
lea ecx, [ebp - 0x310]
mov dword [ebp - 0x278], edx
mov dword [ebp - 0x280], edx
call fcn.10006a20
mov edx, dword [ebp - 0x278]
test edx, 0x40000
je 0x100164b8
and edx, 0xfffbffff
lea ecx, [ebp - 0x2b0]
mov dword [ebp - 0x278], edx
mov dword [ebp - 0x280], edx
call fcn.10006a20
mov edx, dword [ebp - 0x278]
test edx, 0x20000
je 0x100164e3
and edx, 0xfffdffff
lea ecx, [ebp - 0x344]
mov dword [ebp - 0x278], edx
mov dword [ebp - 0x280], edx
call fcn.10006a20
mov edx, dword [ebp - 0x278]
mov byte [ebp - 4], 0x9c
test edx, 0x10000
je 0x1001650c
and edx, 0xfffeffff
lea ecx, [ebp - 0x32c]
mov dword [ebp - 0x278], edx
mov dword [ebp - 0x280], edx
call fcn.10006a20
lea eax, [ebp - 0x274]
mov edx, str._a0095FF
push eax
lea ecx, [ebp - 0x44c]
call fcn.100169a0
push str._aFFFFFF
mov edx, eax
mov byte [ebp - 4], 0x9d
lea ecx, [ebp - 0x88]
call fcn.10016ab0
add esp, 8
lea ecx, [ebp - 0x44c]
mov byte [ebp - 4], 0x9f
call fcn.10006a20
cmp byte [ebp - 0x285], 0
je 0x1001659c
push 0x1006edac
mov edx, str._a3AFF4D
lea ecx, [ebp - 0x32c]
call fcn.100169a0
mov byte [ebp - 4], 0xa0
lea ecx, [ebp - 0x344]
mov esi, dword [ebp - 0x278]
mov edx, eax
or esi, 0x100000
push str._aFFFFFF
mov dword [ebp - 0x280], esi
call fcn.10016ab0
add esp, 8
or esi, 0x200000
jmp 0x100165e5
push 0x1006edb0
mov edx, 0x1014922c
lea ecx, [ebp - 0x2b0]
call fcn.100169a0
mov dword [ebp - 4], 0xa2
lea ecx, [ebp - 0x310]
mov esi, dword [ebp - 0x278]
mov edx, eax
or esi, 0x400000
push str._aFFFFFF
mov dword [ebp - 0x280], esi
call fcn.10016ab0
add esp, 8
or esi, 0x800000
push eax
lea ecx, [ebp - 0x28]
call fcn.10016920
mov dword [ebp - 4], 0xa3
test esi, 0x800000
je 0x1001660e
lea ecx, [ebp - 0x310]
and esi, 0xff7fffff
call fcn.10006a20
test esi, 0x400000
je 0x10016627
lea ecx, [ebp - 0x2b0]
and esi, 0xffbfffff
call fcn.10006a20
test esi, 0x200000
je 0x10016640
lea ecx, [ebp - 0x344]
and esi, 0xffdfffff
call fcn.10006a20
mov byte [ebp - 4], 0xa6
test esi, 0x100000
je 0x10016657
lea ecx, [ebp - 0x32c]
call fcn.10006a20
push 0x1006ed2c
mov edx, str._a404040
lea ecx, [ebp - 0x4ac]
call fcn.100169a0
push str._aFF4141
mov edx, eax
mov byte [ebp - 4], 0xa7
lea ecx, [ebp - 0x4c4]
call fcn.10016ab0
push str._TG
mov edx, eax
mov byte [ebp - 4], 0xa8
lea ecx, [ebp - 0x4f4]
call fcn.10016a00
push str._a404040
mov edx, eax
mov byte [ebp - 4], 0xa9
lea ecx, [ebp - 0x4dc]
call fcn.10016ab0
push str.____
mov edx, eax
mov byte [ebp - 4], 0xaa
lea ecx, [ebp - 0x464]
call fcn.10016a00
lea ecx, [ebp - 0xa0]
mov byte [ebp - 4], 0xab
push ecx
mov edx, eax
lea ecx, [ebp - 0x434]
call fcn.10016ab0
push 0x1006ed18
mov edx, eax
mov byte [ebp - 4], 0xac
lea ecx, [ebp - 0x47c]
call fcn.10016a00
lea ecx, [ebp - 0x88]
mov byte [ebp - 4], 0xad
push ecx
mov edx, eax
lea ecx, [ebp - 0x494]
call fcn.10016ab0
push str._voted
mov edx, eax
mov byte [ebp - 4], 0xae
lea ecx, [ebp - 0xd0]
call fcn.10016a00
lea ecx, [ebp - 0x28]
mov byte [ebp - 4], 0xaf
push ecx
mov edx, eax
lea ecx, [ebp - 0xb8]
call fcn.10016ab0
push 0x1006ebf8
mov edx, eax
mov byte [ebp - 4], 0xb0
lea ecx, [ebp - 0x40]
call fcn.10016a00
add esp, 0x2c
lea ecx, [ebp - 0xb8]
call fcn.10006a20
lea ecx, [ebp - 0xd0]
call fcn.10006a20
lea ecx, [ebp - 0x494]
call fcn.10006a20
lea ecx, [ebp - 0x47c]
call fcn.10006a20
lea ecx, [ebp - 0x434]
call fcn.10006a20
lea ecx, [ebp - 0x464]
call fcn.10006a20
lea ecx, [ebp - 0x4dc]
call fcn.10006a20
lea ecx, [ebp - 0x4f4]
call fcn.10006a20
lea ecx, [ebp - 0x4c4]
call fcn.10006a20
lea ecx, [ebp - 0x4ac]
mov byte [ebp - 4], 0xbb
call fcn.10006a20
lea ecx, [ebp - 0x40]
call fcn.100168a0
push eax
mov eax, dword [0x1014b5ec]
push 0
mov eax, dword [eax + 4]
push dword [eax + 0x1c]
call fcn.100135e0
add esp, 0xc
lea ecx, [ebp - 0x40]
call fcn.10006a20
lea ecx, [ebp - 0x28]
call fcn.10006a20
lea ecx, [ebp - 0x88]
call fcn.10006a20
lea ecx, [ebp - 0xa0]
call fcn.10006a20
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.10065ba0
mov esp, ebp
pop ebp
ret 4
call fcn.10001ea0
call fcn.10001ea0
call fcn.10001ea0
call fcn.10001ea0
call fcn.10001ea0
call fcn.10001ea0
call fcn.10001ea0
call fcn.10001ea0
call fcn.10001ea0
nop
fidivr word [edx]
add dword [eax], edx
fidivr word [edx]
add dword [eax], edx
cwde
cmp al, byte [ecx]
adc byte [edx - 0x21effec6], cl
cmp al, byte [ecx]
adc dh, bl
cmp al, byte [ecx]
adc byte [ebx - 0x15effec6], bh
cmp al, byte [ecx]
adc dh, bl
cmp al, byte [ecx]
adc byte [ecx - 0x15effea6], bh
pop edx
add dword [eax], edx
rcr byte [edx + 1], 0x10
into
pop edx
add dword [eax], edx
jecxz 0x100168dc
add dword [eax], edx
aad 0x5a
add dword [eax], edx
invalid
adc byte [ebx + 0x10f983c6], cl