Function at 0x140064d40
Capabilities:
Encode data using base64

Disassembly:
mov qword [rsp + 0x10], rbx
mov qword [rsp + 0x18], rsi
mov qword [rsp + 0x20], rdi
push rbp
push r12
push r13
push r14
push r15
lea rbp, [rsp - 0x90]
sub rsp, 0x190
mov rax, qword [0x140306028]
xor rax, rsp
mov qword [rbp + 0x88], rax
mov r14d, edx
mov r13, rcx
xor edi, edi
xorps xmm0, xmm0
movups xmmword [rsp + 0x40], xmm0
mov qword [rsp + 0x50], rdi
mov qword [rsp + 0x58], rdi
lea r8d, [rdi + 0xe]
lea rdx, str.Food:_Extra_XP
lea rcx, [rsp + 0x40]
call fcn.140019cb0
lea rdx, [rsp + 0x40]
mov rcx, qword [r13 + 0x30]
call fcn.14005ce10
test al, al
jne 0x140064df4
xorps xmm0, xmm0
movups xmmword [rbp + 0x68], xmm0
mov qword [rbp + 0x78], rdi
mov qword [rbp + 0x80], rdi
lea r8d, [rdi + 0xb]
lea rdx, str.Extra_XP...
lea rcx, [rbp + 0x68]
call fcn.140019cb0
lea rdx, [rbp + 0x68]
mov rcx, qword [r13 + 0x30]
call fcn.14005ce10
test al, al
je 0x140065026
call qword [sym.imp.api_ms_win_crt_utility_l1_1_0.dll_rand]
mov r8d, eax
mov eax, 0x51eb851f
imul r8d
sar edx, 3
mov ecx, edx
shr ecx, 0x1f
add edx, ecx
imul ecx, edx, 0x19
sub r8d, ecx
inc r8d
mov rdx, qword [r13 + 0x30]
movsxd rax, dword [rdx + 0x24c]
cmp r8d, eax
jne 0x140064e3f
imul rcx, rax, 0x3b8
add rcx, qword [0x140307de8]
cmp dword [rcx + 0x50], edi
je 0x140065026
xorps xmm0, xmm0
movdqu xmmword [rbp - 0x38], xmm0
mov qword [rbp - 0x28], rdi
mov dword [rbp - 0x14], 0x42440000
mov eax, dword [rdx + 0x100]
add eax, 0x10
movd xmm0, eax
cvtdq2ps xmm0, xmm0
movss dword [rbp - 0x20], xmm0
mov eax, dword [rdx + 0x104]
add eax, 0x10
movd xmm0, eax
cvtdq2ps xmm0, xmm0
movss dword [rbp - 0x1c], xmm0
mov ecx, 0x38
call fcn.140222890
mov rbx, rax
mov qword [rax + 4], gethostbyname
mov dword [rax + 0x10], edi
mov dword [rax + 0x28], edi
mov dword [rax + 0x34], edi
mov dword [rax], select
mov eax, dword [rbp - 0x34]
mov dword [rbx + 0xc], eax
mov eax, dword [rbp - 0x30]
mov dword [rbx + 0x14], eax
mov eax, dword [rbp - 0x20]
mov dword [rbx + 0x18], eax
mov eax, dword [rbp - 0x1c]
mov dword [rbx + 0x1c], eax
mov dword [rbx + 0x20], edi
mov eax, dword [rbp - 0x14]
mov dword [rbx + 0x24], eax
mov eax, dword [rbp - 0x2c]
mov dword [rbx + 0x2c], eax
mov eax, dword [rbp - 0x28]
mov dword [rbx + 0x30], eax
mov rdi, qword [0x1403076c0]
mov rsi, qword [rdi + 0x28]
imul rax, qword [rdi + 0x30], 0x1c8
add rax, rsi
cmp rsi, rax
jae 0x140065019
add rsi, 0x30
cmp dword [rsi + 8], 5
jne 0x140064ff9
mov rdx, qword [rsi]
test rdx, rdx
je 0x140064ff9
add rdx, 0x2d0
mov rcx, qword [r13 + 0x30]
add rcx, 0x2d0
mov rax, qword [rdx + 0x10]
cmp qword [rdx + 0x18], 0x10
jb 0x140064f26
mov rdx, qword [rdx]
mov r8, qword [rcx + 0x10]
cmp qword [rcx + 0x18], 0x10
jb 0x140064f34
mov rcx, qword [rcx]
cmp r8, rax
jne 0x140064ff9
call sub.VCRUNTIME140.dll_memcmp
test eax, eax
jne 0x140064ff9
xor ecx, ecx
lea r8d, [rax + 1]
test byte [rbx + 0xc], 8
je 0x140064fa8
mov edx, dword [rbx + 0x34]
add edx, 0x3d
call fcn.140013230
mov rdi, rax
mov rcx, qword [rax + 0x10]
mov dword [rcx], 4
mov rcx, qword [rax + 0x10]
movups xmm0, xmmword [rbx]
movups xmmword [rcx + 4], xmm0
movups xmm1, xmmword [rbx + 0x10]
movups xmmword [rcx + 0x14], xmm1
movups xmm0, xmmword [rbx + 0x20]
movups xmmword [rcx + 0x24], xmm0
movsd xmm1, qword [rbx + 0x30]
movsd qword [rcx + 0x34], xmm1
mov r8d, dword [rbx + 0x34]
mov rcx, qword [rax + 0x10]
add rcx, 0x3c
xor edx, edx
call sub.VCRUNTIME140.dll_memcpy
jmp 0x140064fe4
mov edx, 0x3d
call fcn.140013230
mov rdi, rax
mov rax, qword [rax + 0x10]
mov dword [rax], 4
mov rax, qword [rdi + 0x10]
movups xmm0, xmmword [rbx]
movups xmmword [rax + 4], xmm0
movups xmm1, xmmword [rbx + 0x10]
movups xmmword [rax + 0x14], xmm1
movups xmm0, xmmword [rbx + 0x20]
movups xmmword [rax + 0x24], xmm0
movsd xmm1, qword [rbx + 0x30]
movsd qword [rax + 0x34], xmm1
lea rcx, [rsi - 0x30]
mov r8, rdi
xor edx, edx
call fcn.1400134c0
mov rdi, qword [0x1403076c0]
add rsi, 0x1c8
imul rdx, qword [rdi + 0x30], 0x1c8
add rdx, qword [rdi + 0x28]
lea rax, [rsi - 0x30]
cmp rax, rdx
jb 0x140064ef0
mov rcx, rbx
call fcn.140222190
add r14d, r14d
xor edi, edi
mov rax, qword [r13 + 0x30]
mov edx, dword [rax + 0x8ec]
test edx, edx
je 0x1400650b9
mov r9, qword [0x140307c80]
mov rcx, r9
mov rax, qword [0x140307c88]
cmp r9, rax
je 0x140065060
nop
cmp dword [rcx], edx
je 0x140065060
add rcx, 0xc0
cmp rcx, rax
jne 0x140065050
cmp rcx, rax
je 0x1400650b9
sub rcx, r9
movabs rax, 0x2aaaaaaaaaaaaaab
imul rcx
sar rdx, 5
mov rax, rdx
shr rax, 0x3f
add rdx, rax
lea r8, [rdx + rdx*2]
shl r8, 6
movzx eax, word [r8 + r9 + 4]
lea rcx, [rax + rax*2]
mov rax, qword [0x1403077b8]
mov rax, qword [rax + rcx*8 - 0x18]
mov ecx, dword [rax]
mov eax, dword [r8 + r9 + 8]
cmp eax, ecx
jae 0x1400650b9
add eax, r14d
cmp eax, ecx
cmova eax, ecx
mov dword [r8 + r9 + 8], eax
mov rcx, qword [r13 + 0x30]
movsxd rax, r14d
add qword [rcx + 0x110], rax
mov rdx, qword [r13 + 0x30]
mov ecx, dword [rdx + 0x498]
mov eax, ecx
imul eax, ecx
add eax, 2
imul r8d, eax, 0x32
cmp ecx, 0x7d
jg 0x140065c9a
movsxd r8, r8d
cmp qword [rdx + 0x110], r8
jl 0x140065c9a
lea eax, [rcx + 1]
mov dword [rdx + 0x498], eax
mov rax, qword [r13 + 0x30]
sub qword [rax + 0x110], r8
cmp dword [0x140307704], 4
jne 0x140065121
mov rax, qword [r13 + 0x30]
add dword [rax + 0x108], 0x1f4
mov rax, qword [r13 + 0x30]
add dword [rax + 0x108], 0x1f4
mov dword [rbp + 0x40], edi
mov ecx, 0x3d
call fcn.140222890
mov qword [rbp + 0x48], rax
mov dword [rbp + 0x44], 0x3d
mov dword [rax + 0xc], edi
mov qword [rax + 0x10], 8
mov qword [rax + 0x1c], rdi
mov qword [rax + 0x24], rdi
mov qword [rax + 0x2c], rdi
mov qword [rax + 0x34], rdi
mov byte [rax + 0x3c], 0
mov dword [rax], 4
mov dword [rax + 4], 1
mov dword [rax + 8], 0xffffffff
mov dword [rax + 0x18], edi
xorps xmm0, xmm0
movups xmmword [rsp + 0x40], xmm0
mov qword [rsp + 0x50], rdi
mov qword [rsp + 0x58], rdi
mov r8d, 8
lea rdx, str.OnSetBux
lea rcx, [rsp + 0x40]
call fcn.140019cb0
lea rdx, [rsp + 0x40]
lea rcx, [rbp + 0x40]
call fcn.140034df0
mov rax, qword [r13 + 0x30]
mov r14d, dword [rax + 0x108]
movsxd rsi, dword [rbp + 0x44]
lea r12d, [rsi + 6]
mov dword [rbp + 0x50], r12d
movsxd rcx, r12d
call fcn.140222890
mov r15, rax
mov r8, rsi
mov rdx, qword [rbp + 0x48]
mov rcx, rax
call sub.VCRUNTIME140.dll_memcpy
mov rcx, qword [rbp + 0x48]
call fcn.140222190
mov qword [rbp + 0x48], r15
movzx ecx, byte [rbp + 0x40]
mov byte [rsi + r15], cl
lea ecx, [rsi + 1]
movsxd rdx, ecx
mov byte [rdx + r15], 9
mov dword [rsi + r15 + 2], r14d
mov dword [rbp + 0x44], r12d
mov edi, dword [rbp + 0x40]
inc edi
mov dword [rbp + 0x60], edi
mov dword [rbp + 0x40], edi
mov byte [r15 + 0x3c], dil
lea r14d, [r12 + 6]
movsxd rcx, r12d
add rcx, 6
call fcn.140222890
mov r12, rax
lea eax, [rsi + 6]
movsxd rbx, eax
mov r8, rbx
mov rdx, r15
mov rcx, r12
call sub.VCRUNTIME140.dll_memcpy
mov rcx, r15
call fcn.140222190
mov qword [rbp + 0x48], r12
mov byte [r12 + rbx], dil
lea edx, [rsi + 6]
movsxd rcx, edx
mov byte [rcx + r12 + 1], 9
xor r15d, r15d
mov dword [r12 + rbx + 2], r15d
mov dword [rbp + 0x44], r14d
lea esi, [rdi + 1]
mov dword [rbp + 0x40], esi
mov byte [r12 + 0x3c], sil
mov rax, qword [r13 + 0x30]
mov edi, r15d
cmp dword [rax + 0x178], 1
setge dil
lea r15d, [r14 + 6]
movsxd rcx, edx
add rcx, 0xc
call fcn.140222890
mov r14, rax
movsxd rax, dword [rbp + 0x50]
mov rbx, rax
lea r8, [rax + 6]
mov rdx, r12
mov rcx, r14
call sub.VCRUNTIME140.dll_memcpy
mov rcx, r12
call fcn.140222190
mov qword [rbp + 0x48], r14
mov byte [r14 + rbx + 6], sil
movsxd rsi, dword [rbp + 0x50]
mov byte [rsi + r14 + 7], 9
mov dword [r14 + rbx + 8], edi
mov dword [rbp + 0x44], r15d
mov r12d, dword [rbp + 0x60]
lea eax, [r12 + 2]
mov dword [rbp + 0x40], eax
mov byte [r14 + 0x3c], al
mov rax, qword [r13 + 0x30]
cmp dword [rax + 0x178], 2
jl 0x140065368
mov dword [rbp + 0x58], 0
mov dword [rbp + 0x50], 0x3f800000
mov dword [rbp + 0x60], 0x47040400
add r15d, 0xe
movsxd rcx, r15d
call fcn.140222890
mov rdi, rax
lea r8, [rsi + 0xc]
mov rdx, r14
mov rcx, rax
call sub.VCRUNTIME140.dll_memcpy
mov rcx, r14
call fcn.140222190
mov r14, rdi
mov qword [rbp + 0x48], rdi
lea eax, [r12 + 2]
mov byte [rsi + rdi + 0xc], al
mov byte [rsi + rdi + 0xd], 4
mov eax, dword [rbp + 0x60]
mov dword [rsi + rdi + 0xe], eax
mov eax, dword [rbp + 0x50]
mov dword [rsi + rdi + 0x12], eax
mov eax, dword [rbp + 0x58]
mov dword [rsi + rdi + 0x16], eax
mov dword [rbp + 0x44], r15d
lea eax, [r12 + 3]
mov dword [rbp + 0x40], eax
mov byte [rdi + 0x3c], al
movsxd rdx, r15d
mov r8d, 1
mov rcx, r14
call fcn.140013230
mov r8, rax
xor edx, edx
mov rcx, r13
call fcn.1400134c0
nop
mov rcx, r14
call fcn.140222190
mov rax, qword [r13 + 0x30]
cmp dword [rax + 0x498], 5
jne 0x1400653a4
mov rcx, r13
call fcn.14004deb0
xor r12d, r12d
mov dword [rbp + 0x50], r12d
mov byte [rsp + 0x20], r12b
mov r9b, 1
lea r8, [rbp + 0x50]
mov edx, 0x8e6
mov rcx, r13
call fcn.140063aa0
mov rax, qword [r13 + 0x30]
cmp dword [rax + 0x498], 0x32
jl 0x140065685
cmp dword [rbp + 0x50], r12d
jg 0x140065685
mov dword [rbp + 0x50], 1
mov byte [rsp + 0x20], r12b
mov r9b, 1
lea r8, [rbp + 0x50]
mov edx, 0x8e6
mov rcx, r13
call fcn.140063aa0
cmp eax, 0xffffffff
je 0x140065685
mov dword [rbp + 0x40], r12d
lea ecx, [r12 + 0x3d]
call fcn.140222890
mov qword [rbp + 0x48], rax
mov dword [rbp + 0x44], 0x3d
mov dword [rax + 0xc], r12d
mov qword [rax + 0x10], 8
mov qword [rax + 0x1c], r12
mov qword [rax + 0x24], r12
mov qword [rax + 0x2c], r12
mov qword [rax + 0x34], r12
mov byte [rax + 0x3c], r12b
mov dword [rax], 4
mov dword [rax + 4], 1
mov dword [rax + 8], 0xffffffff
mov dword [rax + 0x18], r12d
mov dword [rbp + 0x68], r12d
lea ecx, [r12 + 0x3d]
call fcn.140222890
mov qword [rbp + 0x70], rax
mov dword [rbp + 0x6c], 0x3d
mov dword [rax + 0xc], r12d
mov qword [rax + 0x10], 8
mov qword [rax + 0x1c], r12
mov qword [rax + 0x24], r12
mov qword [rax + 0x2c], r12
mov qword [rax + 0x34], r12
mov byte [rax + 0x3c], r12b
mov dword [rax], 4
mov dword [rax + 4], 1
mov dword [rax + 8], 0xffffffff
mov dword [rax + 0x18], r12d
xorps xmm0, xmm0
movups xmmword [rsp + 0x40], xmm0
mov qword [rsp + 0x50], r12
mov qword [rsp + 0x58], r12
lea r8d, [r12 + 0x11]
lea rdx, str.OnAddNotification
lea rcx, [rsp + 0x40]
call fcn.140019cb0
lea rdx, [rsp + 0x40]
lea rcx, [rbp + 0x40]
call fcn.140034df0
xorps xmm0, xmm0
movups xmmword [rbp - 0x60], xmm0
mov qword [rbp - 0x50], r12
mov qword [rbp - 0x48], r12
lea r8d, [r12 + 0x23]
lea rdx, str.interface_large_friend_button.rttex
lea rcx, [rbp - 0x60]
call fcn.140019cb0
lea rdx, [rbp - 0x60]
lea rcx, [rbp + 0x40]
call fcn.140034df0
xorps xmm0, xmm0
movups xmmword [rbp - 0x80], xmm0
mov qword [rbp - 0x70], r12
mov qword [rbp - 0x68], r12
lea r8d, [r12 + 0x1d]
lea rdx, str.Youve_unlocked___Mini_You___
lea rcx, [rbp - 0x80]
call fcn.140019cb0
lea rdx, [rbp - 0x80]
lea rcx, [rbp + 0x40]
call fcn.140034df0
xorps xmm0, xmm0
movups xmmword [rsp + 0x60], xmm0
mov qword [rsp + 0x70], r12
mov qword [rsp + 0x78], r12
lea r8d, [r12 + 0x12]
lea rdx, str.audio_hub_open.wav
lea rcx, [rsp + 0x60]
call fcn.140019cb0
lea rdx, [rsp + 0x60]
lea rcx, [rbp + 0x40]
call fcn.140034df0
movsxd rsi, dword [rbp + 0x44]
lea r14d, [rsi + 6]
movsxd rcx, r14d
call fcn.140222890
mov r15, rax
mov r8, rsi
mov rdx, qword [rbp + 0x48]
mov rcx, rax
call sub.VCRUNTIME140.dll_memcpy
mov rcx, qword [rbp + 0x48]
call fcn.140222190
mov qword [rbp + 0x48], r15
movzx ecx, byte [rbp + 0x40]
mov byte [rsi + r15], cl
lea ecx, [rsi + 1]
movsxd rdx, ecx
mov byte [rdx + r15], 9
mov dword [rsi + r15 + 2], r12d
mov dword [rbp + 0x44], r14d
mov eax, dword [rbp + 0x40]
inc eax
mov dword [rbp + 0x40], eax
mov byte [r15 + 0x3c], al
movsxd rdx, r14d
lea r8d, [r12 + 1]
mov rcx, r15
call fcn.140013230
mov r8, rax
xor edx, edx
mov rcx, r13
call fcn.1400134c0
xorps xmm0, xmm0
movups xmmword [rsp + 0x60], xmm0
mov qword [rsp + 0x70], r12
mov qword [rsp + 0x78], r12
lea r8d, [r12 + 0x10]
lea rdx, str.OnConsoleMessage
lea rcx, [rsp + 0x60]
call fcn.140019cb0
lea rdx, [rsp + 0x60]
lea rcx, [rbp + 0x68]
call fcn.140034df0
xorps xmm0, xmm0
movups xmmword [rbp - 0x80], xmm0
mov qword [rbp - 0x70], r12
mov qword [rbp - 0x68], r12
lea r8d, [r12 + 0x1d]
lea rdx, str.Youve_unlocked___Mini_You___
lea rcx, [rbp - 0x80]
call fcn.140019cb0
lea rdx, [rbp - 0x80]
lea rcx, [rbp + 0x68]
call fcn.140034df0
movsxd rdx, dword [rbp + 0x6c]
lea r8d, [r12 + 1]
mov rcx, qword [rbp + 0x70]
call fcn.140013230
mov r8, rax
xor edx, edx
mov rcx, r13
call fcn.1400134c0
nop
mov rcx, qword [rbp + 0x70]
call fcn.140222190
nop
mov rcx, r15
call fcn.140222190
mov dword [rbp + 0x40], r12d
mov ecx, 0x3d
call fcn.140222890
mov qword [rbp + 0x48], rax
mov dword [rbp + 0x44], 0x3d
mov dword [rax + 0xc], r12d
mov qword [rax + 0x10], 8
mov qword [rax + 0x1c], r12
mov qword [rax + 0x24], r12
mov qword [rax + 0x2c], r12
mov qword [rax + 0x34], r12
mov byte [rax + 0x3c], 0
mov dword [rax], 4
mov dword [rax + 4], 1
mov dword [rax + 8], 0xffffffff
mov dword [rax + 0x18], r12d
mov dword [rbp + 0x68], r12d
mov ecx, 0x3d
call fcn.140222890
mov qword [rbp + 0x70], rax
mov dword [rbp + 0x6c], 0x3d
mov dword [rax + 0xc], r12d
mov qword [rax + 0x10], 8
mov qword [rax + 0x1c], r12
mov qword [rax + 0x24], r12
mov qword [rax + 0x2c], r12
mov qword [rax + 0x34], r12
mov byte [rax + 0x3c], 0
mov dword [rax], 4
mov dword [rax + 4], 1
mov dword [rax + 8], 0xffffffff
mov dword [rax + 0x18], r12d
xorps xmm0, xmm0
movups xmmword [rsp + 0x60], xmm0
mov qword [rsp + 0x70], r12
mov qword [rsp + 0x78], r12
mov r8d, reloc.WS2_32.dll_inet_ntoa
lea rdx, str.OnTalkBubble
lea rcx, [rsp + 0x60]
call fcn.140019cb0
lea rdx, [rsp + 0x60]
lea rcx, [rbp + 0x40]
call fcn.140034df0
mov rax, qword [r13 + 0x30]
mov r15d, dword [rax + 0xf0]
movsxd rsi, dword [rbp + 0x44]
lea r14d, [rsi + 6]
movsxd rcx, r14d
call fcn.140222890
mov r12, rax
mov r8, rsi
mov rdx, qword [rbp + 0x48]
mov rcx, rax
call sub.VCRUNTIME140.dll_memcpy
mov rcx, qword [rbp + 0x48]
call fcn.140222190
mov qword [rbp + 0x48], r12
movzx ecx, byte [rbp + 0x40]
mov byte [r12 + rsi], cl
lea ecx, [rsi + 1]
movsxd rdx, ecx
mov byte [rdx + r12], 9
mov dword [r12 + rsi + 2], r15d
mov dword [rbp + 0x44], r14d
mov eax, dword [rbp + 0x40]
inc eax
mov dword [rbp + 0x40], eax
mov byte [r12 + 0x3c], al
mov rax, qword [r13 + 0x30]
mov edx, dword [rax + 0x498]
lea rcx, [rbp - 0x40]
call fcn.140017800
mov rdi, rax
mov rcx, qword [r13 + 0x30]
lea rdx, [rcx + 0x250]
lea r9, [rcx + 0x98]
mov r8, qword [r9 + 0x10]
mov r10, qword [rdx + 0x10]
movabs rbx, 0x7fffffffffffffff
mov rcx, rbx
sub rcx, r8
cmp rcx, r10
jb 0x140065cd0
cmp qword [r9 + 0x18], 0x10
jb 0x140065814
mov r9, qword [r9]
cmp qword [rdx + 0x18], 0x10
jb 0x14006581e
mov rdx, qword [rdx]
mov qword [rsp + 0x30], r10
mov qword [rsp + 0x28], rdx
mov qword [rsp + 0x20], r8
lea rcx, [rbp + 0x20]
call fcn.14020b410
nop
mov r8d, reloc.WS2_32.dll_recv
lea rdx, str.___is_now_level
lea rcx, [rbp + 0x20]
call fcn.1401fe250
movups xmm0, xmmword [rax]
movups xmmword [rbp - 0x80], xmm0
movups xmm1, xmmword [rax + 0x10]
movups xmmword [rbp - 0x70], xmm1
xor r15d, r15d
mov qword [rax + 0x10], r15
mov qword [rax + 0x18], reloc.WS2_32.dll_ntohs
mov byte [rax], r15b
mov r9, rdi
lea r8, [rbp - 0x80]
lea rcx, [rbp - 0x60]
call fcn.14020b220
nop
lea r8d, [r15 + 1]
lea rdx, [0x1402a4c28]
lea rcx, [rbp - 0x60]
call fcn.1401fe250
xorps xmm0, xmm0
movups xmmword [rsp + 0x40], xmm0
mov qword [rsp + 0x50], r15
mov qword [rsp + 0x58], r15
movups xmm0, xmmword [rax]
movups xmmword [rsp + 0x40], xmm0
movups xmm1, xmmword [rax + 0x10]
movups xmmword [rsp + 0x50], xmm1
mov qword [rax + 0x10], r15
mov qword [rax + 0x18], reloc.WS2_32.dll_ntohs
mov byte [rax], r15b
lea rdx, [rsp + 0x40]
lea rcx, [rbp + 0x40]
call fcn.140034df0
nop
lea rcx, [rbp - 0x60]
call fcn.1401fdef0
nop
lea rcx, [rbp - 0x80]
call fcn.1401fdef0
nop
lea rcx, [rbp + 0x20]
call fcn.1401fdef0
nop
lea rcx, [rbp - 0x40]
call fcn.1401fdef0
xorps xmm0, xmm0
movups xmmword [rsp + 0x60], xmm0
mov qword [rsp + 0x70], r15
mov qword [rsp + 0x78], r15
lea r8d, [r15 + 0x10]
lea rdx, str.OnConsoleMessage
lea rcx, [rsp + 0x60]
call fcn.140019cb0
lea rdx, [rsp + 0x60]
lea rcx, [rbp + 0x68]
call fcn.140034df0
mov rax, qword [r13 + 0x30]
mov edx, dword [rax + 0x498]
lea rcx, [rbp - 0x40]
call fcn.140017800
mov rdi, rax
mov rcx, qword [r13 + 0x30]
lea rdx, [rcx + 0x250]
lea r9, [rcx + 0x98]
mov rcx, qword [r9 + 0x10]
mov r8, qword [rdx + 0x10]
sub rbx, rcx
cmp rbx, r8
jb 0x140065cca
cmp qword [r9 + 0x18], 0x10
jb 0x140065976
mov r9, qword [r9]
cmp qword [rdx + 0x18], 0x10
jb 0x140065980
mov rdx, qword [rdx]
mov qword [rsp + 0x30], r8
mov qword [rsp + 0x28], rdx
mov qword [rsp + 0x20], rcx
lea rcx, [rbp - 0x60]
call fcn.14020b410
nop
mov r8d, reloc.WS2_32.dll_recv
lea rdx, str.___is_now_level
lea rcx, [rbp - 0x60]
call fcn.1401fe250
movups xmm0, xmmword [rax]
movups xmmword [rbp - 0x80], xmm0
movups xmm1, xmmword [rax + 0x10]
movups xmmword [rbp - 0x70], xmm1
mov qword [rax + 0x10], r15
mov qword [rax + 0x18], reloc.WS2_32.dll_ntohs
mov byte [rax], 0
mov r9, rdi
lea r8, [rbp - 0x80]
lea rcx, [rbp + 0x20]
call fcn.14020b220
nop
mov r8d, 1
lea rdx, [0x1402a4c28]
lea rcx, [rbp + 0x20]
call fcn.1401fe250
xorps xmm0, xmm0
movups xmmword [rsp + 0x40], xmm0
mov qword [rsp + 0x50], r15
mov qword [rsp + 0x58], r15
movups xmm0, xmmword [rax]
movups xmmword [rsp + 0x40], xmm0
movups xmm1, xmmword [rax + 0x10]
movups xmmword [rsp + 0x50], xmm1
mov qword [rax + 0x10], r15
mov qword [rax + 0x18], reloc.WS2_32.dll_ntohs
mov byte [rax], 0
lea rdx, [rsp + 0x40]
lea rcx, [rbp + 0x68]
call fcn.140034df0
nop
lea rcx, [rbp + 0x20]
call fcn.1401fdef0
nop
lea rcx, [rbp - 0x80]
call fcn.1401fdef0
nop
lea rcx, [rbp - 0x60]
call fcn.1401fdef0
nop
lea rcx, [rbp - 0x40]
call fcn.1401fdef0
xorps xmm0, xmm0
movdqu xmmword [rbp - 8], xmm0
mov qword [rbp + 8], r15
mov dword [rbp + 0x1c], 0x42380000
mov rdx, qword [r13 + 0x30]
mov eax, dword [rdx + 0x100]
add eax, 0x10
movd xmm0, eax
cvtdq2ps xmm0, xmm0
movss dword [rbp + 0x10], xmm0
mov eax, dword [rdx + 0x104]
add eax, 0x10
movd xmm0, eax
cvtdq2ps xmm0, xmm0
movss dword [rbp + 0x14], xmm0
mov ecx, 0x38
call fcn.140222890
mov rbx, rax
mov qword [rax + 4], gethostbyname
mov dword [rax + 0x10], r15d
mov dword [rax + 0x28], r15d
mov dword [rax + 0x34], r15d
mov dword [rax], select
mov eax, dword [rbp - 4]
mov dword [rbx + 0xc], eax
mov eax, dword [rbp]
mov dword [rbx + 0x14], eax
mov eax, dword [rbp + 0x10]
mov dword [rbx + 0x18], eax
mov eax, dword [rbp + 0x14]
mov dword [rbx + 0x1c], eax
mov dword [rbx + 0x20], r15d
mov eax, dword [rbp + 0x1c]
mov dword [rbx + 0x24], eax
mov eax, dword [rbp + 4]
mov dword [rbx + 0x2c], eax
mov eax, dword [rbp + 8]
mov dword [rbx + 0x30], eax
mov rsi, qword [0x1403076c0]
mov rdi, qword [rsi + 0x28]
imul rax, qword [rsi + 0x30], 0x1c8
add rax, rdi
mov r14, qword [rbp + 0x48]
mov r15, qword [rbp + 0x70]
cmp rdi, rax
jae 0x140065c80
movsxd r12, dword [rbp + 0x44]
nop dword [rax]
cmp dword [rdi + 0x38], 5
jne 0x140065c64
mov rdx, qword [rdi + 0x30]
test rdx, rdx
je 0x140065c64
add rdx, 0x2d0
mov rcx, qword [r13 + 0x30]
add rcx, 0x2d0
mov rax, qword [rdx + 0x10]
cmp qword [rdx + 0x18], 0x10
jb 0x140065b57
mov rdx, qword [rdx]
mov r8, qword [rcx + 0x10]
cmp qword [rcx + 0x18], 0x10
jb 0x140065b65
mov rcx, qword [rcx]
cmp r8, rax
jne 0x140065c64
call sub.VCRUNTIME140.dll_memcmp
test eax, eax
jne 0x140065c64
mov rdx, r12
lea r8d, [rax + 1]
mov rcx, r14
call fcn.140013230
mov r8, rax
xor edx, edx
mov rcx, rdi
call fcn.1400134c0
movsxd rdx, dword [rbp + 0x6c]
mov r8d, 1
mov rcx, r15
call fcn.140013230
mov r8, rax
xor edx, edx
mov rcx, rdi
call fcn.1400134c0
xor ecx, ecx
lea r8d, [rcx + 1]
test byte [rbx + 0xc], 8
je 0x140065c14
mov edx, dword [rbx + 0x34]
add edx, 0x3d
call fcn.140013230
mov rsi, rax
mov rcx, qword [rax + 0x10]
mov dword [rcx], 4
mov rcx, qword [rax + 0x10]
movups xmm0, xmmword [rbx]
movups xmmword [rcx + 4], xmm0
movups xmm1, xmmword [rbx + 0x10]
movups xmmword [rcx + 0x14], xmm1
movups xmm0, xmmword [rbx + 0x20]
movups xmmword [rcx + 0x24], xmm0
movsd xmm1, qword [rbx + 0x30]
movsd qword [rcx + 0x34], xmm1
mov r8d, dword [rbx + 0x34]
mov rcx, qword [rax + 0x10]
add rcx, 0x3c
xor edx, edx
call sub.VCRUNTIME140.dll_memcpy
jmp 0x140065c50
mov edx, 0x3d
call fcn.140013230
mov rsi, rax
mov rax, qword [rax + 0x10]
mov dword [rax], 4
mov rax, qword [rsi + 0x10]
movups xmm0, xmmword [rbx]
movups xmmword [rax + 4], xmm0
movups xmm1, xmmword [rbx + 0x10]
movups xmmword [rax + 0x14], xmm1
movups xmm0, xmmword [rbx + 0x20]
movups xmmword [rax + 0x24], xmm0
movsd xmm1, qword [rbx + 0x30]
movsd qword [rax + 0x34], xmm1
mov r8, rsi
xor edx, edx
mov rcx, rdi
call fcn.1400134c0
mov rsi, qword [0x1403076c0]
add rdi, 0x1c8
imul rax, qword [rsi + 0x30], 0x1c8
add rax, qword [rsi + 0x28]
cmp rdi, rax
jb 0x140065b20
mov rcx, rbx
call fcn.140222190
nop
mov rcx, r15
call fcn.140222190
nop
mov rcx, r14
call fcn.140222190
mov rcx, qword [rbp + 0x88]
xor rcx, rsp
call fcn.140222170
lea r11, [rsp + 0x190]
mov rbx, qword [r11 + 0x38]
mov rsi, qword [r11 + 0x40]
mov rdi, qword [r11 + 0x48]
mov rsp, r11
pop r15
pop r14
pop r13
pop r12
pop rbp
ret
call fcn.140017740
nop
call fcn.140017740
int3