Function at 0x100813e0
Capabilities:
Allocate or change rwx memory
Encode data using base64
Execute shellcode via indirect call

Disassembly:
push ebx
mov ebx, esp
sub esp, 8
and esp, 0xfffffff8
add esp, 4
push ebp
mov ebp, dword [ebx + 4]
mov dword [esp + 4], ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x100bd616
mov eax, dword fs:[0]
push eax
push ebx
sub esp, 0x1c8
mov eax, dword [0x100e50d4]
xor eax, ebp
mov dword [ebp - 0x14], eax
push esi
push edi
push eax
lea eax, [ebp - 0xc]
mov dword fs:[0], eax
mov eax, dword [ebx + 8]
xor edi, edi
mov dword [ebp - 0x188], 0
mov dword [ebp - 0x18c], edi
mov esi, dword [eax + 0x54]
mov eax, dword [esi*4 + 0x1010481c]
mov dword [ebp - 0x180], eax
mov eax, dword [eax + 0xa34]
test eax, eax
je 0x10081475
cmp byte [eax], 0
je 0x10081466
mov eax, dword [eax + 0x34]
test eax, eax
jle 0x10081466
movss xmm0, dword [eax + 0x1f4]
jmp 0x1008146b
movss xmm0, dword [ebp - 0x30]
cvttss2si edi, xmm0
mov dword [ebp - 0x18c], edi
mov dword [ebp - 0x50], 0
mov dword [ebp - 0x4c], 0xf
mov byte [ebp - 0x60], 0
mov dword [ebp - 4], 0
mov dword [ebp - 0x84], 0
mov dword [ebp - 0x80], 0xf
mov byte [ebp - 0x94], 0
push 0xb0
lea eax, [ebp - 0x178]
push 0
push eax
call fcn.1009a970
mov dword [ebp - 0x178], 0x100d9d60
mov dword [ebp - 0x168], 0x100d9d68
mov dword [ebp - method.std::basic_ios_char__struct_std::char_traits_char__.virtual_0], vtable.std::basic_ios_char__struct_std::char_traits_char__.0
add esp, 4
mov byte [ebp - 4], 2
lea eax, [ebp - 0x160]
mov dword [ebp - 0x188], 1
lea ecx, [ebp - 0x178]
push eax
call fcn.10024ff0
lea eax, [ebp - 0x168]
mov dword [ebp - 0x30], eax
mov eax, dword [ebp - 0x168]
mov eax, dword [eax + 4]
mov dword [ebp + eax - method.std::basic_ostream_char__struct_std::char_traits_char__.virtual_0], vtable.std::basic_ostream_char__struct_std::char_traits_char__.0
mov eax, dword [ebp - 0x168]
mov ecx, dword [eax + 4]
lea eax, [ecx - 8]
mov dword [ebp + ecx - 0x16c], eax
mov eax, dword [ebp - 0x178]
mov eax, dword [eax + 4]
mov dword [ebp + eax - method.std::basic_iostream_char__struct_std::char_traits_char__.virtual_0], vtable.std::basic_iostream_char__struct_std::char_traits_char__.0
mov eax, dword [ebp - 0x178]
mov ecx, dword [eax + 4]
lea eax, [ecx - 0x20]
mov dword [ebp + ecx - 0x17c], eax
mov dword [ebp - 4], 6
mov eax, dword [ebp - 0x178]
mov eax, dword [eax + 4]
mov dword [ebp + eax - method.std::basic_stringstream_char__struct_std::char_traits_char___class_std::allocator_char__.virtual_0], vtable.std::basic_stringstream_char__struct_std::char_traits_char___class_std::allocator_char__.0
mov eax, dword [ebp - 0x178]
mov ecx, dword [eax + 4]
lea eax, [ecx - 0x68]
mov dword [ebp + ecx - 0x17c], eax
lea ecx, [ebp - 0x160]
call fcn.10025290
mov dword [ebp - method.std::basic_stringbuf_char__struct_std::char_traits_char___class_std::allocator_char__.virtual_0], vtable.std::basic_stringbuf_char__struct_std::char_traits_char___class_std::allocator_char__.0
mov dword [ebp - 0x128], 0
mov dword [ebp - 0x124], 0
sub esp, 0x18
mov byte [ebp - 4], 7
mov ecx, esp
push 9
mov dword [ecx + 0x10], 0
mov dword [ecx + 0x14], 0xf
push str.SearchBar
mov byte [ecx], 0
call fcn.1000ecc0
call fcn.1006bfe0
add esp, 0x18
cmp esi, eax
jne 0x100817aa
mov ecx, dword [ebp - 0x180]
mov eax, dword [ecx + 0x1a08]
cmp byte [eax], 0
je 0x10081600
mov eax, dword [eax + 0x34]
test eax, eax
jle 0x10081600
movss xmm0, dword [eax + 0x1f4]
jmp 0x10081605
movss xmm0, dword [ebp - 0x30]
mov ecx, dword [esi*4 + 0x1010481c]
cvttss2si eax, xmm0
mov dword [ebp - 0x18c], 0
mov edi, dword [ecx + 0x1a18]
sub edi, eax
mov dword [ebp - 0x188], edi
cmp eax, 5
jle 0x1008386f
mov dword [ebp - 0x38], 0
mov dword [ebp - 0x34], 0xf
mov byte [ebp - 0x48], 0
mov byte [ebp - 4], 8
mov eax, 0x92492493
mov ecx, dword [0x10103e94]
sub ecx, dword [0x10103e90]
imul ecx
add edx, ecx
sar edx, 5
mov eax, edx
shr eax, 0x1f
add eax, edx
mov dword [ebp - 0x30], eax
cmp edi, eax
jae 0x1008386f
mov ecx, dword [esi*4 + 0x1010481c]
lea edx, [edi*8]
sub edx, edi
mov dword [ebp - 0x180], 0
shl edx, 3
mov dword [ebp - 0x7c], edx
mov dword [ebp - 0x184], ecx
nop word [eax + eax]
add edx, dword [0x10103e90]
mov dword [ebp - 0x1a8], edx
cmp dword [edx + 0x14], 0x10
jb 0x100816ba
mov edx, dword [edx]
mov dword [ebp - 0x1a8], edx
mov edi, dword [ecx + 0x19f8]
add edi, dword [ebp - 0x180]
cmp byte [edi], 0
je 0x100816f4
push 2
push dword [edi + 8]
call dword [0x100f273c]
push dword [ebp - 0x1a8]
push dword [edi + 8]
call dword [0x100f2728]
mov edi, dword [esi*4 + 0x1010481c]
mov dword [ebp - 0x184], edi
jmp 0x100816fa
mov edi, dword [ebp - 0x184]
mov ecx, dword [0x10103e90]
mov edx, dword [ebp - 0x7c]
add ecx, 0x1c
add ecx, edx
mov dword [ebp - 0x1a8], ecx
cmp dword [ecx + 0x14], 0x10
jb 0x1008171c
mov ecx, dword [ecx]
mov dword [ebp - 0x1a8], ecx
mov edi, dword [edi + 0x1a00]
mov eax, dword [ebp - 0x180]
add edi, eax
mov ecx, dword [ebp - 0x184]
cmp byte [edi], 0
je 0x1008175f
push 2
push dword [edi + 8]
call dword [0x100f273c]
push dword [ebp - 0x1a8]
push dword [edi + 8]
call dword [0x100f2728]
mov ecx, dword [esi*4 + 0x1010481c]
mov edx, dword [ebp - 0x7c]
mov eax, dword [ebp - 0x180]
mov edi, dword [ebp - 0x18c]
add eax, 0xe4
inc edi
mov dword [ebp - 0x180], eax
mov dword [ebp - 0x18c], edi
mov dword [ebp - 0x184], ecx
cmp edi, dword [ecx + 0x1a14]
je 0x1008386f
mov edi, dword [ebp - 0x188]
add edx, 0x38
inc edi
mov dword [ebp - 0x7c], edx
mov dword [ebp - 0x188], edi
cmp edi, dword [ebp - 0x30]
jb 0x100816a0
jmp 0x1008386f
sub esp, 0x18
mov ecx, esp
push 0x11
mov dword [ecx + 0x10], 0
mov dword [ecx + 0x14], 0xf
push str.MouseScatterWidth
mov byte [ecx], 0
call fcn.1000ecc0
call fcn.1006bfe0
add esp, 0x18
cmp esi, eax
jne 0x10081967
movss xmm0, dword [0x100daab8]
mov edx, edi
movd xmm1, edi
lea ecx, [ebp - 0x17]
cvtdq2ps xmm1, xmm1
mulss xmm1, dword [0x100da7a0]
subss xmm0, xmm1
movss dword [0x100f2564], xmm0
test edi, edi
jns 0x10081818
neg edx
call fcn.10013540
mov byte [eax - 1], 0x2d
lea ecx, [eax - 1]
jmp 0x1008181f
call fcn.10013540
mov ecx, eax
lea eax, [ebp - 0x17]
mov dword [ebp - 0x194], 0
mov dword [ebp - 0x190], 0xf
mov byte [ebp - 0x1a4], 0
cmp ecx, eax
je 0x10081850
sub eax, ecx
push eax
push ecx
lea ecx, [ebp - 0x1a4]
call fcn.1000ecc0
push 0x100d9c90
lea ecx, [ebp - 0x1a4]
mov byte [ebp - 4], 9
call fcn.10012330
mov dword [ebp - 0x68], 0
mov dword [ebp - 0x64], 0
movups xmm0, xmmword [eax]
movups xmmword [ebp - 0x78], xmm0
movq xmm0, qword [eax + 0x10]
movq qword [ebp - 0x68], xmm0
mov dword [eax + 0x10], 0
mov dword [eax + 0x14], 0xf
mov byte [eax], 0
mov byte [ebp - 4], 0xb
mov edx, dword [ebp - 0x190]
cmp edx, 0x10
jb 0x100818d2
mov ecx, dword [ebp - 0x1a4]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x100818c8
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x10083903
push edx
push ecx
call fcn.10097faf
add esp, 8
mov edx, dword [ebp - 0x64]
lea esi, [ebp - 0x78]
mov edi, dword [ebp - 0x180]
cmp edx, 0x10
mov ecx, dword [ebp - 0x78]
cmovae esi, ecx
mov dword [ebp - 0x194], 0
mov dword [ebp - 0x190], 0xf
cmp byte [edi + 0x868], 0
mov byte [ebp - 0x1a4], 0
je 0x1008192c
push 2
push dword [edi + 0x870]
call dword [0x100f273c]
push esi
push dword [edi + 0x870]
call dword [0x100f2728]
mov edx, dword [ebp - 0x64]
mov ecx, dword [ebp - 0x78]
mov byte [ebp - 4], 7
cmp edx, 0x10
jb 0x10083713
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x10081958
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x10083908
push edx
push ecx
call fcn.10097faf
add esp, 8
jmp 0x10083713
sub esp, 0x18
mov ecx, esp
push 0xa
mov dword [ecx + 0x10], 0
mov dword [ecx + 0x14], 0xf
push str.FogDensity
mov byte [ecx], 0
call fcn.1000ecc0
call fcn.1006bfe0
add esp, 0x18
cmp esi, eax
jne 0x10081ae3
mov edx, edi
lea ecx, [ebp - 0x1a4]
call fcn.1000ee30
push 0x100d9c90
mov edx, eax
mov byte [ebp - 4], 0xc
lea ecx, [ebp - 0x78]
call fcn.10012c00
add esp, 4
lea ecx, [ebp - 0x60]
push eax
call fcn.10012470
mov edx, dword [ebp - 0x64]
cmp edx, 0x10
jb 0x100819f9
mov ecx, dword [ebp - 0x78]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x100819ef
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x1008390d
push edx
push ecx
call fcn.10097faf
add esp, 8
mov byte [ebp - 4], 7
mov edx, dword [ebp - 0x190]
mov dword [ebp - 0x68], 0
mov dword [ebp - 0x64], 0xf
mov byte [ebp - 0x78], 0
cmp edx, 0x10
jb 0x10081a49
mov ecx, dword [ebp - 0x1a4]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x10081a3f
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x10083912
push edx
push ecx
call fcn.10097faf
add esp, 8
cmp dword [ebp - 0x4c], 0x10
lea eax, [ebp - 0x60]
mov esi, dword [ebp - 0x180]
cmovae eax, dword [ebp - 0x60]
mov dword [ebp - 0x194], 0
mov dword [ebp - 0x190], 0xf
cmp byte [esi + 0x868], 0
mov byte [ebp - 0x1a4], 0
mov dword [ebp - 0x30], eax
je 0x10081a9e
push 2
push dword [esi + 0x870]
call dword [0x100f273c]
push dword [ebp - 0x30]
push dword [esi + 0x870]
call dword [0x100f2728]
movd xmm0, edi
mov ecx, 0xff
cvtdq2pd xmm0, xmm0
mov edi, esi
mulsd xmm0, qword [0x100daa50]
cvttsd2si eax, xmm0
cmp eax, ecx
cmovg eax, ecx
xor ecx, ecx
test eax, eax
cmovns ecx, eax
mov eax, dword [0x100f2748]
mov eax, dword [eax + 0xab6214]
test eax, eax
jle 0x10083713
mov dword [eax + 0x7e8], ecx
jmp 0x10083713
sub esp, 0x18
mov ecx, esp
push 0x13
mov dword [ecx + 0x10], 0
mov dword [ecx + 0x14], 0xf
push str.HeroIconSizeMiniMap
mov byte [ecx], 0
call fcn.1000ecc0
call fcn.1006bfe0
add esp, 0x18
cmp esi, eax
jne 0x10081c85
movd xmm0, edi
lea ecx, [ebp - 0x48]
cvtdq2ps xmm0, xmm0
divss xmm0, dword [0x100f254c]
movss dword [ebp - 0x30], xmm0
divss xmm0, dword [0x100f2548]
cvttss2si edx, xmm0
call fcn.1000ee30
push 0x100d9c90
mov edx, eax
mov byte [ebp - 4], 0xd
lea ecx, [ebp - 0x78]
call fcn.10012c00
add esp, 4
lea ecx, [ebp - 0x60]
push eax
call fcn.10012470
mov edx, dword [ebp - 0x64]
cmp edx, 0x10
jb 0x10081b90
mov ecx, dword [ebp - 0x78]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x10081b86
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x10083917
push edx
push ecx
call fcn.10097faf
add esp, 8
mov byte [ebp - 4], 7
mov edx, dword [ebp - 0x34]
mov dword [ebp - 0x68], 0
mov dword [ebp - 0x64], 0xf
mov byte [ebp - 0x78], 0
cmp edx, 0x10
jb 0x10081bda
mov ecx, dword [ebp - 0x48]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x10081bd0
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x1008391c
push edx
push ecx
call fcn.10097faf
add esp, 8
cmp dword [ebp - 0x4c], 0x10
lea eax, [ebp - 0x60]
mov edi, dword [ebp - 0x180]
cmovae eax, dword [ebp - 0x60]
push eax
lea ecx, [edi + 0x868]
call fcn.10018fd0
cmp byte [0x100f25af], 0
je 0x10083713
mov eax, dword [0x100f2708]
test eax, eax
jle 0x10083713
mov eax, dword [eax]
test eax, eax
jle 0x10083713
mov eax, dword [eax + 0x3c0]
test eax, eax
jle 0x10083713
movss xmm1, dword [ebp - 0x30]
mulss xmm1, dword [0x100da390]
movaps xmm0, xmm1
movss dword [eax + 0x410], xmm1
xorps xmm0, xmmword [0x100dab80]
movss dword [eax + 0x40c], xmm0
movss dword [eax + 0x418], xmm0
movss dword [eax + 0x41c], xmm0
movss dword [eax + 0x424], xmm1
movss dword [eax + 0x428], xmm1
movss dword [eax + 0x430], xmm1
movss dword [eax + 0x434], xmm0
jmp 0x10083713
sub esp, 0x18
mov ecx, esp
push 0xf
mov dword [ecx + 0x10], 0
mov dword [ecx + 0x14], 0xf
push str.PersonalLatency
mov byte [ecx], 0
call fcn.1000ecc0
call fcn.1006bfe0
add esp, 0x18
cmp esi, eax
jne 0x10081d1f
mov dword [0x100f24fc], edi
mov edx, 0x20
test edi, edi
jle 0x10081ccd
mov cl, 1
call fcn.10080720
mov cl, 1
jmp 0x10081cde
cmp byte [0x100f257b], 0
sete cl
call fcn.10080720
xor cl, cl
mov edx, 0x40
call fcn.10080720
xor edx, edx
cmp edi, 1
jne 0x10081cf4
lea edx, [edi + 0x31]
jmp 0x10081d09
cmp edi, 2
jne 0x10081cfe
lea edx, [edi + 0x17]
jmp 0x10081d09
cmp edi, 3
mov eax, 0xb
cmove edx, eax
mov ecx, dword [0x100f2748]
lea ecx, [ecx + 0x551770]
call fcn.1008ce90
jmp 0x1008370d
sub esp, 0x18
mov ecx, esp
push 0xd
mov dword [ecx + 0x10], 0
mov dword [ecx + 0x14], 0xf
push str.MaxFPSAllowed
mov byte [ecx], 0
call fcn.1000ecc0
call fcn.1006bfe0
add esp, 0x18
cmp esi, eax
jne 0x10081e25
cmp edi, 0x12d
jne 0x10081dac
mov eax, dword [0x100f2748]
mov ecx, 0x54583131
add eax, 0x32c8e0
call eax
test eax, eax
je 0x10081d8b
mov ecx, dword [eax + 0x134]
test ecx, ecx
je 0x10081d8b
cmp ecx, 0x44
jb 0x10081d8b
mov eax, dword [eax + 0x138]
mov edx, dword [eax + 0x10c]
jmp 0x10081d90
mov edx, 0x100d6824
mov ecx, edx
lea esi, [ecx + 1]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x10081d95
sub ecx, esi
push ecx
push edx
lea ecx, [ebp - 0x60]
call fcn.1000ecc0
push 0xffffffffffffffff
jmp 0x10081df4
mov edx, edi
lea ecx, [ebp - 0x48]
call fcn.1000ee30
push eax
lea ecx, [ebp - 0x60]
call fcn.10012470
mov edx, dword [ebp - 0x34]
cmp edx, 0x10
jb 0x10081df3
mov ecx, dword [ebp - 0x48]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x10081de9
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x10083921
push edx
push ecx
call fcn.10097faf
add esp, 8
push edi
mov eax, dword [0x100f2748]
add eax, 0x383640
call eax
mov edi, dword [ebp - 0x180]
lea eax, [ebp - 0x60]
add esp, 4
cmp dword [ebp - 0x4c], 0x10
cmovae eax, dword [ebp - 0x60]
lea ecx, [edi + 0x868]
push eax
call fcn.10018fd0
jmp 0x10083713
sub esp, 0x18
mov ecx, esp
push 0x10
mov dword [ecx + 0x10], 0
mov dword [ecx + 0x14], 0xf
push str.GameCameraHeight
mov byte [ecx], 0
call fcn.1000ecc0
call fcn.1006bfe0
add esp, 0x18
cmp esi, eax
jne 0x10081fb1
mov ecx, 0x93645c
mov dword [ebp - 0x184], 0
mov dword [ebp - 0x188], ecx
nop dword [eax]
mov esi, dword [0x100f2748]
lea eax, [ebp - 0x7c]
push eax
push 0x40
add esi, ecx
mov dword [ebp - 0x7c], 0x40
push 4
push esi
call dword [sym.imp.KERNEL32.dll_VirtualProtect]
mov eax, dword [ebp - 0x184]
movd xmm0, eax
cvtdq2pd xmm0, xmm0
shr eax, 0x1f
addsd xmm0, qword [eax*8 + 0x100dab60]
lea eax, [ebp - 0x7c]
push eax
cvtpd2ps xmm1, xmm0
movd xmm0, edi
mulss xmm1, dword [0x100daac8]
cvtdq2ps xmm0, xmm0
subss xmm0, xmm1
movss dword [esi], xmm0
push dword [ebp - 0x7c]
push 4
push esi
call dword [sym.imp.KERNEL32.dll_VirtualProtect]
mov eax, dword [ebp - 0x184]
mov ecx, dword [ebp - 0x188]
inc eax
sub ecx, 4
mov dword [ebp - 0x184], eax
mov dword [ebp - 0x188], ecx
cmp eax, 6
jb 0x10081e70
mov eax, dword [0x100f2748]
lea ecx, [ebp - 0x30]
push ecx
mov ecx, dword [0x100f274c]
add eax, 0x306d80
xor edx, edx
mov dword [ebp - 0x30], 0
call eax
mov edx, edi
lea ecx, [ebp - 0x48]
call fcn.1000ee30
push eax
lea ecx, [ebp - 0x60]
call fcn.10012470
mov edx, dword [ebp - 0x34]
cmp edx, 0x10
jb 0x10081f5e
mov ecx, dword [ebp - 0x48]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x10081f54
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x10083926
push edx
push ecx
call fcn.10097faf
add esp, 8
cmp dword [ebp - 0x4c], 0x10
lea eax, [ebp - 0x60]
mov ecx, dword [ebp - 0x180]
cmovae eax, dword [ebp - 0x60]
add ecx, 0x868
push eax
call fcn.10018fd0
sub esp, 0x18
mov ecx, esp
push 0x10
mov dword [ecx + 0x10], 0
mov dword [ecx + 0x14], 0xf
push str.GameCameraHeight
mov byte [ecx], 0
call fcn.1000ecc0
mov edx, edi
mov ecx, 0x43414d48
call fcn.100812e0
add esp, 0x18
jmp 0x1008370d
sub esp, 0x18
mov ecx, esp
push 0x1d
mov dword [ecx + 0x10], 0
mov dword [ecx + 0x14], 0xf
push str.AutoselectSummonedUnitsRadius
mov byte [ecx], 0
call fcn.1000ecc0
call fcn.1006bfe0
add esp, 0x18
cmp esi, eax
jne 0x1008207d
mov edx, edi
lea ecx, [ebp - 0x48]
call fcn.1000ee30
push eax
lea ecx, [ebp - 0x60]
call fcn.10012470
mov edx, dword [ebp - 0x34]
cmp edx, 0x10
jb 0x1008202a
mov ecx, dword [ebp - 0x48]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x10082020
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x1008392b
push edx
push ecx
call fcn.10097faf
add esp, 8
cmp dword [ebp - 0x4c], 0x10
lea eax, [ebp - 0x60]
mov ecx, dword [ebp - 0x180]
cmovae eax, dword [ebp - 0x60]
add ecx, 0x868
push eax
call fcn.10018fd0
sub esp, 0x18
mov ecx, esp
push 0x1d
mov dword [ecx + 0x10], 0
mov dword [ecx + 0x14], 0xf
push str.AutoselectSummonedUnitsRadius
mov byte [ecx], 0
call fcn.1000ecc0
mov edx, edi
mov ecx, 0x41535552
call fcn.100812e0
add esp, 0x18
jmp 0x1008370d
sub esp, 0x18
mov ecx, esp
push 0x13
mov dword [ecx + 0x10], 0
mov dword [ecx + 0x14], 0xf
push str.ChatMessageDuration
mov byte [ecx], 0
call fcn.1000ecc0
call fcn.1006bfe0
add esp, 0x18
cmp esi, eax
jne 0x10082190
mov edx, edi
lea ecx, [ebp - 0x48]
call fcn.1000ee30
push 0x100d7c60
mov edx, eax
mov byte [ebp - 4], 0xe
lea ecx, [ebp - 0x78]
call fcn.10012c00
add esp, 4
lea ecx, [ebp - 0x60]
push eax
call fcn.10012470
mov edx, dword [ebp - 0x64]
cmp edx, 0x10
jb 0x1008210c
mov ecx, dword [ebp - 0x78]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x10082102
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x10083930
push edx
push ecx
call fcn.10097faf
add esp, 8
mov byte [ebp - 4], 7
mov edx, dword [ebp - 0x34]
mov dword [ebp - 0x68], 0
mov dword [ebp - 0x64], 0xf
mov byte [ebp - 0x78], 0
cmp edx, 0x10
jb 0x10082156
mov ecx, dword [ebp - 0x48]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x1008214c
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x10083935
push edx
push ecx
call fcn.10097faf
add esp, 8
cmp dword [ebp - 0x4c], 0x10
lea eax, [ebp - 0x60]
mov ecx, dword [ebp - 0x180]
cmovae eax, dword [ebp - 0x60]
add ecx, 0x868
push eax
call fcn.10018fd0
mov ecx, dword [0x100f2748]
movd xmm1, edi
cvtdq2ps xmm1, xmm1
lea ecx, [ecx + 0x934218]
call fcn.1008cef0
jmp 0x1008370d
sub esp, 0x18
mov ecx, esp
push 0x13
mov dword [ecx + 0x10], 0
mov dword [ecx + 0x14], 0xf
push str.WaterColorSelectRed
mov byte [ecx], 0
call fcn.1000ecc0
call fcn.1006bfe0
add esp, 0x18
cmp esi, eax
jne 0x100825f9
mov eax, 0x64
sub eax, edi
movd xmm0, eax
mov eax, 0xff
cvtdq2ps xmm0, xmm0
mulss xmm0, dword [0x100daa78]
cvttss2si ecx, xmm0
push ecx
sub eax, ecx
push ecx
lea ecx, [ebp - 0x168]
mov dword [0x100f2538], eax
call fcn.100852f0
mov ecx, eax
call fcn.10085060
lea eax, [ebp - 0x48]
push eax
lea ecx, [ebp - 0x178]
call fcn.10084a40
push eax
lea ecx, [ebp - 0x94]
call fcn.10012470
mov edx, dword [ebp - 0x34]
cmp edx, 0x10
jb 0x1008224b
mov ecx, dword [ebp - 0x48]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x10082241
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x1008393a
push edx
push ecx
call fcn.10097faf
add esp, 8
cmp dword [ebp - 0x84], 1
mov edx, edi
jne 0x1008247e
lea ecx, [ebp - 0x1c0]
call fcn.1000ee30
mov esi, eax
lea eax, [ebp - 0x94]
mov byte [ebp - 4], 0xf
push eax
mov edx, str.c00FF0
lea ecx, [ebp - 0x48]
call fcn.10012b60
add esp, 4
push str.0123456789ABDEFGHIJKLMNOPQRSTUVWXYZ
mov edx, eax
mov byte [ebp - 4], 0x10
lea ecx, [ebp - 0x1d8]
call fcn.10012c00
add esp, 4
lea ecx, [ebp - 0x94]
mov byte [ebp - 4], 0x11
push ecx
mov edx, eax
lea ecx, [ebp - 0x2c]
call fcn.10012d70
add esp, 4
push esi
mov edx, eax
mov byte [ebp - 4], 0x12
lea ecx, [ebp - 0x1a4]
call fcn.10012cf0
add esp, 4
push 0x100d9cb0
mov edx, eax
mov byte [ebp - 4], 0x13
lea ecx, [ebp - 0x78]
call fcn.10012c00
add esp, 4
lea ecx, [ebp - 0x60]
push eax
call fcn.10012470
mov edx, dword [ebp - 0x64]
cmp edx, 0x10
jb 0x1008231b
mov ecx, dword [ebp - 0x78]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x10082311
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x1008393f
push edx
push ecx
call fcn.10097faf
add esp, 8
mov byte [ebp - 4], 0x12
mov edx, dword [ebp - 0x190]
mov dword [ebp - 0x68], 0
mov dword [ebp - 0x64], 0xf
mov byte [ebp - 0x78], 0
cmp edx, 0x10
jb 0x1008236b
mov ecx, dword [ebp - 0x1a4]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x10082361
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x10083944
push edx
push ecx
call fcn.10097faf
add esp, 8
mov byte [ebp - 4], 0x11
mov edx, dword [ebp - 0x18]
mov dword [ebp - 0x194], 0
mov dword [ebp - 0x190], 0xf
mov byte [ebp - 0x1a4], 0
cmp edx, 0x10
jb 0x100823be
mov ecx, dword [ebp - 0x2c]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x100823b4
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x10083949
push edx
push ecx
call fcn.10097faf
add esp, 8
mov byte [ebp - 4], 0x10
mov edx, dword [ebp - 0x1c4]
mov dword [ebp - 0x1c], 0
mov dword [ebp - 0x18], 0xf
mov byte [ebp - 0x2c], 0
cmp edx, 0x10
jb 0x1008240e
mov ecx, dword [ebp - 0x1d8]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x10082404
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x1008394e
push edx
push ecx
call fcn.10097faf
add esp, 8
mov byte [ebp - 4], 0xf
mov edx, dword [ebp - 0x34]
mov dword [ebp - 0x1c8], 0
mov dword [ebp - 0x1c4], 0xf
mov byte [ebp - 0x1d8], 0
cmp edx, 0x10
jb 0x10082461
mov ecx, dword [ebp - 0x48]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x10082457
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x10083953
push edx
push ecx
call fcn.10097faf
add esp, 8
mov dword [ebp - 0x38], 0
lea ecx, [ebp - 0x1c0]
mov dword [ebp - 0x34], 0xf
mov byte [ebp - 0x48], 0
jmp 0x10082521
lea ecx, [ebp - 0x1a4]
call fcn.1000ee30
mov esi, eax
lea eax, [ebp - 0x94]
mov byte [ebp - 4], 0x14
push eax
mov edx, str.c00FF
lea ecx, [ebp - 0x78]
call fcn.10012b60
add esp, 4
lea ecx, [ebp - 0x94]
mov byte [ebp - 4], 0x15
push ecx
mov edx, eax
lea ecx, [ebp - 0x1d8]
call fcn.10012d70
add esp, 4
push esi
mov edx, eax
mov byte [ebp - 4], 0x16
lea ecx, [ebp - 0x48]
call fcn.10012cf0
add esp, 4
push 0x100d9cb0
mov edx, eax
mov byte [ebp - 4], 0x17
lea ecx, [ebp - 0x1c0]
call fcn.10012c00
add esp, 4
lea ecx, [ebp - 0x60]
push eax
call fcn.10012470
lea ecx, [ebp - 0x1c0]
call fcn.1000ec00
lea ecx, [ebp - 0x48]
call fcn.1000ec00
lea ecx, [ebp - 0x1d8]
call fcn.1000ec00
lea ecx, [ebp - 0x78]
call fcn.1000ec00
lea ecx, [ebp - 0x1a4]
mov byte [ebp - 4], 7
call fcn.1000ec00
cmp dword [ebp - 0x4c], 0x10
lea eax, [ebp - 0x60]
mov edi, dword [ebp - 0x180]
cmovae eax, dword [ebp - 0x60]
push eax
lea ecx, [edi + 0x868]
call fcn.10018fd0
cmp dword [0x100f26a8], 5
jne 0x100825de
mov eax, dword [0x100f2534]
movzx ecx, byte [0x100f2538]
shl eax, 8
or ecx, eax
movzx eax, byte [0x100f252c]
shl ecx, 8
or ecx, eax
movzx eax, byte [0x100f2528]
shl ecx, 8
or ecx, eax
call fcn.1008ca20
sub esp, 0x18
mov ecx, esp
push 0x18
mov dword [ecx + 0x10], 0
mov dword [ecx + 0x14], 0xf
push str.WaterColorPreviewTexture
mov byte [ecx], 0
call fcn.1000ecc0
call fcn.1006bfe0
movzx ecx, byte [0x100f2528]
add esp, 0x18
push ecx
movzx ecx, byte [0x100f252c]
push ecx
movzx ecx, byte [0x100f2538]
push ecx
movzx ecx, byte [0x100f2534]
push ecx
mov ecx, dword [eax*4 + 0x1010481c]
add ecx, 0x228
call fcn.10018f80
mov dword [ebp - 0x38], 0
mov dword [ebp - 0x34], 0xf
mov byte [ebp - 0x48], 0
mov byte [ebp - 4], 0x18
jmp 0x10082bc1
sub esp, 0x18
mov ecx, esp
push 0x15
mov dword [ecx + 0x10], 0
mov dword [ecx + 0x14], 0xf
push str.WaterColorSelectGreen
mov byte [ecx], 0
call fcn.1000ecc0
call fcn.1006bfe0
add esp, 0x18
cmp esi, eax
jne 0x10082899
mov eax, 0x64
sub eax, edi
movd xmm0, eax
mov eax, 0xff
cvtdq2ps xmm0, xmm0
mulss xmm0, dword [0x100daa78]
cvttss2si ecx, xmm0
push ecx
sub eax, ecx
push ecx
lea ecx, [ebp - 0x168]
mov dword [0x100f252c], eax
call fcn.100852f0
mov ecx, eax
call fcn.10085060
lea eax, [ebp - 0x1c0]
push eax
lea ecx, [ebp - 0x178]
call fcn.10084a40
push eax
lea ecx, [ebp - 0x94]
call fcn.10012470
lea ecx, [ebp - 0x1c0]
call fcn.1000ec00
mov edx, edi
lea ecx, [ebp - 0x2c]
call fcn.1000ee30
cmp dword [ebp - 0x84], 1
mov esi, eax
jne 0x1008270a
lea eax, [ebp - 0x94]
mov byte [ebp - 4], 0x19
push eax
mov edx, str.c000
lea ecx, [ebp - 0x1a4]
call fcn.10012b60
add esp, 4
push 0x100d9cb4
mov edx, eax
mov byte [ebp - 4], 0x1a
lea ecx, [ebp - 0x78]
call fcn.10012c00
add esp, 4
lea ecx, [ebp - 0x94]
mov byte [ebp - 4], 0x1b
push ecx
mov edx, eax
lea ecx, [ebp - 0x1d8]
call fcn.10012d70
add esp, 4
push esi
mov edx, eax
mov byte [ebp - 4], 0x1c
lea ecx, [ebp - 0x48]
call fcn.10012cf0
add esp, 4
mov byte [ebp - 4], 0x1d
jmp 0x1008276f
lea eax, [ebp - 0x94]
mov byte [ebp - 4], 0x1e
push eax
mov edx, str.c00
lea ecx, [ebp - 0x1a4]
call fcn.10012b60
add esp, 4
push 0x100d9cc0
mov edx, eax
mov byte [ebp - 4], 0x1f
lea ecx, [ebp - 0x78]
call fcn.10012c00
add esp, 4
lea ecx, [ebp - 0x94]
mov byte [ebp - 4], 0x20
push ecx
mov edx, eax
lea ecx, [ebp - 0x1d8]
call fcn.10012d70
add esp, 4
push esi
mov edx, eax
mov byte [ebp - 4], 0x21
lea ecx, [ebp - 0x48]
call fcn.10012cf0
add esp, 4
mov byte [ebp - 4], 0x22
push 0x100d9cb0
mov edx, eax
lea ecx, [ebp - 0x1c0]
call fcn.10012c00
add esp, 4
lea ecx, [ebp - 0x60]
push eax
call fcn.10012470
lea ecx, [ebp - 0x1c0]
call fcn.1000ec00
lea ecx, [ebp - 0x48]
call fcn.1000ec00
lea ecx, [ebp - 0x1d8]
call fcn.1000ec00
lea ecx, [ebp - 0x78]
call fcn.1000ec00
lea ecx, [ebp - 0x1a4]
call fcn.1000ec00
lea ecx, [ebp - 0x2c]
mov byte [ebp - 4], 7
call fcn.1000ec00
cmp dword [ebp - 0x4c], 0x10
lea eax, [ebp - 0x60]
mov edi, dword [ebp - 0x180]
cmovae eax, dword [ebp - 0x60]
push eax
lea ecx, [edi + 0x868]
call fcn.10018fd0
cmp dword [0x100f26a8], 5
jne 0x1008287e
mov eax, dword [0x100f2534]
movzx ecx, byte [0x100f2538]
shl eax, 8
or ecx, eax
movzx eax, byte [0x100f252c]
shl ecx, 8
or ecx, eax
movzx eax, byte [0x100f2528]
shl ecx, 8
or ecx, eax
call fcn.1008ca20
sub esp, 0x18
mov ecx, esp
push 0x18
mov dword [ecx + 0x10], 0
mov dword [ecx + 0x14], 0xf
push str.WaterColorPreviewTexture
mov byte [ecx], 0
call fcn.1000ecc0
call fcn.1006bfe0
movzx ecx, byte [0x100f2528]
add esp, 0x18
push ecx
movzx ecx, byte [0x100f252c]
push ecx
movzx ecx, byte [0x100f2538]
push ecx
movzx ecx, byte [0x100f2534]
push ecx
mov ecx, dword [eax*4 + 0x1010481c]
add ecx, 0x228
call fcn.10018f80
mov dword [ebp - 0x38], 0
mov dword [ebp - 0x34], 0xf
mov byte [ebp - 0x48], 0
mov byte [ebp - 4], 0x23
jmp 0x10082bc1
sub esp, 0x18
mov ecx, esp
push 0x14
mov dword [ecx + 0x10], 0
mov dword [ecx + 0x14], 0xf
push str.WaterColorSelectBlue
mov byte [ecx], 0
call fcn.1000ecc0
call fcn.1006bfe0
add esp, 0x18
cmp esi, eax
jne 0x10082bf3
mov eax, 0x64
sub eax, edi
movd xmm0, eax
mov eax, 0xff
cvtdq2ps xmm0, xmm0
mulss xmm0, dword [0x100daa78]
cvttss2si ecx, xmm0
push ecx
sub eax, ecx
push ecx
lea ecx, [ebp - 0x168]
mov dword [0x100f2528], eax
call fcn.100852f0
mov ecx, eax
call fcn.10085060
lea eax, [ebp - 0x1c0]
push eax
lea ecx, [ebp - 0x178]
call fcn.10084a40
push eax
lea ecx, [ebp - 0x94]
call fcn.10012470
lea ecx, [ebp - 0x1c0]
call fcn.1000ec00
cmp dword [ebp - 0x84], 1
mov edx, edi
jne 0x10082a27
lea ecx, [ebp - 0xac]
call fcn.1000ee30
mov esi, eax
lea eax, [ebp - 0x94]
mov byte [ebp - 4], 0x24
push eax
mov edx, str.c000
lea ecx, [ebp - 0x2c]
call fcn.10012b60
add esp, 4
push str.0123456789ABDEFGHIJKLMNOPQRSTUVWXYZ
mov edx, eax
mov byte [ebp - 4], 0x25
lea ecx, [ebp - 0x1a4]
call fcn.10012c00
add esp, 4
lea ecx, [ebp - 0x94]
mov byte [ebp - 4], 0x26
push ecx
mov edx, eax
lea ecx, [ebp - 0x78]
call fcn.10012d70
add esp, 4
push 0x100d9cc0
mov edx, eax
mov byte [ebp - 4], 0x27
lea ecx, [ebp - 0x1d8]
call fcn.10012c00
add esp, 4
push esi
mov edx, eax
mov byte [ebp - 4], 0x28
lea ecx, [ebp - 0x48]
call fcn.10012cf0
add esp, 4
push 0x100d9cb0
mov edx, eax
mov byte [ebp - 4], 0x29
lea ecx, [ebp - 0x1c0]
call fcn.10012c00
add esp, 4
lea ecx, [ebp - 0x60]
push eax
call fcn.10012470
lea ecx, [ebp - 0x1c0]
call fcn.1000ec00
lea ecx, [ebp - 0x48]
call fcn.1000ec00
lea ecx, [ebp - 0x1d8]
call fcn.1000ec00
lea ecx, [ebp - 0x78]
call fcn.1000ec00
lea ecx, [ebp - 0x1a4]
call fcn.1000ec00
lea ecx, [ebp - 0x2c]
call fcn.1000ec00
lea ecx, [ebp - 0xac]
jmp 0x10082aee
lea ecx, [ebp - 0x1a4]
call fcn.1000ee30
mov esi, eax
lea eax, [ebp - 0x94]
mov byte [ebp - 4], 0x2a
push eax
mov edx, str.c00
lea ecx, [ebp - 0x78]
call fcn.10012b60
add esp, 4
lea ecx, [ebp - 0x94]
mov byte [ebp - 4], 0x2b
push ecx
mov edx, eax
lea ecx, [ebp - 0x1d8]
call fcn.10012d70
add esp, 4
push 0x100d9cc0
mov edx, eax
mov byte [ebp - 4], 0x2c
lea ecx, [ebp - 0x48]
call fcn.10012c00
add esp, 4
push esi
mov edx, eax
mov byte [ebp - 4], 0x2d
lea ecx, [ebp - 0x1c0]
call fcn.10012cf0
add esp, 4
push 0x100d9cb0
mov edx, eax
mov byte [ebp - 4], 0x2e
lea ecx, [ebp - 0xac]
call fcn.10012c00
add esp, 4
lea ecx, [ebp - 0x60]
push eax
call fcn.10012470
lea ecx, [ebp - 0xac]
call fcn.1000ec00
lea ecx, [ebp - 0x1c0]
call fcn.1000ec00
lea ecx, [ebp - 0x48]
call fcn.1000ec00
lea ecx, [ebp - 0x1d8]
call fcn.1000ec00
lea ecx, [ebp - 0x78]
call fcn.1000ec00
lea ecx, [ebp - 0x1a4]
mov byte [ebp - 4], 7
call fcn.1000ec00
cmp dword [ebp - 0x4c], 0x10
lea eax, [ebp - 0x60]
mov edi, dword [ebp - 0x180]
cmovae eax, dword [ebp - 0x60]
push eax
lea ecx, [edi + 0x868]
call fcn.10018fd0
cmp dword [0x100f26a8], 5
jne 0x10082bab
mov eax, dword [0x100f2534]
movzx ecx, byte [0x100f2538]
shl eax, 8
or ecx, eax
movzx eax, byte [0x100f252c]
shl ecx, 8
or ecx, eax
movzx eax, byte [0x100f2528]
shl ecx, 8
or ecx, eax
call fcn.1008ca20
sub esp, 0x18
mov ecx, esp
push 0x18
mov dword [ecx + 0x10], 0
mov dword [ecx + 0x14], 0xf
push str.WaterColorPreviewTexture
mov byte [ecx], 0
call fcn.1000ecc0
call fcn.1006bfe0
movzx ecx, byte [0x100f2528]
add esp, 0x18
push ecx
movzx ecx, byte [0x100f252c]
push ecx
movzx ecx, byte [0x100f2538]
push ecx
movzx ecx, byte [0x100f2534]
push ecx
mov ecx, dword [eax*4 + 0x1010481c]
add ecx, 0x228
call fcn.10018f80
mov dword [ebp - 0x38], 0
mov dword [ebp - 0x34], 0xf
mov byte [ebp - 0x48], 0
mov byte [ebp - 4], 0x2f
lea eax, [ebp - 0x48]
push eax
lea ecx, [ebp - 0x178]
call fcn.10084920
lea ecx, [ebp - 0x48]
mov byte [ebp - 4], 7
call fcn.1000ec00
push 0
push 0x100d6824
lea ecx, [ebp - 0x94]
call fcn.1000ecc0
jmp 0x10083713
sub esp, 0x18
mov ecx, esp
push 0x15
mov dword [ecx + 0x10], 0
mov dword [ecx + 0x14], 0xf
push str.WaterColorSelectAlpha
mov byte [ecx], 0
call fcn.1000ecc0
call fcn.1006bfe0
add esp, 0x18
cmp esi, eax
jne 0x10082d46
mov eax, 0x64
lea ecx, [ebp - 0x1c0]
sub eax, edi
mov edx, edi
movd xmm0, eax
cvtdq2ps xmm0, xmm0
mulss xmm0, dword [0x100daa78]
cvttss2si eax, xmm0
mov dword [0x100f2534], eax
call fcn.1000ee30
push 0x100d9c90
mov edx, eax
mov byte [ebp - 4], 0x30
lea ecx, [ebp - 0xac]
call fcn.10012c00
add esp, 4
lea ecx, [ebp - 0x60]
push eax
call fcn.10012470
lea ecx, [ebp - 0xac]
call fcn.1000ec00
lea ecx, [ebp - 0x1c0]
mov byte [ebp - 4], 7
call fcn.1000ec00
cmp dword [ebp - 0x4c], 0x10
lea eax, [ebp - 0x60]
mov edi, dword [ebp - 0x180]
cmovae eax, dword [ebp - 0x60]
push eax
lea ecx, [edi + 0x868]
call fcn.10018fd0
cmp dword [0x100f26a8], 5
jne 0x10083713
mov eax, dword [0x100f2534]
movzx ecx, byte [0x100f2538]
shl eax, 8
or ecx, eax
movzx eax, byte [0x100f252c]
shl ecx, 8
or ecx, eax
movzx eax, byte [0x100f2528]
shl ecx, 8
or ecx, eax
call fcn.1008ca20
sub esp, 0x18
mov ecx, esp
push 0x18
mov dword [ecx + 0x10], 0
mov dword [ecx + 0x14], 0xf
push str.WaterColorPreviewTexture
mov byte [ecx], 0
call fcn.1000ecc0
call fcn.1006bfe0
movzx ecx, byte [0x100f2528]
add esp, 0x18
push ecx
movzx ecx, byte [0x100f252c]
push ecx
movzx ecx, byte [0x100f2538]
push ecx
movzx ecx, byte [0x100f2534]
push ecx
mov ecx, dword [eax*4 + 0x1010481c]
add ecx, 0x228
call fcn.10018f80
jmp 0x10083713
sub esp, 0x18
mov ecx, esp
push 0x1b
mov dword [ecx + 0x10], 0
mov dword [ecx + 0x14], 0xf
push str.CustomChatMessagesSelectRed
mov byte [ecx], 0
call fcn.1000ecc0
call fcn.1006bfe0
add esp, 0x18
cmp esi, eax
jne 0x10082fee
mov eax, 0x64
sub eax, edi
movd xmm0, eax
mov eax, 0xff
cvtdq2ps xmm0, xmm0
mulss xmm0, dword [0x100daa78]
cvttss2si ecx, xmm0
push ecx
sub eax, ecx
push ecx
lea ecx, [ebp - 0x168]
mov dword [0x100f2530], eax
call fcn.100852f0
mov ecx, eax
call fcn.10085060
lea eax, [ebp - 0xac]
push eax
lea ecx, [ebp - 0x178]
call fcn.10084a40
push eax
lea ecx, [ebp - 0x94]
call fcn.10012470
lea ecx, [ebp - 0xac]
call fcn.1000ec00
cmp dword [ebp - 0x84], 1
mov edx, edi
jne 0x10082eb6
lea ecx, [ebp - 0x1a4]
call fcn.1000ee30
mov esi, eax
lea eax, [ebp - 0x94]
mov byte [ebp - 4], 0x31
push eax
mov edx, str.c00FF0
lea ecx, [ebp - 0x78]
call fcn.10012b60
add esp, 4
push str.0123456789ABDEFGHIJKLMNOPQRSTUVWXYZ
mov edx, eax
mov byte [ebp - 4], 0x32
lea ecx, [ebp - 0x1d8]
call fcn.10012c00
add esp, 4
lea ecx, [ebp - 0x94]
mov byte [ebp - 4], 0x33
push ecx
mov edx, eax
lea ecx, [ebp - 0x48]
call fcn.10012d70
add esp, 4
push esi
mov edx, eax
mov byte [ebp - 4], 0x34
lea ecx, [ebp - 0x1c0]
call fcn.10012cf0
add esp, 4
push 0x100d9cb0
mov edx, eax
mov byte [ebp - 4], 0x35
lea ecx, [ebp - 0xac]
call fcn.10012c00
add esp, 4
lea ecx, [ebp - 0x60]
push eax
call fcn.10012470
lea ecx, [ebp - 0xac]
call fcn.1000ec00
lea ecx, [ebp - 0x1c0]
call fcn.1000ec00
lea ecx, [ebp - 0x48]
call fcn.1000ec00
lea ecx, [ebp - 0x1d8]
call fcn.1000ec00
lea ecx, [ebp - 0x78]
call fcn.1000ec00
lea ecx, [ebp - 0x1a4]
jmp 0x10082f59
lea ecx, [ebp - 0x78]
call fcn.1000ee30
mov esi, eax
lea eax, [ebp - 0x94]
mov byte [ebp - 4], 0x36
push eax
mov edx, str.c00FF
lea ecx, [ebp - 0x1d8]
call fcn.10012b60
add esp, 4
lea ecx, [ebp - 0x94]
mov byte [ebp - 4], 0x37
push ecx
mov edx, eax
lea ecx, [ebp - 0x48]
call fcn.10012d70
add esp, 4
push esi
mov edx, eax
mov byte [ebp - 4], 0x38
lea ecx, [ebp - 0x1c0]
call fcn.10012cf0
add esp, 4
push 0x100d9cb0
mov edx, eax
mov byte [ebp - 4], 0x39
lea ecx, [ebp - 0xac]
call fcn.10012c00
add esp, 4
lea ecx, [ebp - 0x60]
push eax
call fcn.10012470
lea ecx, [ebp - 0xac]
call fcn.1000ec00
lea ecx, [ebp - 0x1c0]
call fcn.1000ec00
lea ecx, [ebp - 0x48]
call fcn.1000ec00
lea ecx, [ebp - 0x1d8]
call fcn.1000ec00
lea ecx, [ebp - 0x78]
mov byte [ebp - 4], 7
call fcn.1000ec00
cmp dword [ebp - 0x4c], 0x10
lea eax, [ebp - 0x60]
mov edi, dword [ebp - 0x180]
cmovae eax, dword [ebp - 0x60]
push eax
lea ecx, [edi + 0x868]
call fcn.10018fd0
sub esp, 0x18
mov ecx, esp
push 0x1b
mov dword [ecx + 0x10], 0
mov dword [ecx + 0x14], 0xf
push str.CustomChatMessagesColorText
mov byte [ecx], 0
call fcn.1000ecc0
call fcn.1006bfe0
movzx ecx, byte [0x100f251c]
add esp, 0x18
push ecx
movzx ecx, byte [0x100f2520]
push ecx
movzx ecx, byte [0x100f2530]
push ecx
mov ecx, dword [eax*4 + 0x1010481c]
add ecx, 0x4d8
call fcn.10019030
mov dword [ebp - 0x38], 0
mov dword [ebp - 0x34], 0xf
mov byte [ebp - 0x48], 0
mov byte [ebp - 4], 0x3a
jmp 0x10083536
sub esp, 0x18
mov ecx, esp
push 0x1d
mov dword [ecx + 0x10], 0
mov dword [ecx + 0x14], 0xf
push str.CustomChatMessagesSelectGreen
mov byte [ecx], 0
call fcn.1000ecc0
call fcn.1006bfe0
add esp, 0x18
cmp esi, eax
jne 0x10083251
mov eax, 0x64
sub eax, edi
movd xmm0, eax
mov eax, 0xff
cvtdq2ps xmm0, xmm0
mulss xmm0, dword [0x100daa78]
cvttss2si ecx, xmm0
push ecx
sub eax, ecx
push ecx
lea ecx, [ebp - 0x168]
mov dword [0x100f2520], eax
call fcn.100852f0
mov ecx, eax
call fcn.10085060
lea eax, [ebp - 0xac]
push eax
lea ecx, [ebp - 0x178]
call fcn.10084a40
push eax
lea ecx, [ebp - 0x94]
call fcn.10012470
lea ecx, [ebp - 0xac]
call fcn.1000ec00
mov edx, edi
lea ecx, [ebp - 0x1a4]
call fcn.1000ee30
cmp dword [ebp - 0x84], 1
mov esi, eax
jne 0x10083102
lea eax, [ebp - 0x94]
mov byte [ebp - 4], 0x3b
push eax
mov edx, str.c000
lea ecx, [ebp - 0x78]
call fcn.10012b60
add esp, 4
push 0x100d9cb4
mov edx, eax
mov byte [ebp - 4], 0x3c
lea ecx, [ebp - 0x1d8]
call fcn.10012c00
add esp, 4
lea ecx, [ebp - 0x94]
mov byte [ebp - 4], 0x3d
push ecx
mov edx, eax
lea ecx, [ebp - 0x48]
call fcn.10012d70
add esp, 4
push esi
mov edx, eax
mov byte [ebp - 4], 0x3e
lea ecx, [ebp - 0x1c0]
call fcn.10012cf0
add esp, 4
mov byte [ebp - 4], 0x3f
jmp 0x10083167
lea eax, [ebp - 0x94]
mov byte [ebp - 4], 0x40
push eax
mov edx, str.c00
lea ecx, [ebp - 0x78]
call fcn.10012b60
add esp, 4
push 0x100d9cc0
mov edx, eax
mov byte [ebp - 4], 0x41
lea ecx, [ebp - 0x1d8]
call fcn.10012c00
add esp, 4
lea ecx, [ebp - 0x94]
mov byte [ebp - 4], 0x42
push ecx
mov edx, eax
lea ecx, [ebp - 0x48]
call fcn.10012d70
add esp, 4
push esi
mov edx, eax
mov byte [ebp - 4], 0x43
lea ecx, [ebp - 0x1c0]
call fcn.10012cf0
add esp, 4
mov byte [ebp - 4], 0x44
push 0x100d9cb0
mov edx, eax
lea ecx, [ebp - 0xac]
call fcn.10012c00
add esp, 4
lea ecx, [ebp - 0x60]
push eax
call fcn.10012470
lea ecx, [ebp - 0xac]
call fcn.1000ec00
lea ecx, [ebp - 0x1c0]
call fcn.1000ec00
lea ecx, [ebp - 0x48]
call fcn.1000ec00
lea ecx, [ebp - 0x1d8]
call fcn.1000ec00
lea ecx, [ebp - 0x78]
call fcn.1000ec00
lea ecx, [ebp - 0x1a4]
mov byte [ebp - 4], 7
call fcn.1000ec00
cmp dword [ebp - 0x4c], 0x10
lea eax, [ebp - 0x60]
mov edi, dword [ebp - 0x180]
cmovae eax, dword [ebp - 0x60]
push eax
lea ecx, [edi + 0x868]
call fcn.10018fd0
sub esp, 0x18
mov ecx, esp
push 0x1b
mov dword [ecx + 0x10], 0
mov dword [ecx + 0x14], 0xf
push str.CustomChatMessagesColorText
mov byte [ecx], 0
call fcn.1000ecc0
call fcn.1006bfe0
movzx ecx, byte [0x100f251c]
add esp, 0x18
push ecx
movzx ecx, byte [0x100f2520]
push ecx
movzx ecx, byte [0x100f2530]
push ecx
mov ecx, dword [eax*4 + 0x1010481c]
add ecx, 0x4d8
call fcn.10019030
mov dword [ebp - 0x38], 0
mov dword [ebp - 0x34], 0xf
mov byte [ebp - 0x48], 0
mov byte [ebp - 4], 0x45
jmp 0x10083536
sub esp, 0x18
mov ecx, esp
push 0x1c
mov dword [ecx + 0x10], 0
mov dword [ecx + 0x14], 0xf
push str.CustomChatMessagesSelectBlue
mov byte [ecx], 0
call fcn.1000ecc0
call fcn.1006bfe0
add esp, 0x18
cmp esi, eax
jne 0x100835c3
mov eax, 0x64
sub eax, edi
movd xmm0, eax
mov eax, 0xff
cvtdq2ps xmm0, xmm0
mulss xmm0, dword [0x100daa78]
cvttss2si ecx, xmm0
push ecx
sub eax, ecx
push ecx
lea ecx, [ebp - 0x168]
mov dword [0x100f251c], eax
call fcn.100852f0
mov ecx, eax
call fcn.10085060
lea eax, [ebp - 0xac]
push eax
lea ecx, [ebp - 0x178]
call fcn.10084a40
push eax
lea ecx, [ebp - 0x94]
call fcn.10012470
lea ecx, [ebp - 0xac]
call fcn.1000ec00
cmp dword [ebp - 0x84], 1
mov edx, edi
jne 0x100833df
lea ecx, [ebp - 0x2c]
call fcn.1000ee30
mov esi, eax
lea eax, [ebp - 0x94]
mov byte [ebp - 4], 0x46
push eax
mov edx, str.c000
lea ecx, [ebp - 0x1a4]
call fcn.10012b60
add esp, 4
push str.0123456789ABDEFGHIJKLMNOPQRSTUVWXYZ
mov edx, eax
mov byte [ebp - 4], 0x47
lea ecx, [ebp - 0x78]
call fcn.10012c00
add esp, 4
lea ecx, [ebp - 0x94]
mov byte [ebp - 4], 0x48
push ecx
mov edx, eax
lea ecx, [ebp - 0x1d8]
call fcn.10012d70
add esp, 4
push 0x100d9cc0
mov edx, eax
mov byte [ebp - 4], 0x49
lea ecx, [ebp - 0x48]
call fcn.10012c00
add esp, 4
push esi
mov edx, eax
mov byte [ebp - 4], 0x4a
lea ecx, [ebp - 0x1c0]
call fcn.10012cf0
add esp, 4
push 0x100d9cb0
mov edx, eax
mov byte [ebp - 4], 0x4b
lea ecx, [ebp - 0xac]
call fcn.10012c00
add esp, 4
lea ecx, [ebp - 0x60]
push eax
call fcn.10012470
lea ecx, [ebp - 0xac]
call fcn.1000ec00
lea ecx, [ebp - 0x1c0]
call fcn.1000ec00
lea ecx, [ebp - 0x48]
call fcn.1000ec00
lea ecx, [ebp - 0x1d8]
call fcn.1000ec00
lea ecx, [ebp - 0x78]
call fcn.1000ec00
lea ecx, [ebp - 0x1a4]
call fcn.1000ec00
lea ecx, [ebp - 0x2c]
jmp 0x100834a6
lea ecx, [ebp - 0x1a4]
call fcn.1000ee30
mov esi, eax
lea eax, [ebp - 0x94]
mov byte [ebp - 4], 0x4c
push eax
mov edx, str.c00
lea ecx, [ebp - 0x78]
call fcn.10012b60
add esp, 4
lea ecx, [ebp - 0x94]
mov byte [ebp - 4], 0x4d
push ecx
mov edx, eax
lea ecx, [ebp - 0x1d8]
call fcn.10012d70
add esp, 4
push 0x100d9cc0
mov edx, eax
mov byte [ebp - 4], 0x4e
lea ecx, [ebp - 0x48]
call fcn.10012c00
add esp, 4
push esi
mov edx, eax
mov byte [ebp - 4], 0x4f
lea ecx, [ebp - 0x1c0]
call fcn.10012cf0
add esp, 4
push 0x100d9cb0
mov edx, eax
mov byte [ebp - 4], 0x50
lea ecx, [ebp - 0xac]
call fcn.10012c00
add esp, 4
lea ecx, [ebp - 0x60]
push eax
call fcn.10012470
lea ecx, [ebp - 0xac]
call fcn.1000ec00
lea ecx, [ebp - 0x1c0]
call fcn.1000ec00
lea ecx, [ebp - 0x48]
call fcn.1000ec00
lea ecx, [ebp - 0x1d8]
call fcn.1000ec00
lea ecx, [ebp - 0x78]
call fcn.1000ec00
lea ecx, [ebp - 0x1a4]
mov byte [ebp - 4], 7
call fcn.1000ec00
cmp dword [ebp - 0x4c], 0x10
lea eax, [ebp - 0x60]
mov edi, dword [ebp - 0x180]
cmovae eax, dword [ebp - 0x60]
push eax
lea ecx, [edi + 0x868]
call fcn.10018fd0
sub esp, 0x18
mov ecx, esp
push 0x1b
mov dword [ecx + 0x10], 0
mov dword [ecx + 0x14], 0xf
push str.CustomChatMessagesColorText
mov byte [ecx], 0
call fcn.1000ecc0
call fcn.1006bfe0
movzx ecx, byte [0x100f251c]
add esp, 0x18
push ecx
movzx ecx, byte [0x100f2520]
push ecx
movzx ecx, byte [0x100f2530]
push ecx
mov ecx, dword [eax*4 + 0x1010481c]
add ecx, 0x4d8
call fcn.10019030
mov dword [ebp - 0x38], 0
mov dword [ebp - 0x34], 0xf
mov byte [ebp - 0x48], 0
mov byte [ebp - 4], 0x51
lea eax, [ebp - 0x48]
push eax
lea ecx, [ebp - 0x178]
call fcn.10084920
lea ecx, [ebp - 0x48]
mov byte [ebp - 4], 7
call fcn.1000ec00
push 0
push 0x100d6824
lea ecx, [ebp - 0x94]
call fcn.1000ecc0
cmp byte [0x100f2518], 0
je 0x10083713
sub esp, 0x18
mov ecx, esp
push 0x12
mov dword [ecx + 0x10], 0
mov dword [ecx + 0x14], 0xf
push str.CustomChatMessages
mov byte [ecx], 0
call fcn.1000ecc0
movzx edx, byte [0x100f2530]
mov ecx, 0x4348434f
movzx eax, byte [0x100f2520]
shl edx, 8
or edx, eax
movzx eax, byte [0x100f251c]
shl edx, 8
or edx, eax
call fcn.100812e0
add esp, 0x18
jmp 0x10083713
sub esp, 0x18
mov ecx, esp
push 0x10
mov dword [ecx + 0x10], 0
mov dword [ecx + 0x14], 0xf
push str.ChatWheelSliderV
mov byte [ecx], 0
call fcn.1000ecc0
call fcn.1006bfe0
add esp, 0x18
cmp esi, eax
jne 0x1008370d
mov eax, 0xa
sub eax, edi
xor ecx, ecx
mov dword [ebp - 0x30], eax
mov dword [ebp - 0x184], ecx
lea edi, [eax*4 + 0x100e7278]
mov dword [ebp - 0x188], edi
nop dword [eax]
nop dword [eax + eax]
mov edx, ecx
lea ecx, [ebp - 0xac]
call fcn.100455e0
sub esp, 0x18
mov byte [ebp - 4], 0x52
mov ecx, esp
mov edx, str.ChatWheelSelectSound2
push eax
call fcn.10012b00
add esp, 4
call fcn.1006bfe0
add esp, 0x18
mov byte [ebp - 4], 7
lea ecx, [ebp - 0xac]
mov esi, eax
call fcn.1000ec00
mov ecx, dword [esi*4 + 0x1010481c]
push dword [edi]
add ecx, 0x4d8
call fcn.10018fd0
mov ecx, dword [ebp - 0x30]
mov edx, dword [ebp - 0x184]
mov eax, dword [esi*4 + 0x1010481c]
lea edi, [edx + ecx]
mov dword [eax + 0x74], edi
lea eax, [ecx + edx]
mov ecx, dword [esi*4 + 0x1010481c]
movzx eax, al
add ecx, 0x58
push eax
call fcn.1003d860
mov edx, dword [ebp - 0x184]
lea ecx, [ebp - 0xac]
call fcn.100455e0
sub esp, 0x18
mov byte [ebp - 4], 0x53
mov ecx, esp
mov edx, str.ChatWheelTestSound
push eax
call fcn.10012b00
add esp, 4
call fcn.1006bfe0
add esp, 0x18
mov byte [ebp - 4], 7
lea ecx, [ebp - 0xac]
mov esi, eax
call fcn.1000ec00
mov eax, dword [esi*4 + 0x1010481c]
mov ecx, dword [ebp - 0x184]
inc ecx
mov dword [ebp - 0x184], ecx
mov dword [eax + 0x74], edi
mov edi, dword [ebp - 0x188]
add edi, 4
mov dword [ebp - 0x188], edi
cmp ecx, 8
jb 0x10083620
mov edi, dword [ebp - 0x180]
cmp byte [ebx + 0xc], 0
je 0x1008386f
mov dword [ebp - 0xa0], 0
mov dword [ebp - 0x9c], 0xf
mov byte [ebp - 0xb0], 0
mov byte [ebp - 4], 0x54
lea ecx, [ebp - 0xb0]
push 0
push 0x100d6824
mov dword [ebp - 0xc4], 0
mov dword [ebp - 0xbc], 0
mov dword [ebp - 0xb8], 0
mov byte [ebp - 0xb4], 0
call fcn.1000ecc0
mov ecx, dword [ebp - 0x18c]
sub esp, 0x30
mov esi, esp
mov dword [ebp - 0xb8], ecx
mov dword [ebp - 0x30], esi
mov eax, dword [ebp - 0xc0]
mov dword [ebp - 0x17c], esp
mov dword [esi + 4], eax
mov eax, dword [ebp - 0xbc]
mov dword [esi + 8], eax
mov al, byte [ebp - 0xb4]
mov byte [esi + 0x10], al
lea eax, [ebp - 0xb0]
mov dword [esi + 0xc], ecx
lea ecx, [esi + 0x14]
push eax
mov dword [ebp - 0x98], 0x100d6824
mov dword [ebp - 0xc4], 0x8010
mov dword [esi], 0x8010
call fcn.10012510
mov eax, dword [ebp - 0x98]
mov dword [esi + 0x2c], eax
sub esp, 0x18
mov byte [ebp - 4], 0x55
lea eax, [edi + 0x1254]
mov dword [ebp - 0x30], esp
mov ecx, esp
push eax
call fcn.10012510
sub esp, 0x18
mov byte [ebp - 4], 0x56
lea eax, [edi + 0x1f8]
mov dword [ebp - 0x188], esp
mov ecx, esp
push eax
call fcn.10012510
sub esp, 0x18
mov byte [ebp - 4], 0x57
mov ecx, esp
push 0x100ef088
call fcn.10012510
mov byte [ebp - 4], 0x54
mov ecx, dword [edi + 0x1c8]
call fcn.1006d380
mov edx, dword [ebp - 0x9c]
add esp, 0x78
cmp edx, 0x10
jb 0x1008386f
mov ecx, dword [ebp - 0xb0]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x10083865
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x10083958
push edx
push ecx
call fcn.10097faf
add esp, 8
lea ecx, [ebp - 0x178]
call fcn.10083970
mov edx, dword [ebp - 0x80]
cmp edx, 0x10
jb 0x100838b1
mov ecx, dword [ebp - 0x94]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x100838a7
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x1008395d
push edx
push ecx
call fcn.10097faf
add esp, 8
mov edx, dword [ebp - 0x4c]
cmp edx, 0x10
jb 0x100838e5
mov ecx, dword [ebp - 0x60]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x100838db
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x10083962
push edx
push ecx
call fcn.10097faf
add esp, 8
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
mov ecx, dword [ebp - 0x14]
xor ecx, ebp
call fcn.10097f9e
mov esp, ebp
pop ebp
mov esp, ebx
pop ebx
ret
call fcn.1009d41c
call fcn.1009d41c
call fcn.1009d41c
call fcn.1009d41c
call fcn.1009d41c
call fcn.1009d41c
call fcn.1009d41c
call fcn.1009d41c
call fcn.1009d41c
call fcn.1009d41c
call fcn.1009d41c
call fcn.1009d41c
call fcn.1009d41c
call fcn.1009d41c
call fcn.1009d41c
call fcn.1009d41c
call fcn.1009d41c
call fcn.1009d41c
call fcn.1009d41c
call fcn.1009d41c
int3