Function at 0x1800057f0
Capabilities:
Encode data using xor

Disassembly:
mov qword [rsp + 8], rbx
mov qword [rsp + 0x10], rsi
mov qword [rsp + 0x18], rdi
mov qword [rsp + 0x20], r12
push r13
push r14
push r15
sub rsp, 0x650
mov rax, qword [0x1801588c0]
xor rax, rsp
mov qword [rsp + 0x640], rax
xor edi, edi
mov r14d, edi
mov dword [rsp + 0x58], edi
lea rbx, [0x180255f00]
mov qword [rsp + 0xb0], rbx
xor edx, edx
mov r8d, 0x110
lea rcx, [rsp + 0x1b0]
call fcn.18010b1d0
lea rdx, [rsp + 0x38]
call fcn.1800081b0
nop
lea r8d, [rdi + 0xc]
lea rdx, str.config.json
mov rcx, rax
call fcn.18000ce50
xorps xmm0, xmm0
movups xmmword [rsp + 0x70], xmm0
xorps xmm1, xmm1
movdqu xmmword [rsp + 0x80], xmm1
movups xmm0, xmmword [rax]
movups xmmword [rsp + 0x70], xmm0
movups xmm1, xmmword [rax + 0x10]
movups xmmword [rsp + 0x80], xmm1
mov qword [rax + 0x10], rdi
mov qword [rax + 0x18], reloc.WS2_32.dll_ntohs
mov byte [rax], dil
or r14d, 0x10
lea rdx, [rsp + 0x70]
lea rcx, [rsp + 0x1b0]
call fcn.180009600
nop
mov rdx, qword [rsp + 0x88]
cmp rdx, 0xf
jbe 0x1800058fc
inc rdx
mov rcx, qword [rsp + 0x70]
mov rax, rcx
cmp rdx, 0x1000
jb 0x1800058f7
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x180006de8
call fcn.1800d30fc
movdqa xmm0, xmmword [0x18013e670]
movdqu xmmword [rsp + 0x80], xmm0
mov byte [rsp + 0x70], 0
mov rdx, qword [rsp + 0x50]
cmp rdx, 0xf
jbe 0x180005950
inc rdx
mov rcx, qword [rsp + 0x38]
mov rax, rcx
cmp rdx, 0x1000
jb 0x18000594a
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x180006dee
call fcn.1800d30fc
nop
xor edx, edx
lea rcx, [rsp + 0x2c8]
call fcn.18000ca30
lea rcx, [rsp + 0x2c8]
call fcn.18000cb60
nop
mov rax, qword [rsp + 0x1b0]
movsxd rdx, dword [rax + 4]
test byte [rsp + rdx + 0x1c0], 6
je 0x180005aa0
mov rcx, rbx
call fcn.1800073d0
lea rcx, [rsp + 0x1c0]
call fcn.18000c280
test rax, rax
jne 0x1800059e9
mov rax, qword [rsp + 0x1b0]
movsxd rcx, dword [rax + 4]
mov eax, 2
mov r13d, 6
cmp qword [rsp + rcx + 0x1f8], 0
cmovne r13d, eax
or r13d, dword [rsp + rcx + 0x1c0]
and r13d, 0x17
mov dword [rsp + rcx + 0x1c0], r13d
mov eax, dword [rsp + rcx + 0x1c4]
and eax, r13d
jne 0x180006df4
lea rcx, [rsp + 0x2c8]
call fcn.18000cb60
movzx edx, byte [rsp + 0x2c8]
lea rcx, [rsp + 0x2d0]
call fcn.18000c380
nop
mov rax, qword [rsp + 0x1b0]
movsxd rcx, dword [rax + 4]
lea rax, vtable.std::basic_ifstream_char__struct_std::char_traits_char__.0
mov qword [rsp + rcx + 0x1b0], rax
mov rax, qword [rsp + 0x1b0]
movsxd rcx, dword [rax + 4]
lea edx, [rcx - 0xb0]
mov dword [rsp + rcx + 0x1ac], edx
lea rcx, [rsp + 0x1c0]
call fcn.180009550
mov rax, qword [rsp + 0x1b0]
movsxd rcx, dword [rax + 4]
lea rax, vtable.std::basic_istream_char__struct_std::char_traits_char__.0
mov qword [rsp + rcx + 0x1b0], rax
mov rax, qword [rsp + 0x1b0]
movsxd rcx, dword [rax + 4]
lea edx, [rcx - 0x18]
mov dword [rsp + rcx + 0x1ac], edx
lea rax, vtable.std::ios_base.0
mov qword [rsp + 0x260], rax
lea rcx, [rsp + 0x260]
call fcn.1800d1f14
nop
jmp 0x180006db6
xor edx, edx
mov r8d, 0xf8
lea rcx, [rsp + 0x4d0]
call fcn.18010b1d0
lea rax, [0x180132fb0]
mov qword [rsp + 0x4d0], rax
lea rax, [0x180132f28]
mov qword [rsp + 0x4e0], rax
mov qword [rsp + 0x570], rdi
mov qword [rsp + 0x578], rdi
mov dword [rsp + 0x580], edi
mov qword [rsp + 0x588], rdi
xorps xmm0, xmm0
movdqa xmmword [rsp + 0x590], xmm0
xorps xmm1, xmm1
movdqa xmmword [rsp + 0x5a0], xmm1
lea rax, vtable.std::basic_ios_char__struct_std::char_traits_char__.0
mov qword [rsp + 0x568], rax
movdqa xmmword [rsp + 0x5b0], xmm0
mov byte [rsp + 0x5c0], 0
bts r14d, 0xa
mov dword [rsp + 0x58], r14d
xor r8d, r8d
lea rdx, [rsp + 0x4e8]
lea rcx, [rsp + 0x4d0]
call fcn.18000bf10
nop
mov rax, qword [rsp + 0x4d0]
movsxd rcx, dword [rax + 4]
lea rax, vtable.std::basic_stringstream_char__struct_std::char_traits_char___class_std::allocator_char__.0
mov qword [rsp + rcx + 0x4d0], rax
mov rax, qword [rsp + 0x4d0]
movsxd rcx, dword [rax + 4]
lea edx, [rcx - 0x98]
mov dword [rsp + rcx + 0x4cc], edx
lea rcx, [rsp + 0x4e8]
call fcn.18000d770
lea rax, vtable.std::basic_stringbuf_char__struct_std::char_traits_char___class_std::allocator_char__.0
mov qword [rsp + 0x4e8], rax
mov qword [rsp + 0x550], rdi
mov dword [rsp + 0x558], edi
lea rdx, [rsp + 0x1c0]
lea rcx, [rsp + 0x4e0]
call fcn.18000a6b0
lea rax, [rsp + 0x2e0]
mov qword [rsp + 0x2c0], rax
mov qword [rsp + 0x318], rdi
xorps xmm0, xmm0
movups xmmword [rsp + 0x90], xmm0
mov qword [rsp + 0xa0], rdi
mov qword [rsp + 0xa8], reloc.WS2_32.dll_ntohs
mov byte [rsp + 0x90], 0
bts r14d, 9
mov dword [rsp + 0x58], r14d
xor eax, eax
movups xmmword [rsp + 0x70], xmm0
mov qword [rsp + 0x80], rax
mov rcx, rdi
mov edx, dword [rsp + 0x558]
mov eax, edx
and al, 0x22
cmp al, 2
je 0x180005c5f
mov rax, qword [rsp + 0x528]
mov rbx, qword [rax]
test rbx, rbx
je 0x180005c5f
mov rax, qword [rsp + 0x508]
mov r9, qword [rax]
cmp rbx, qword [rsp + 0x550]
cmovb rbx, qword [rsp + 0x550]
sub rbx, r9
mov rcx, r9
jmp 0x180005c9d
test dl, 4
jne 0x180005cd5
mov rax, qword [rsp + 0x520]
mov rdx, qword [rax]
mov rbx, rdi
test rdx, rdx
je 0x180005c98
mov rax, qword [rsp + 0x500]
mov r9, qword [rax]
mov rax, qword [rsp + 0x538]
movsxd rbx, dword [rax]
add rbx, rdx
sub rbx, r9
mov rcx, r9
jmp 0x180005c9d
mov r9, qword [rsp + 0x70]
test rcx, rcx
je 0x180005cd5
lea rcx, [rsp + 0x90]
cmp rbx, 0xf
ja 0x180005ccd
mov qword [rsp + 0xa0], rbx
mov r8, rbx
mov rdx, r9
call fcn.18010ab30
mov byte [rsp + rbx + 0x90], 0
jmp 0x180005cd5
mov rdx, rbx
call fcn.18000fdd0
btr r14d, 9
bts r14d, 8
lea r8, [rsp + 0x2e0]
lea rdx, [rsp + 0x90]
lea rcx, [rsp + 0x60]
call fcn.18000e2f0
mov rsi, rax
mov rcx, rax
call fcn.18000cb60
movzx ecx, byte [rsp + 0x2c8]
movzx eax, byte [rsi]
mov byte [rsp + 0x2c8], al
mov byte [rsi], cl
mov rax, qword [rsp + 0x2d0]
mov r8, qword [rsi + 8]
mov qword [rsp + 0x2d0], r8
mov qword [rsi + 8], rax
lea rcx, [rsp + 0x2c8]
call fcn.18000cb60
nop
mov rcx, rsi
call fcn.18000cb60
movzx edx, byte [rsi]
lea rcx, [rsi + 8]
call fcn.18000c380
nop
mov rdx, qword [rsp + 0xa8]
cmp rdx, 0xf
jbe 0x180005d96
inc rdx
mov rcx, qword [rsp + 0x90]
mov rax, rcx
cmp rdx, 0x1000
jb 0x180005d91
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x180006e4c
call fcn.1800d30fc
mov dword [rsp + 0x2c0], 0x4a575a
mov byte [rsp + 0x2c4], 1
mov rcx, rdi
nop dword [rax]
lea eax, [rcx + 0x31]
xor byte [rsp + rcx + 0x2c0], al
inc rcx
cmp rcx, 3
jb 0x180005db0
mov byte [rsp + 0x2c4], 0
lea r9, [rsp + 0x30]
lea r8, [rsp + 0x2c3]
lea rdx, [rsp + 0x2c0]
lea rcx, [rsp + 0x38]
call fcn.18000e960
or r14d, 0x60
mov dword [rsp + 0x58], r14d
lea rdx, [rsp + 0x38]
lea rcx, [rsp + 0x2c8]
call fcn.180009840
mov rdx, rax
lea rcx, [0x180255f10]
call fcn.18000e410
lea rax, [rsp + 0x2c8]
mov qword [rsp + 0x2c0], rax
xorps xmm0, xmm0
movups xmmword [rsp + 0x3a0], xmm0
movups xmmword [rsp + 0x3b0], xmm0
movups xmmword [rsp + 0x3c0], xmm0
movups xmmword [rsp + 0x3d0], xmm0
movups xmmword [rsp + 0x3e0], xmm0
movups xmmword [rsp + 0x3f0], xmm0
movups xmmword [rsp + 0x400], xmm0
lea rdx, [rsp + 0x38]
lea rcx, [rsp + 0x2c8]
call fcn.18000c950
nop
movups xmm0, xmmword [rax]
movaps xmmword [rsp + 0x3a0], xmm0
movups xmm1, xmmword [rax + 0x10]
movaps xmmword [rsp + 0x3b0], xmm1
mov qword [rsp + 0x3c0], rdi
mov qword [rsp + 0x3c8], rdi
xorps xmm0, xmm0
movups xmmword [rsp + 0x3d0], xmm0
xorps xmm1, xmm1
movdqa xmmword [rsp + 0x3e0], xmm1
mov r8d, 1
lea rdx, [0x180130cd4]
lea rcx, [rsp + 0x3d0]
call fcn.18000f550
xorps xmm0, xmm0
movups xmmword [rsp + 0x3f0], xmm0
movdqa xmm1, xmmword [0x18013e670]
movdqa xmmword [rsp + 0x400], xmm1
mov byte [rsp + 0x3f0], 0
movups xmmword [rsp + 0x5d0], xmm0
movups xmmword [rsp + 0x5e0], xmm0
movups xmmword [rsp + 0x5f0], xmm0
movups xmmword [rsp + 0x600], xmm0
movups xmmword [rsp + 0x610], xmm0
movups xmmword [rsp + 0x620], xmm0
movups xmmword [rsp + 0x630], xmm0
lea rdx, [rsp + 0x5d0]
lea rcx, [rsp + 0x2c0]
call fcn.1800087e0
nop
mov r13d, 6
nop dword [rax]
nop word [rax + rax]
lea rdx, [rsp + 0x5d0]
lea rcx, [rsp + 0x3a0]
call fcn.18000ea90
test al, al
je 0x1800069f8
lea rcx, [rsp + 0x3a0]
call fcn.180008630
mov r12, rax
mov rbx, qword [rax + 0x10]
mov rcx, rax
mov rsi, qword [rax + 0x18]
cmp rsi, 0xf
jbe 0x180005f91
mov rcx, qword [rax]
cmp rbx, 3
jne 0x180005fae
mov r8, rbx
lea rdx, [0x180130a90]
call fcn.18010aa30
test eax, eax
je 0x1800069de
mov rcx, r12
cmp rsi, 0xf
jbe 0x180005fbb
mov rcx, qword [r12]
cmp rbx, 8
jne 0x180005fd8
mov r8, rbx
lea rdx, str.menu_key
call fcn.18010aa30
test eax, eax
je 0x1800069de
lea rcx, [rsp + 0x3a0]
call fcn.1800084c0
mov r15, rax
xorps xmm0, xmm0
movups xmmword [rsp + 0x350], xmm0
mov qword [rsp + 0x360], rdi
mov qword [rsp + 0x368], reloc.WS2_32.dll_ntohs
mov byte [rsp + 0x350], 0
mov dword [rsp + 0x370], edi
mov qword [rsp + 0x378], rdi
mov qword [rsp + 0x380], rdi
mov ecx, 0x68
call fcn.1800d2d50
mov qword [rax], rax
mov qword [rax + 8], rax
mov qword [rax + 0x10], rax
mov word [rax + 0x18], 0x101
mov qword [rsp + 0x378], rax
mov qword [rsp + 0x388], rdi
mov qword [rsp + 0x390], rdi
mov ecx, 0x68
call fcn.1800d2d50
mov qword [rax], rax
mov qword [rax + 8], rax
mov qword [rax + 0x10], rax
mov word [rax + 0x18], 0x101
mov qword [rsp + 0x388], rax
lea rax, [rsp + 0x350]
cmp rax, r12
je 0x1800060eb
mov rsi, qword [r12 + 0x10]
mov r9, r12
cmp qword [r12 + 0x18], 0xf
jbe 0x18000609d
mov r9, qword [r12]
mov rax, qword [rsp + 0x368]
cmp rsi, rax
ja 0x1800060db
lea rbx, [rsp + 0x350]
cmp rax, 0xf
cmova rbx, qword [rsp + 0x350]
mov qword [rsp + 0x360], rsi
mov r8, rsi
mov rdx, r9
mov rcx, rbx
call fcn.18010ab30
mov byte [rsi + rbx], 0
jmp 0x1800060eb
mov rdx, rsi
lea rcx, [rsp + 0x350]
call fcn.18000fdd0
xorps xmm0, xmm0
movups xmmword [rsp + 0x38], xmm0
mov qword [rsp + 0x48], rdi
mov qword [rsp + 0x50], rdi
mov r8, r13
lea rdx, str.max_hp
lea rcx, [rsp + 0x38]
call fcn.18000f550
lea rdx, [rsp + 0x38]
mov rcx, r15
call fcn.180009840
mov rcx, rax
call fcn.180014180
mov dword [rsp + 0x374], eax
xorps xmm0, xmm0
movups xmmword [rsp + 0x38], xmm0
mov qword [rsp + 0x48], rdi
mov qword [rsp + 0x50], rdi
mov r8, r13
lea rdx, str.skills
lea rcx, [rsp + 0x38]
call fcn.18000f550
lea rdx, [rsp + 0x38]
mov rcx, r15
call fcn.180009840
mov qword [rsp + 0x2c0], rax
xorps xmm0, xmm0
movups xmmword [rsp + 0x2e0], xmm0
movups xmmword [rsp + 0x2f0], xmm0
movups xmmword [rsp + 0x300], xmm0
movups xmmword [rsp + 0x310], xmm0
movups xmmword [rsp + 0x320], xmm0
movups xmmword [rsp + 0x330], xmm0
movups xmmword [rsp + 0x340], xmm0
lea rdx, [rsp + 0x38]
mov rcx, rax
call fcn.18000c950
nop
movups xmm0, xmmword [rax]
movaps xmmword [rsp + 0x2e0], xmm0
movups xmm1, xmmword [rax + 0x10]
movaps xmmword [rsp + 0x2f0], xmm1
mov qword [rsp + 0x300], rdi
mov qword [rsp + 0x308], rdi
xorps xmm0, xmm0
movups xmmword [rsp + 0x310], xmm0
mov qword [rsp + 0x320], rdi
mov qword [rsp + 0x328], rdi
mov r8d, 1
lea rdx, [0x180130cd4]
lea rcx, [rsp + 0x310]
call fcn.18000f550
xorps xmm0, xmm0
movups xmmword [rsp + 0x330], xmm0
mov qword [rsp + 0x340], rdi
mov qword [rsp + 0x348], reloc.WS2_32.dll_ntohs
mov byte [rsp + 0x330], 0
movups xmmword [rsp + 0x410], xmm0
movups xmmword [rsp + 0x420], xmm0
movups xmmword [rsp + 0x430], xmm0
movups xmmword [rsp + 0x440], xmm0
movups xmmword [rsp + 0x450], xmm0
movups xmmword [rsp + 0x460], xmm0
movups xmmword [rsp + 0x470], xmm0
lea rdx, [rsp + 0x410]
lea rcx, [rsp + 0x2c0]
call fcn.1800087e0
nop
nop dword [rax]
nop word [rax + rax]
lea rdx, [rsp + 0x410]
lea rcx, [rsp + 0x2e0]
call fcn.18000ea90
test al, al
je 0x180006413
xorps xmm0, xmm0
movups xmmword [rsp + 0x480], xmm0
mov qword [rsp + 0x490], rdi
mov qword [rsp + 0x498], 0xf
mov byte [rsp + 0x480], 0
lea rcx, [rsp + 0x2e0]
call fcn.180008630
mov rsi, rax
lea rcx, [rsp + 0x2e0]
call fcn.1800084c0
mov r14, rax
mov r8, rsi
lea rdx, [rsp + 0x60]
lea rcx, [rsp + 0x378]
call fcn.18000ee80
mov rcx, qword [rax]
add rcx, 0x40
lea rax, [rsp + 0x480]
cmp rcx, rax
je 0x180006331
mov rax, rcx
cmp qword [rcx + 0x18], 0xf
jbe 0x18000632a
mov rax, qword [rcx]
mov qword [rcx + 0x10], rdi
mov byte [rax], 0
mov eax, dword [rsp + 0x4a0]
mov dword [rcx + 0x20], eax
xorps xmm0, xmm0
movups xmmword [rsp + 0x38], xmm0
mov qword [rsp + 0x48], rdi
mov qword [rsp + 0x50], rdi
mov r8d, 4
lea rdx, str.name
lea rcx, [rsp + 0x38]
call fcn.18000f550
lea rdx, [rsp + 0x38]
mov rcx, r14
call fcn.180009840
mov rbx, rax
mov r8, rsi
lea rdx, [rsp + 0xc0]
lea rcx, [rsp + 0x378]
call fcn.18000ee80
mov rcx, qword [rax]
add rcx, 0x40
mov rdx, rbx
call fcn.18000e410
xorps xmm0, xmm0
movups xmmword [rsp + 0x38], xmm0
mov qword [rsp + 0x48], rdi
mov qword [rsp + 0x50], rdi
mov r8d, 3
lea rdx, [0x180130abc]
lea rcx, [rsp + 0x38]
call fcn.18000f550
lea rdx, [rsp + 0x38]
mov rcx, r14
call fcn.180009840
mov rcx, rax
call fcn.180014180
mov ebx, eax
mov r8, rsi
lea rdx, [rsp + 0xd0]
lea rcx, [rsp + 0x378]
call fcn.18000ee80
mov rcx, qword [rax]
mov dword [rcx + 0x60], ebx
lea rcx, [rsp + 0x2e0]
call fcn.18000c7d0
inc qword [rsp + 0x300]
jmp 0x180006290
mov rdx, qword [rsp + 0x478]
cmp rdx, 0xf
jbe 0x180006456
inc rdx
mov rcx, qword [rsp + 0x460]
mov rax, rcx
cmp rdx, 0x1000
jb 0x180006451
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x180006e52
call fcn.1800d30fc
mov rdx, qword [rsp + 0x458]
cmp rdx, 0xf
jbe 0x18000649a
inc rdx
mov rcx, qword [rsp + 0x440]
mov rax, rcx
cmp rdx, 0x1000
jb 0x180006494
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x180006e52
call fcn.1800d30fc
nop
mov rdx, qword [rsp + 0x348]
cmp rdx, 0xf
jbe 0x1800064dd
inc rdx
mov rcx, qword [rsp + 0x330]
mov rax, rcx
cmp rdx, 0x1000
jb 0x1800064d8
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x180006e58
call fcn.1800d30fc
mov qword [rsp + 0x340], rdi
mov qword [rsp + 0x348], reloc.WS2_32.dll_ntohs
mov byte [rsp + 0x330], 0
mov rdx, qword [rsp + 0x328]
cmp rdx, 0xf
jbe 0x18000653c
inc rdx
mov rcx, qword [rsp + 0x310]
mov rax, rcx
cmp rdx, 0x1000
jb 0x180006537
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x180006e58
call fcn.1800d30fc
xorps xmm0, xmm0
movups xmmword [rsp + 0x38], xmm0
mov qword [rsp + 0x48], rdi
mov qword [rsp + 0x50], rdi
mov r8d, 4
lea rdx, str.egos
lea rcx, [rsp + 0x38]
call fcn.18000f550
lea rdx, [rsp + 0x38]
mov rcx, r15
call fcn.180009840
mov qword [rsp + 0x2c0], rax
xorps xmm0, xmm0
movups xmmword [rsp + 0x2e0], xmm0
movups xmmword [rsp + 0x2f0], xmm0
movups xmmword [rsp + 0x300], xmm0
movups xmmword [rsp + 0x310], xmm0
movups xmmword [rsp + 0x320], xmm0
movups xmmword [rsp + 0x330], xmm0
movups xmmword [rsp + 0x340], xmm0
lea rdx, [rsp + 0x38]
mov rcx, rax
call fcn.18000c950
nop
movups xmm0, xmmword [rax]
movaps xmmword [rsp + 0x2e0], xmm0
movups xmm1, xmmword [rax + 0x10]
movaps xmmword [rsp + 0x2f0], xmm1
mov qword [rsp + 0x300], rdi
mov qword [rsp + 0x308], rdi
xorps xmm0, xmm0
movups xmmword [rsp + 0x310], xmm0
mov qword [rsp + 0x320], rdi
mov qword [rsp + 0x328], rdi
mov r8d, 1
lea rdx, [0x180130cd4]
lea rcx, [rsp + 0x310]
call fcn.18000f550
xorps xmm0, xmm0
movups xmmword [rsp + 0x330], xmm0
mov qword [rsp + 0x340], rdi
mov qword [rsp + 0x348], reloc.WS2_32.dll_ntohs
mov byte [rsp + 0x330], 0
movups xmmword [rsp + 0x410], xmm0
movups xmmword [rsp + 0x420], xmm0
movups xmmword [rsp + 0x430], xmm0
movups xmmword [rsp + 0x440], xmm0
movups xmmword [rsp + 0x450], xmm0
movups xmmword [rsp + 0x460], xmm0
movups xmmword [rsp + 0x470], xmm0
lea rdx, [rsp + 0x410]
lea rcx, [rsp + 0x2c0]
call fcn.1800087e0
nop
nop dword [rax]
nop dword [rax + rax]
lea rdx, [rsp + 0x410]
lea rcx, [rsp + 0x2e0]
call fcn.18000ea90
test al, al
je 0x180006826
xorps xmm0, xmm0
movups xmmword [rsp + 0x4a8], xmm0
mov qword [rsp + 0x4b8], rdi
mov qword [rsp + 0x4c0], 0xf
mov byte [rsp + 0x4a8], 0
lea rcx, [rsp + 0x2e0]
call fcn.180008630
mov rsi, rax
lea rcx, [rsp + 0x2e0]
call fcn.1800084c0
mov r14, rax
mov r8, rsi
lea rdx, [rsp + 0xe0]
lea rcx, [rsp + 0x388]
call fcn.18000ee80
mov rcx, qword [rax]
add rcx, 0x40
lea rax, [rsp + 0x4a8]
cmp rcx, rax
je 0x180006744
mov rax, rcx
cmp qword [rcx + 0x18], 0xf
jbe 0x18000673d
mov rax, qword [rcx]
mov qword [rcx + 0x10], rdi
mov byte [rax], 0
mov eax, dword [rsp + 0x4c8]
mov dword [rcx + 0x20], eax
xorps xmm0, xmm0
movups xmmword [rsp + 0x38], xmm0
mov qword [rsp + 0x48], rdi
mov qword [rsp + 0x50], rdi
mov r8d, 4
lea rdx, str.name
lea rcx, [rsp + 0x38]
call fcn.18000f550
lea rdx, [rsp + 0x38]
mov rcx, r14
call fcn.180009840
mov rbx, rax
mov r8, rsi
lea rdx, [rsp + 0xf0]
lea rcx, [rsp + 0x388]
call fcn.18000ee80
mov rcx, qword [rax]
add rcx, 0x40
mov rdx, rbx
call fcn.18000e410
xorps xmm0, xmm0
movups xmmword [rsp + 0x38], xmm0
mov qword [rsp + 0x48], rdi
mov qword [rsp + 0x50], rdi
mov r8d, 3
lea rdx, [0x180130abc]
lea rcx, [rsp + 0x38]
call fcn.18000f550
lea rdx, [rsp + 0x38]
mov rcx, r14
call fcn.180009840
mov rcx, rax
call fcn.180014180
mov ebx, eax
mov r8, rsi
lea rdx, [rsp + 0x90]
lea rcx, [rsp + 0x388]
call fcn.18000ee80
mov rcx, qword [rax]
mov dword [rcx + 0x60], ebx
lea rcx, [rsp + 0x2e0]
call fcn.18000c7d0
inc qword [rsp + 0x300]
jmp 0x1800066a0
mov rdx, qword [rsp + 0x478]
cmp rdx, 0xf
jbe 0x180006869
inc rdx
mov rcx, qword [rsp + 0x460]
mov rax, rcx
cmp rdx, 0x1000
jb 0x180006864
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x180006e5e
call fcn.1800d30fc
mov rdx, qword [rsp + 0x458]
cmp rdx, 0xf
jbe 0x1800068ad
inc rdx
mov rcx, qword [rsp + 0x440]
mov rax, rcx
cmp rdx, 0x1000
jb 0x1800068a7
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x180006e5e
call fcn.1800d30fc
nop
mov rdx, qword [rsp + 0x348]
cmp rdx, 0xf
jbe 0x1800068f0
inc rdx
mov rcx, qword [rsp + 0x330]
mov rax, rcx
cmp rdx, 0x1000
jb 0x1800068eb
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x180006e64
call fcn.1800d30fc
mov qword [rsp + 0x340], rdi
mov qword [rsp + 0x348], reloc.WS2_32.dll_ntohs
mov byte [rsp + 0x330], 0
mov rdx, qword [rsp + 0x328]
cmp rdx, 0xf
jbe 0x18000694f
inc rdx
mov rcx, qword [rsp + 0x310]
mov rax, rcx
cmp rdx, 0x1000
jb 0x18000694a
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x180006e64
call fcn.1800d30fc
mov r8, r12
lea rdx, [rsp + 0x70]
call fcn.18000ecc0
mov rcx, qword [rax]
add rcx, 0x40
lea rdx, [rsp + 0x350]
call fcn.1800072a0
nop
lea rdx, [rsp + 0x388]
lea rcx, [rsp + 0x388]
call fcn.18000f020
lea rdx, [rsp + 0x378]
lea rcx, [rsp + 0x378]
call fcn.18000f020
mov rdx, qword [rsp + 0x368]
cmp rdx, 0xf
jbe 0x1800069de
inc rdx
mov rcx, qword [rsp + 0x350]
mov rax, rcx
cmp rdx, 0x1000
jb 0x1800069d9
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x180006e6a
call fcn.1800d30fc
lea rcx, [rsp + 0x3a0]
call fcn.18000c7d0
inc qword [rsp + 0x3c0]
jmp 0x180005f50
mov rdx, qword [rsp + 0x638]
cmp rdx, 0xf
jbe 0x180006a3b
inc rdx
mov rcx, qword [rsp + 0x620]
mov rax, rcx
cmp rdx, 0x1000
jb 0x180006a36
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x180006e70
call fcn.1800d30fc
mov rdx, qword [rsp + 0x618]
cmp rdx, 0xf
jbe 0x180006a7f
inc rdx
mov rcx, qword [rsp + 0x600]
mov rax, rcx
cmp rdx, 0x1000
jb 0x180006a79
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x180006e70
call fcn.1800d30fc
nop
mov rdx, qword [rsp + 0x408]
cmp rdx, 0xf
jbe 0x180006ac2
inc rdx
mov rcx, qword [rsp + 0x3f0]
mov rax, rcx
cmp rdx, 0x1000
jb 0x180006abd
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x180006e76
call fcn.1800d30fc
movdqa xmm0, xmmword [0x18013e670]
movdqa xmmword [rsp + 0x400], xmm0
mov byte [rsp + 0x3f0], 0
mov rdx, qword [rsp + 0x3e8]
cmp rdx, 0xf
jbe 0x180006b1e
inc rdx
mov rcx, qword [rsp + 0x3d0]
mov rax, rcx
cmp rdx, 0x1000
jb 0x180006b19
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x180006e76
call fcn.1800d30fc
mov dword [rsp + 0x60], 0x415d575c
mov dword [rsp + 0x64], 0x41525d6a
mov word [rsp + 0x68], 0x100
nop word [rax + rax]
lea eax, [rdi + 0x31]
xor byte [rsp + rdi + 0x60], al
inc rdi
cmp rdi, 8
jb 0x180006b40
mov byte [rsp + 0x69], 0
lea r9, [rsp + 0x30]
lea r8, [rsp + 0x68]
lea rdx, [rsp + 0x60]
lea rcx, [rsp + 0x38]
call fcn.18000e960
mov r14d, dword [rsp + 0x58]
or r14d, 3
lea rdx, [rsp + 0x38]
lea rcx, [rsp + 0x2c8]
call fcn.180009840
nop
xorps xmm0, xmm0
movups xmmword [rsp + 0x70], xmm0
movdqa xmm1, xmmword [0x18013e670]
movdqu xmmword [rsp + 0x80], xmm1
mov byte [rsp + 0x70], 0
or r14d, 8
mov dword [rsp + 0x58], r14d
cmp byte [rax], 3
jne 0x180006e7c
mov rdx, qword [rax + 8]
lea rcx, [rsp + 0x70]
call fcn.18000aa70
nop
lea rdx, [rsp + 0x70]
cmp qword [rsp + 0x88], 0xf
cmova rdx, qword [rsp + 0x70]
lea rcx, [rsp + 0x2e0]
call fcn.1800593d0
mov rbx, rax
mov rdx, rax
lea rcx, [0x180255f30]
call fcn.18000ab00
movzx eax, byte [rbx + 0x20]
mov byte [0x180255f50], al
mov rdx, qword [rsp + 0x2f8]
cmp rdx, 0xf
jbe 0x180006c49
inc rdx
mov rcx, qword [rsp + 0x2e0]
mov rax, rcx
cmp rdx, 0x1000
jb 0x180006c44
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x180006ece
call fcn.1800d30fc
movdqa xmm0, xmmword [0x18013e670]
movdqu xmmword [rsp + 0x2f0], xmm0
mov byte [rsp + 0x2e0], 0
mov rdx, qword [rsp + 0x88]
cmp rdx, 0xf
jbe 0x180006ca2
inc rdx
mov rcx, qword [rsp + 0x70]
mov rax, rcx
cmp rdx, 0x1000
jb 0x180006c9d
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x180006ece
call fcn.1800d30fc
lea rcx, [rsp + 0x1c0]
call fcn.18000c280
test rax, rax
jne 0x180006cf6
mov rax, qword [rsp + 0x1b0]
movsxd rcx, dword [rax + 4]
mov eax, 2
cmp qword [rsp + rcx + 0x1f8], 0
cmovne r13d, eax
or r13d, dword [rsp + rcx + 0x1c0]
and r13d, 0x17
mov dword [rsp + rcx + 0x1c0], r13d
mov eax, dword [rsp + rcx + 0x1c4]
and eax, r13d
jne 0x180006ed4
lea rcx, [rsp + 0x4d0]
call fcn.180007070
nop
lea rcx, [rsp + 0x2c8]
call fcn.18000cb60
movzx edx, byte [rsp + 0x2c8]
lea rcx, [rsp + 0x2d0]
call fcn.18000c380
nop
mov rax, qword [rsp + 0x1b0]
movsxd rcx, dword [rax + 4]
lea rax, vtable.std::basic_ifstream_char__struct_std::char_traits_char__.0
mov qword [rsp + rcx + 0x1b0], rax
mov rax, qword [rsp + 0x1b0]
movsxd rcx, dword [rax + 4]
lea edx, [rcx - 0xb0]
mov dword [rsp + rcx + 0x1ac], edx
lea rcx, [rsp + 0x1c0]
call fcn.180009550
mov rax, qword [rsp + 0x1b0]
movsxd rcx, dword [rax + 4]
lea rax, vtable.std::basic_istream_char__struct_std::char_traits_char__.0
mov qword [rsp + rcx + 0x1b0], rax
mov rax, qword [rsp + 0x1b0]
movsxd rcx, dword [rax + 4]
lea edx, [rcx - 0x18]
mov dword [rsp + rcx + 0x1ac], edx
lea rax, vtable.std::ios_base.0
mov qword [rsp + 0x260], rax
lea rcx, [rsp + 0x260]
call fcn.1800d1f14
nop
mov rcx, qword [rsp + 0x640]
xor rcx, rsp
call fcn.1800d2d30
lea r11, [rsp + 0x650]
mov rbx, qword [r11 + 0x20]
mov rsi, qword [r11 + 0x28]
mov rdi, qword [r11 + 0x30]
mov r12, qword [r11 + 0x38]
mov rsp, r11
pop r15
pop r14
pop r13
ret
call fcn.1800da2dc
nop
call fcn.1800da2dc
nop
test al, 4
je 0x180006e01
lea rbx, str.ios_base::badbit_set
jmp 0x180006e15
test al, 2
lea rbx, str.ios_base::failbit_set
lea rax, str.ios_base::eofbit_set
cmove rbx, rax
mov edx, 1
lea rcx, [rsp + 0x60]
call fcn.1800042b0
mov r8, rax
mov rdx, rbx
lea rcx, [rsp + 0x100]
call fcn.180004a90
lea rdx, [0x180155c78]
lea rcx, [rsp + 0x100]
call fcn.1800d54c0
nop
call fcn.1800da2dc
nop
call fcn.1800da2dc
nop
call fcn.1800da2dc
nop
call fcn.1800da2dc
nop
call fcn.1800da2dc
nop
call fcn.1800da2dc
nop
call fcn.1800da2dc
nop
call fcn.1800da2dc
nop
mov rcx, rax
call fcn.18000c8c0
mov qword [rsp + 0x2c0], rax
lea r8, [rsp + 0x2c0]
lea rdx, str.type_must_be_string__but_is
lea rcx, [rsp + 0x90]
call fcn.18001f610
nop
mov r8, rax
lea rcx, [rsp + 0x178]
call fcn.18001f6e0
lea rdx, [0x180155b28]
lea rcx, [rsp + 0x178]
call fcn.1800d54c0
nop
call fcn.1800da2dc
int3
test al, 4
je 0x180006ee1
lea rbx, str.ios_base::badbit_set
jmp 0x180006ef5
test al, 2
lea rbx, str.ios_base::failbit_set
lea rax, str.ios_base::eofbit_set
cmove rbx, rax
mov edx, 1
lea rcx, [rsp + 0x70]
call fcn.1800042b0
mov r8, rax
mov rdx, rbx
lea rcx, [rsp + 0x128]
call fcn.180004a90
lea rdx, [0x180155c78]
lea rcx, [rsp + 0x128]
call fcn.1800d54c0
int3