Function at 0x1400066d0
Capabilities:
Access peb ldr_data
Encode data using xor
Hash data using fnv
Resolve function by parsing pe exports

Disassembly:
mov rax, rsp
mov qword [rax + 8], rbx
mov qword [rax + 0x10], rsi
mov qword [rax + 0x18], rdi
push rbp
push r12
push r13
push r14
push r15
lea rbp, [rax - 0x318]
sub rsp, 0x3f0
movaps xmmword [rax - 0x38], xmm6
mov rax, qword [0x14014a080]
xor rax, rsp
mov qword [rbp + 0x2d0], rax
mov r15, rcx
movss xmm2, dword [0x140171734]
subss xmm2, dword [0x14013a5fc]
movd xmm0, dword [0x14017283c]
cvtdq2ps xmm0, xmm0
subss xmm2, xmm0
movd xmm1, dword [0x140172830]
cvtdq2ps xmm1, xmm1
subss xmm2, xmm1
movss xmm0, dword [rcx + 0x14]
mulss xmm0, dword [0x14013a5c0]
addss xmm2, xmm0
mov dword [rsp + 0x40], 0
movss dword [rsp + 0x44], xmm2
mov rcx, qword [0x140172948]
mov rax, qword [rcx + 0x3f08]
mov byte [rax + 0xb8], 1
mov rbx, qword [rcx + 0x3f08]
movsxd r8, dword [rbx + 0xf0]
mov rax, qword [rbx + 0xf8]
mov r8d, dword [rax + r8*4 - 4]
xor edx, edx
lea rcx, str.Content
call fcn.1400131f0
mov edi, eax
mov rdx, qword [rbx]
cmp dword [rdx + 0x3f50], eax
jne 0x1400067b8
lea r8, str.Content
mov edx, ntohl
mov ecx, eax
call fcn.140029f20
mov dword [rsp + 0x20], 0x80
mov r9b, 1
lea r8, [rsp + 0x40]
mov edx, edi
lea rcx, str.Content
call fcn.14001a010
mov rax, qword [0x140172948]
mov rcx, qword [rax + 0x3f08]
movss xmm6, dword [rcx + 0x28]
movss xmm0, dword [r15 + 8]
subss xmm6, dword [r15 + 0x54]
addss xmm0, xmm0
subss xmm6, xmm0
lea rcx, [rbp + 0x120]
call fcn.140004390
nop
lea rcx, [rbp + 0x120]
cmp qword [rbp + 0x138], 0x10
cmovae rcx, qword [rbp + 0x120]
lea rsi, [0x140172840]
movabs r13, 0x3f9dd141f40c6937
mov r14, 0xffffffffffffffff
lea r12, [0x140172c28]
mov rdi, qword [rbp + 0x130]
cmp rdi, 5
jne 0x140006ef2
mov r8, rdi
lea rdx, [0x1400be760]
call sub.VCRUNTIME140.dll_memcmp
test eax, eax
jne 0x140006ef2
movss dword [rsp + 0x40], xmm6
mov dword [rsp + 0x44], eax
mov rcx, qword [0x140172948]
mov rax, qword [rcx + 0x3f08]
mov byte [rax + 0xb8], 1
mov rbx, qword [rcx + 0x3f08]
movsxd r8, dword [rbx + 0xf0]
mov rax, qword [rbx + 0xf8]
mov r8d, dword [rax + r8*4 - 4]
xor edx, edx
lea rcx, str.Login
call fcn.1400131f0
mov esi, eax
mov rdx, qword [rbx]
cmp dword [rdx + 0x3f50], eax
jne 0x1400068cd
lea r8, str.Login
lea edx, [rdi + 6]
mov ecx, eax
call fcn.140029f20
mov dword [rsp + 0x20], 0x400
mov r9b, 1
lea r8, [rsp + 0x40]
mov edx, esi
lea rcx, str.Login
call fcn.14001a010
movabs rcx, 0x5befbe36877f0867
mov qword [rbp + 0x140], rcx
movabs rbx, 0xcaf15c179876adb4
mov qword [rbp + 0x148], rbx
movabs rax, 0x3e82df58f51a7b32
mov qword [rsp + 0x50], rax
mov qword [rsp + 0x58], rbx
movdqa xmm0, xmmword [rbp + 0x140]
xorps xmm0, xmmword [rsp + 0x50]
movdqa xmmword [rsp + 0x60], xmm0
mov qword [rbp + 0x140], rcx
mov qword [rbp + 0x148], rbx
mov qword [rsp + 0x50], rax
mov qword [rsp + 0x58], rbx
movdqa xmm0, xmmword [rbp + 0x140]
xorps xmm0, xmmword [rsp + 0x50]
movdqa xmmword [rbp + 0x150], xmm0
mov dword [rsp + 0x20], 0
lea rsi, [0x140172840]
mov r8, rsi
lea rdx, [rsp + 0x60]
lea rcx, [rbp + 0x150]
call fcn.14000d330
movabs rax, 0x5befbe36877f0867
mov qword [rbp + 0x140], rax
mov qword [rbp + 0x148], rbx
mov qword [rsp + 0x50], r13
mov qword [rsp + 0x58], rbx
movdqa xmm0, xmmword [rbp + 0x140]
xorps xmm0, xmmword [rsp + 0x50]
movdqa xmmword [rsp + 0x60], xmm0
mov qword [rbp + 0x140], rax
mov qword [rbp + 0x148], rbx
mov qword [rsp + 0x50], r13
mov qword [rsp + 0x58], rbx
movdqa xmm0, xmmword [rbp + 0x140]
xorps xmm0, xmmword [rsp + 0x50]
movdqa xmmword [rbp + 0x150], xmm0
mov dword [rsp + 0x20], 0x8000
lea r13, [0x140172730]
mov r8, r13
lea rdx, [rsp + 0x60]
lea rcx, [rbp + 0x150]
call fcn.14000d330
mov rax, qword [0x140172948]
mov rcx, qword [rax + 0x3f08]
movss xmm1, dword [rcx + 0x28]
movss xmm0, dword [r15 + 8]
addss xmm0, xmm0
subss xmm1, xmm0
movss dword [rsp + 0x40], xmm1
mov dword [rsp + 0x44], 0
movabs rax, 0x5befbe36877f0867
mov qword [rbp + 0x140], rax
mov qword [rbp + 0x148], rbx
movabs rax, 0x5befbe58ee18672b
mov qword [rsp + 0x50], rax
mov qword [rsp + 0x58], rbx
movdqa xmm0, xmmword [rbp + 0x140]
xorps xmm0, xmmword [rsp + 0x50]
movdqa xmmword [rsp + 0x60], xmm0
lea rdx, [rsp + 0x40]
lea rcx, [rsp + 0x60]
call fcn.140040c00
test al, al
je 0x140006d7f
lea rax, [rbp + 0x150]
mov qword [rsp + 0x50], rax
xorps xmm0, xmm0
movups xmmword [rbp + 0x150], xmm0
xor ebx, ebx
mov qword [rbp + 0x160], rbx
mov qword [rbp + 0x168], rbx
mov r8, r14
inc r8
cmp byte [r8 + r13], bl
jne 0x140006ab7
mov rdx, r13
lea rcx, [rbp + 0x150]
call fcn.1400035b0
nop
xorps xmm0, xmm0
movups xmmword [rbp], xmm0
mov qword [rbp + 0x10], rbx
mov qword [rbp + 0x18], rbx
mov r8, r14
inc r8
cmp byte [rsi + r8], 0
jne 0x140006ae2
mov rdx, rsi
lea rcx, [rbp]
call fcn.1400035b0
nop
lea r8, [rbp + 0x150]
lea rdx, [rbp]
lea rcx, [0x140172a10]
call fcn.1400568d0
cmp byte [0x140172c20], 0
jne 0x140006c5b
mov rax, qword gs:[0x60]
mov rax, qword [rax + 0x18]
mov rax, qword [rax + 0x10]
nop
mov r11, qword [rax + 0x30]
movsxd rcx, dword [r11 + 0x3c]
mov edi, dword [rcx + r11 + 0x88]
add rdi, r11
cmp rdi, r11
je 0x140006ba6
mov r9d, dword [rdi + 0x18]
test r9d, r9d
je 0x140006ba6
mov ebx, dword [rdi + 0x20]
nop dword [rax]
nop dword [rax + rax]
dec r9d
lea rcx, [rbx + r9*4]
mov edx, dword [rcx + r11]
add rdx, r11
mov r8d, 0x811c9dc5
movzx ecx, byte [rdx]
inc rdx
test cl, cl
je 0x140006ba1
nop
movsx ecx, cl
xor ecx, r8d
imul r8d, ecx, 0x1000193
movzx ecx, byte [rdx]
lea rdx, [rdx + 1]
test cl, cl
jne 0x140006b80
cmp r8d, 0x23a979e4
je 0x140006bab
test r9d, r9d
jne 0x140006b60
mov rax, qword [rax]
jmp 0x140006b30
mov ecx, dword [rdi + 0x1c]
add rcx, r11
mov eax, dword [rdi + 0x24]
add rax, r11
movzx eax, word [rax + r9*2]
mov r10d, dword [rcx + rax*4]
add r10, r11
movabs rax, 0x5befbe36877f0867
mov qword [rbp + 0x140], rax
movabs rax, 0xcaf15c179876adb4
mov qword [rbp + 0x148], rax
movabs rcx, 0x5befbe44e80d7a22
mov qword [rbp + 0x20], rcx
mov qword [rbp + 0x28], rax
movdqa xmm0, xmmword [rbp + 0x140]
xorps xmm0, xmmword [rbp + 0x20]
movdqa xmmword [rbp + 0x20], xmm0
mov rdx, r12
cmp qword [0x140172c40], 0x10
cmovae rdx, qword [0x140172c28]
xor r9d, r9d
lea r8, [rbp + 0x20]
xor ecx, ecx
call r10
xor edx, edx
mov r8d, 0xff
mov rcx, r13
call sub.VCRUNTIME140.dll_memset
xor edx, edx
mov r8d, 0xff
mov rcx, rsi
call sub.VCRUNTIME140.dll_memset
xor edx, edx
mov r8d, 0xff
lea rcx, [0x140172630]
call sub.VCRUNTIME140.dll_memset
mov rax, qword gs:[0x60]
mov rax, qword [rax + 0x18]
mov rax, qword [rax + 0x10]
nop dword [rax]
mov r11, qword [rax + 0x30]
movsxd rcx, dword [r11 + 0x3c]
mov edi, dword [rcx + r11 + 0x88]
add rdi, r11
cmp rdi, r11
je 0x140006ce6
mov r9d, dword [rdi + 0x18]
test r9d, r9d
je 0x140006ce6
mov ebx, dword [rdi + 0x20]
nop dword [rax]
nop dword [rax + rax]
dec r9d
lea rcx, [r11 + r9*4]
mov edx, dword [rcx + rbx]
add rdx, r11
mov r8d, 0x811c9dc5
movzx ecx, byte [rdx]
inc rdx
test cl, cl
je 0x140006ce1
nop dword [rax]
movsx ecx, cl
xor ecx, r8d
imul r8d, ecx, 0x1000193
movzx ecx, byte [rdx]
lea rdx, [rdx + 1]
test cl, cl
jne 0x140006cc0
cmp r8d, 0x23a979e4
je 0x140006ceb
test r9d, r9d
jne 0x140006ca0
mov rax, qword [rax]
jmp 0x140006c70
mov ecx, dword [rdi + 0x1c]
add rcx, r11
mov eax, dword [rdi + 0x24]
add rax, r11
movzx eax, word [rax + r9*2]
mov r10d, dword [rcx + rax*4]
add r10, r11
movabs rax, 0x5befbe36877f0867
mov qword [rbp + 0x210], rax
movabs rbx, 0xcaf15c179876adb4
mov qword [rbp + 0x218], rbx
movabs rax, 0x5b9ccd53e41c7d34
mov qword [rbp + 0x30], rax
mov qword [rbp + 0x38], rbx
movdqa xmm0, xmmword [rbp + 0x210]
xorps xmm0, xmmword [rbp + 0x30]
movdqa xmmword [rbp + 0x30], xmm0
mov rdx, r12
cmp qword [0x140172c40], 0x10
cmovae rdx, qword [0x140172c28]
xor r9d, r9d
lea r8, [rbp + 0x30]
xor ecx, ecx
call r10
mov byte [0x14017282f], 1
mov dword [0x140172838], 1
mov rdi, qword [rbp + 0x130]
mov rax, qword [0x140172948]
mov rcx, qword [rax + 0x3f08]
movss xmm1, dword [rcx + 0x28]
movss xmm0, dword [r15 + 8]
addss xmm0, xmm0
subss xmm1, xmm0
movss dword [rsp + 0x40], xmm1
mov dword [rsp + 0x44], 0
movabs rax, 0x5befbe36877f0867
mov qword [rbp + 0x240], rax
mov qword [rbp + 0x248], rbx
movabs rax, 0x5befbe53f4106424
mov qword [rbp + 0x50], rax
mov qword [rbp + 0x58], rbx
movdqa xmm0, xmmword [rbp + 0x240]
xorps xmm0, xmmword [rbp + 0x50]
movdqa xmmword [rbp + 0x50], xmm0
lea rdx, [rsp + 0x40]
lea rcx, [rbp + 0x50]
call fcn.140040c00
test al, al
je 0x140006eed
xor edx, edx
mov r8d, 0xff
mov rcx, r13
call sub.VCRUNTIME140.dll_memset
xor edx, edx
mov r8d, 0xff
mov rcx, rsi
call sub.VCRUNTIME140.dll_memset
xor edx, edx
mov r8d, 0xff
lea rcx, [0x140172630]
call sub.VCRUNTIME140.dll_memset
mov rax, qword gs:[0x60]
mov rax, qword [rax + 0x18]
mov rax, qword [rax + 0x10]
nop dword [rax]
nop dword [rax + rax]
mov r10, qword [rax + 0x30]
movsxd rcx, dword [r10 + 0x3c]
mov edi, dword [rcx + r10 + 0x88]
add rdi, r10
cmp rdi, r10
je 0x140006ec6
mov r9d, dword [rdi + 0x18]
test r9d, r9d
je 0x140006ec6
mov ebx, dword [rdi + 0x20]
nop dword [rax]
nop dword [rax + rax]
dec r9d
lea rcx, [r10 + r9*4]
mov edx, dword [rcx + rbx]
add rdx, r10
mov r8d, 0x811c9dc5
movzx ecx, byte [rdx]
inc rdx
test cl, cl
je 0x140006ec1
nop dword [rax]
movsx ecx, cl
xor ecx, r8d
imul r8d, ecx, 0x1000193
movzx ecx, byte [rdx]
lea rdx, [rdx + 1]
test cl, cl
jne 0x140006ea0
cmp r8d, 0xe80fd3a
je 0x140006ecb
test r9d, r9d
jne 0x140006e80
mov rax, qword [rax]
jmp 0x140006e50
mov ecx, dword [rdi + 0x1c]
add rcx, r10
mov eax, dword [rdi + 0x24]
add rax, r10
movzx eax, word [rax + r9*2]
mov edx, dword [rcx + rax*4]
add rdx, r10
xor ecx, ecx
call rdx
mov rdi, qword [rbp + 0x130]
call fcn.14001a290
lea rcx, [rbp + 0x120]
cmp qword [rbp + 0x138], 0x10
cmovae rcx, qword [rbp + 0x120]
movabs r13, 0x5b8acd58e21c612b
cmp rdi, 8
jne 0x1400076f2
mov r8, rdi
lea rdx, [0x1400be768]
call sub.VCRUNTIME140.dll_memcmp
test eax, eax
jne 0x1400076f2
movss dword [rsp + 0x78], xmm6
mov dword [rsp + 0x7c], eax
mov rcx, qword [0x140172948]
mov rax, qword [rcx + 0x3f08]
mov byte [rax + 0xb8], 1
mov rbx, qword [rcx + 0x3f08]
movsxd r8, dword [rbx + 0xf0]
mov rax, qword [rbx + 0xf8]
mov r8d, dword [rax + r8*4 - 4]
xor edx, edx
lea rcx, str.Register
call fcn.1400131f0
mov esi, eax
mov rdx, qword [rbx]
cmp dword [rdx + 0x3f50], eax
jne 0x140006f99
lea r8, str.Register
lea edx, [rdi + 3]
mov ecx, eax
call fcn.140029f20
mov dword [rsp + 0x20], 0x400
mov r9b, 1
lea r8, [rsp + 0x78]
mov edx, esi
lea rcx, str.Register
call fcn.14001a010
movabs rcx, 0x5befbe36877f0867
mov qword [rbp + 0x270], rcx
movabs rbx, 0xcaf15c179876adb4
mov qword [rbp + 0x278], rbx
movabs rax, 0x3e82df58f51a7b32
mov qword [rbp + 0x60], rax
mov qword [rbp + 0x68], rbx
movdqa xmm0, xmmword [rbp + 0x270]
xorps xmm0, xmmword [rbp + 0x60]
movdqa xmmword [rbp + 0x60], xmm0
mov qword [rbp + 0x2a0], rcx
mov qword [rbp + 0x2a8], rbx
mov qword [rbp + 0x70], rax
mov qword [rbp + 0x78], rbx
movdqa xmm0, xmmword [rbp + 0x2a0]
xorps xmm0, xmmword [rbp + 0x70]
movdqa xmmword [rbp + 0x70], xmm0
mov dword [rsp + 0x20], 0
lea rsi, [0x140172840]
mov r8, rsi
lea rdx, [rbp + 0x60]
lea rcx, [rbp + 0x70]
call fcn.14000d330
movabs rcx, 0x5befbe36877f0867
mov qword [rbp + 0x1d0], rcx
mov qword [rbp + 0x1d8], rbx
movabs rax, 0x3f9dd141f40c6937
mov qword [rbp + 0x80], rax
mov qword [rbp + 0x88], rbx
movdqa xmm0, xmmword [rbp + 0x1d0]
xorps xmm0, xmmword [rbp + 0x80]
movdqa xmmword [rbp + 0x80], xmm0
mov qword [rbp + 0x200], rcx
mov qword [rbp + 0x208], rbx
mov qword [rbp + 0x40], rax
mov qword [rbp + 0x48], rbx
movdqa xmm0, xmmword [rbp + 0x200]
xorps xmm0, xmmword [rbp + 0x40]
movdqa xmmword [rbp + 0x40], xmm0
mov dword [rsp + 0x20], 0x8000
lea r8, [0x140172730]
lea rdx, [rbp + 0x80]
lea rcx, [rbp + 0x40]
call fcn.14000d330
movabs rax, 0x5befbe36877f0867
mov qword [rbp + 0x1f0], rax
mov qword [rbp + 0x1f8], rbx
mov qword [rbp - 0x40], r13
mov qword [rbp - 0x38], rbx
movdqa xmm0, xmmword [rbp + 0x1f0]
xorps xmm0, xmmword [rbp - 0x40]
movdqa xmmword [rbp - 0x40], xmm0
mov qword [rbp + 0x1b0], rax
mov qword [rbp + 0x1b8], rbx
mov qword [rbp - 0x60], r13
mov qword [rbp - 0x58], rbx
movdqa xmm0, xmmword [rbp + 0x1b0]
xorps xmm0, xmmword [rbp - 0x60]
movdqa xmmword [rbp - 0x60], xmm0
mov dword [rsp + 0x20], 0
lea r8, [0x140172630]
lea rdx, [rbp - 0x40]
lea rcx, [rbp - 0x60]
call fcn.14000d330
mov rax, qword [0x140172948]
mov rcx, qword [rax + 0x3f08]
movss xmm1, dword [rcx + 0x28]
movss xmm0, dword [r15 + 8]
addss xmm0, xmm0
subss xmm1, xmm0
movss dword [rbp - 0x80], xmm1
mov dword [rbp - 0x7c], 0
movabs rax, 0x5befbe36877f0867
mov qword [rbp + 0x170], rax
mov qword [rbp + 0x178], rbx
movabs rax, 0x298aca45ee186d35
mov qword [rbp + 0x90], rax
mov qword [rbp + 0x98], rbx
movdqa xmm0, xmmword [rbp + 0x170]
xorps xmm0, xmmword [rbp + 0x90]
movdqa xmmword [rbp + 0x90], xmm0
lea rdx, [rbp - 0x80]
lea rcx, [rbp + 0x90]
call fcn.140040c00
test al, al
je 0x14000756e
lea rax, [rbp + 0x170]
mov qword [rbp - 0x80], rax
xorps xmm0, xmm0
movups xmmword [rbp + 0x170], xmm0
xor ebx, ebx
mov qword [rbp + 0x180], rbx
mov qword [rbp + 0x188], rbx
xor r8d, r8d
lea rdx, [0x1400be6cd]
lea rcx, [rbp + 0x170]
call fcn.1400035b0
nop
lea rax, [rbp - 0x60]
mov qword [rsp + 0x78], rax
xorps xmm0, xmm0
movups xmmword [rbp - 0x60], xmm0
mov qword [rbp - 0x50], rbx
mov qword [rbp - 0x48], rbx
mov r8, r14
lea rax, [0x140172630]
nop dword [rax]
inc r8
cmp byte [rax + r8], 0
jne 0x140007230
mov rdx, rax
lea rcx, [rbp - 0x60]
call fcn.1400035b0
nop
lea rax, [rbp + 0x1b0]
mov qword [rsp + 0x40], rax
xorps xmm0, xmm0
movups xmmword [rbp + 0x1b0], xmm0
mov qword [rbp + 0x1c0], rbx
mov qword [rbp + 0x1c8], rbx
mov r8, r14
lea rax, [0x140172730]
inc r8
cmp byte [rax + r8], 0
jne 0x140007275
mov rdx, rax
lea rcx, [rbp + 0x1b0]
call fcn.1400035b0
nop
xorps xmm0, xmm0
movups xmmword [rbp - 0x40], xmm0
mov qword [rbp - 0x30], rbx
mov qword [rbp - 0x28], rbx
mov r8, r14
inc r8
cmp byte [rsi + r8], 0
jne 0x1400072a1
mov rdx, rsi
lea rcx, [rbp - 0x40]
call fcn.1400035b0
nop
lea rax, [rbp + 0x170]
mov qword [rsp + 0x20], rax
lea r9, [rbp - 0x60]
lea r8, [rbp + 0x1b0]
lea rdx, [rbp - 0x40]
lea rcx, [0x140172a10]
call fcn.140058c90
cmp byte [0x140172c20], 0
jne 0x14000743e
mov rax, qword gs:[0x60]
mov rax, qword [rax + 0x18]
mov rax, qword [rax + 0x10]
nop dword [rax]
mov r11, qword [rax + 0x30]
movsxd rcx, dword [r11 + 0x3c]
mov edi, dword [rcx + r11 + 0x88]
add rdi, r11
cmp rdi, r11
je 0x140007376
mov r9d, dword [rdi + 0x18]
test r9d, r9d
je 0x140007376
mov ebx, dword [rdi + 0x20]
nop dword [rax]
nop dword [rax + rax]
dec r9d
lea rcx, [rbx + r9*4]
mov edx, dword [rcx + r11]
add rdx, r11
mov r8d, 0x811c9dc5
movzx ecx, byte [rdx]
inc rdx
test cl, cl
je 0x140007371
nop
movsx ecx, cl
xor ecx, r8d
imul r8d, ecx, 0x1000193
movzx ecx, byte [rdx]
lea rdx, [rdx + 1]
test cl, cl
jne 0x140007350
cmp r8d, 0x23a979e4
je 0x14000737b
test r9d, r9d
jne 0x140007330
mov rax, qword [rax]
jmp 0x140007300
mov ecx, dword [rdi + 0x1c]
add rcx, r11
mov eax, dword [rdi + 0x24]
add rax, r11
movzx eax, word [rax + r9*2]
mov r10d, dword [rcx + rax*4]
add r10, r11
movabs rax, 0x5befbe36877f0867
mov qword [rbp + 0x230], rax
movabs rax, 0xcaf15c179876adb4
mov qword [rbp + 0x238], rax
movabs rcx, 0x5befbe44e80d7a22
mov qword [rbp + 0xa0], rcx
mov qword [rbp + 0xa8], rax
movdqa xmm0, xmmword [rbp + 0x230]
xorps xmm0, xmmword [rbp + 0xa0]
movdqa xmmword [rbp + 0xa0], xmm0
mov rdx, r12
cmp qword [0x140172c40], 0x10
cmovae rdx, qword [0x140172c28]
xor r9d, r9d
lea r8, [rbp + 0xa0]
xor ecx, ecx
call r10
xor edx, edx
mov r8d, 0xff
lea rcx, [0x140172730]
call sub.VCRUNTIME140.dll_memset
xor edx, edx
mov r8d, 0xff
mov rcx, rsi
call sub.VCRUNTIME140.dll_memset
xor edx, edx
mov r8d, 0xff
lea rcx, [0x140172630]
call sub.VCRUNTIME140.dll_memset
mov rax, qword gs:[0x60]
mov rax, qword [rax + 0x18]
mov rax, qword [rax + 0x10]
nop
mov r11, qword [rax + 0x30]
movsxd rcx, dword [r11 + 0x3c]
mov edi, dword [rcx + r11 + 0x88]
add rdi, r11
cmp rdi, r11
je 0x1400074c6
mov r9d, dword [rdi + 0x18]
test r9d, r9d
je 0x1400074c6
mov ebx, dword [rdi + 0x20]
nop dword [rax]
nop dword [rax + rax]
dec r9d
lea rcx, [rbx + r9*4]
mov edx, dword [rcx + r11]
add rdx, r11
mov r8d, 0x811c9dc5
movzx ecx, byte [rdx]
inc rdx
test cl, cl
je 0x1400074c1
nop
movsx ecx, cl
xor ecx, r8d
imul r8d, ecx, 0x1000193
movzx ecx, byte [rdx]
lea rdx, [rdx + 1]
test cl, cl
jne 0x1400074a0
cmp r8d, 0x23a979e4
je 0x1400074cb
test r9d, r9d
jne 0x140007480
mov rax, qword [rax]
jmp 0x140007450
mov ecx, dword [rdi + 0x1c]
add rcx, r11
mov eax, dword [rdi + 0x24]
add rax, r11
movzx eax, word [rax + r9*2]
mov r10d, dword [rcx + rax*4]
add r10, r11
movabs rax, 0x5befbe36877f0867
mov qword [rbp + 0x250], rax
movabs rbx, 0xcaf15c179876adb4
mov qword [rbp + 0x258], rbx
movabs rax, 0x5b9ccd53e41c7d34
mov qword [rbp + 0xb0], rax
mov qword [rbp + 0xb8], rbx
movdqa xmm0, xmmword [rbp + 0x250]
xorps xmm0, xmmword [rbp + 0xb0]
movdqa xmmword [rbp + 0xb0], xmm0
mov rdx, r12
cmp qword [0x140172c40], 0x10
cmovae rdx, qword [0x140172c28]
xor r9d, r9d
lea r8, [rbp + 0xb0]
xor ecx, ecx
call r10
mov byte [0x14017282f], 0
mov dword [0x140172834], 0
mov rdi, qword [rbp + 0x130]
mov rax, qword [0x140172948]
mov rcx, qword [rax + 0x3f08]
movss xmm1, dword [rcx + 0x28]
movss xmm0, dword [r15 + 8]
addss xmm0, xmm0
subss xmm1, xmm0
movss dword [rbp - 0x78], xmm1
mov dword [rbp - 0x74], 0
movabs rax, 0x5befbe36877f0867
mov qword [rbp + 0x290], rax
mov qword [rbp + 0x298], rbx
movabs rax, 0x5befbe53f4106424
mov qword [rbp + 0xc0], rax
mov qword [rbp + 0xc8], rbx
movdqa xmm0, xmmword [rbp + 0x290]
xorps xmm0, xmmword [rbp + 0xc0]
movdqa xmmword [rbp + 0xc0], xmm0
lea rdx, [rbp - 0x78]
lea rcx, [rbp + 0xc0]
call fcn.140040c00
test al, al
je 0x1400076ed
xor edx, edx
mov r8d, 0xff
lea rcx, [0x140172730]
call sub.VCRUNTIME140.dll_memset
xor edx, edx
mov r8d, 0xff
mov rcx, rsi
call sub.VCRUNTIME140.dll_memset
xor edx, edx
mov r8d, 0xff
lea rcx, [0x140172630]
call sub.VCRUNTIME140.dll_memset
mov rax, qword gs:[0x60]
mov rax, qword [rax + 0x18]
mov rax, qword [rax + 0x10]
nop dword [rax]
nop word [rax + rax]
mov r10, qword [rax + 0x30]
movsxd rcx, dword [r10 + 0x3c]
mov edi, dword [rcx + r10 + 0x88]
add rdi, r10
cmp rdi, r10
je 0x1400076c6
mov r9d, dword [rdi + 0x18]
test r9d, r9d
je 0x1400076c6
mov ebx, dword [rdi + 0x20]
nop dword [rax]
nop dword [rax + rax]
dec r9d
lea rcx, [r10 + r9*4]
mov edx, dword [rcx + rbx]
add rdx, r10
mov r8d, 0x811c9dc5
movzx ecx, byte [rdx]
inc rdx
test cl, cl
je 0x1400076c1
nop dword [rax]
movsx ecx, cl
xor ecx, r8d
imul r8d, ecx, 0x1000193
movzx ecx, byte [rdx]
lea rdx, [rdx + 1]
test cl, cl
jne 0x1400076a0
cmp r8d, 0xe80fd3a
je 0x1400076cb
test r9d, r9d
jne 0x140007680
mov rax, qword [rax]
jmp 0x140007650
mov ecx, dword [rdi + 0x1c]
add rcx, r10
mov eax, dword [rdi + 0x24]
add rax, r10
movzx eax, word [rax + r9*2]
mov edx, dword [rcx + rax*4]
add rdx, r10
xor ecx, ecx
call rdx
mov rdi, qword [rbp + 0x130]
call fcn.14001a290
lea rcx, [rbp + 0x120]
cmp qword [rbp + 0x138], 0x10
cmovae rcx, qword [rbp + 0x120]
cmp rdi, 7
jne 0x140007dcc
mov r8, rdi
lea rdx, [0x1400be778]
call sub.VCRUNTIME140.dll_memcmp
test eax, eax
jne 0x140007dcc
movss dword [rbp - 0x70], xmm6
mov dword [rbp - 0x6c], eax
mov rcx, qword [0x140172948]
mov rax, qword [rcx + 0x3f08]
mov byte [rax + 0xb8], 1
mov rbx, qword [rcx + 0x3f08]
movsxd r8, dword [rbx + 0xf0]
mov rax, qword [rbx + 0xf8]
mov r8d, dword [rax + r8*4 - 4]
xor edx, edx
lea rcx, str.Upgrade
call fcn.1400131f0
mov edi, eax
mov r8, qword [rbx]
cmp dword [r8 + 0x3f50], eax
jne 0x140007790
lea r8, str.Upgrade
mov edx, ntohl
mov ecx, eax
call fcn.140029f20
mov dword [rsp + 0x20], 0x400
mov r9b, 1
lea r8, [rbp - 0x70]
mov edx, edi
lea rcx, str.Upgrade
call fcn.14001a010
movabs rcx, 0x5befbe36877f0867
mov qword [rbp + 0x2b0], rcx
movabs rbx, 0xcaf15c179876adb4
mov qword [rbp + 0x2b8], rbx
movabs rax, 0x3e82df58f51a7b32
mov qword [rbp + 0xd0], rax
mov qword [rbp + 0xd8], rbx
movdqa xmm0, xmmword [rbp + 0x2b0]
xorps xmm0, xmmword [rbp + 0xd0]
movdqa xmmword [rbp + 0xd0], xmm0
mov qword [rbp + 0x1e0], rcx
mov qword [rbp + 0x1e8], rbx
mov qword [rbp + 0xe0], rax
mov qword [rbp + 0xe8], rbx
movdqa xmm0, xmmword [rbp + 0x1e0]
xorps xmm0, xmmword [rbp + 0xe0]
movdqa xmmword [rbp + 0xe0], xmm0
xor edi, edi
mov dword [rsp + 0x20], edi
mov r8, rsi
lea rdx, [rbp + 0xd0]
lea rcx, [rbp + 0xe0]
call fcn.14000d330
movabs rax, 0x5befbe36877f0867
mov qword [rbp + 0x260], rax
mov qword [rbp + 0x268], rbx
mov qword [rbp + 0xf0], r13
mov qword [rbp + 0xf8], rbx
movdqa xmm0, xmmword [rbp + 0x260]
xorps xmm0, xmmword [rbp + 0xf0]
movdqa xmmword [rbp + 0xf0], xmm0
mov qword [rbp + 0x220], rax
mov qword [rbp + 0x228], rbx
mov qword [rbp - 0x20], r13
mov qword [rbp - 0x18], rbx
movdqa xmm0, xmmword [rbp + 0x220]
xorps xmm0, xmmword [rbp - 0x20]
movdqa xmmword [rbp - 0x20], xmm0
mov dword [rsp + 0x20], edi
lea r13, [0x140172630]
mov r8, r13
lea rdx, [rbp + 0xf0]
lea rcx, [rbp - 0x20]
call fcn.14000d330
mov rax, qword [0x140172948]
mov rcx, qword [rax + 0x3f08]
movss xmm1, dword [rcx + 0x28]
movss xmm0, dword [r15 + 8]
addss xmm0, xmm0
subss xmm1, xmm0
movss dword [rsp + 0x70], xmm1
mov dword [rsp + 0x74], edi
movabs rax, 0x5befbe36877f0867
mov qword [rbp + 0x190], rax
mov qword [rbp + 0x198], rbx
movabs rax, 0x5b8ada57f5187832
mov qword [rbp + 0x100], rax
mov qword [rbp + 0x108], rbx
movdqa xmm0, xmmword [rbp + 0x190]
xorps xmm0, xmmword [rbp + 0x100]
movdqa xmmword [rbp + 0x100], xmm0
lea rdx, [rsp + 0x70]
lea rcx, [rbp + 0x100]
call fcn.140040c00
test al, al
je 0x140007c60
lea rax, [rbp + 0x190]
mov qword [rbp + 0x140], rax
xorps xmm0, xmm0
movups xmmword [rbp + 0x190], xmm0
mov qword [rbp + 0x1a0], rdi
mov qword [rbp + 0x1a8], rdi
mov r8, r14
inc r8
cmp byte [r8 + r13], dil
jne 0x140007983
mov rdx, r13
lea rcx, [rbp + 0x190]
call fcn.1400035b0
nop
xorps xmm0, xmm0
movups xmmword [rbp - 0x20], xmm0
mov qword [rbp - 0x10], rdi
mov qword [rbp - 8], rdi
nop dword [rax + rax]
inc r14
cmp byte [rsi + r14], 0
jne 0x1400079b0
mov r8, r14
mov rdx, rsi
lea rcx, [rbp - 0x20]
call fcn.1400035b0
nop
lea r8, [rbp + 0x190]
lea rdx, [rbp - 0x20]
lea rcx, [0x140172a10]
call fcn.14005c6b0
cmp byte [0x140172c20], 0
jne 0x140007b3c
mov rax, qword gs:[0x60]
mov rax, qword [rax + 0x18]
mov rax, qword [rax + 0x10]
nop
mov r11, qword [rax + 0x30]
movsxd rcx, dword [r11 + 0x3c]
mov edi, dword [rcx + r11 + 0x88]
add rdi, r11
cmp rdi, r11
je 0x140007a76
mov r9d, dword [rdi + 0x18]
test r9d, r9d
je 0x140007a76
mov ebx, dword [rdi + 0x20]
nop dword [rax]
nop dword [rax + rax]
dec r9d
lea rcx, [r11 + r9*4]
mov edx, dword [rcx + rbx]
add rdx, r11
mov r8d, 0x811c9dc5
movzx ecx, byte [rdx]
inc rdx
test cl, cl
je 0x140007a71
nop dword [rax]
movsx ecx, cl
xor ecx, r8d
imul r8d, ecx, 0x1000193
movzx ecx, byte [rdx]
lea rdx, [rdx + 1]
test cl, cl
jne 0x140007a50
cmp r8d, 0x23a979e4
je 0x140007a7b
test r9d, r9d
jne 0x140007a30
mov rax, qword [rax]
jmp 0x140007a00
mov ecx, dword [rdi + 0x1c]
add rcx, r11
mov eax, dword [rdi + 0x24]
add rax, r11
movzx eax, word [rax + r9*2]
mov r10d, dword [rcx + rax*4]
add r10, r11
movabs r14, 0x5befbe36877f0867
mov qword [rbp + 0x2c0], r14
movabs rax, 0xcaf15c179876adb4
mov qword [rbp + 0x2c8], rax
movabs rcx, 0x5befbe44e80d7a22
mov qword [rbp + 0x110], rcx
mov qword [rbp + 0x118], rax
movdqa xmm0, xmmword [rbp + 0x2c0]
xorps xmm0, xmmword [rbp + 0x110]
movdqa xmmword [rbp + 0x110], xmm0
mov rdx, r12
cmp qword [0x140172c40], 0x10
cmovae rdx, qword [0x140172c28]
xor r9d, r9d
lea r8, [rbp + 0x110]
xor ecx, ecx
call r10
xor edx, edx
mov r8d, 0xff
lea rcx, [0x140172730]
call sub.VCRUNTIME140.dll_memset
xor edx, edx
mov r8d, 0xff
mov rcx, rsi
call sub.VCRUNTIME140.dll_memset
xor edx, edx
mov r8d, 0xff
mov rcx, r13
call sub.VCRUNTIME140.dll_memset
jmp 0x140007b46
movabs r14, 0x5befbe36877f0867
mov rax, qword gs:[0x60]
mov rax, qword [rax + 0x18]
mov rax, qword [rax + 0x10]
nop word [rax + rax]
mov r11, qword [rax + 0x30]
movsxd rcx, dword [r11 + 0x3c]
mov edi, dword [rcx + r11 + 0x88]
add rdi, r11
cmp rdi, r11
je 0x140007bd6
mov r9d, dword [rdi + 0x18]
test r9d, r9d
je 0x140007bd6
mov ebx, dword [rdi + 0x20]
nop dword [rax]
nop dword [rax + rax]
dec r9d
lea rcx, [rbx + r9*4]
mov edx, dword [rcx + r11]
add rdx, r11
mov r8d, 0x811c9dc5
movzx ecx, byte [rdx]
inc rdx
test cl, cl
je 0x140007bd1
nop
movsx ecx, cl
xor ecx, r8d
imul r8d, ecx, 0x1000193
movzx ecx, byte [rdx]
lea rdx, [rdx + 1]
test cl, cl
jne 0x140007bb0
cmp r8d, 0x23a979e4
je 0x140007bdb
test r9d, r9d
jne 0x140007b90
mov rax, qword [rax]
jmp 0x140007b60
mov ecx, dword [rdi + 0x1c]
add rcx, r11
mov eax, dword [rdi + 0x24]
add rax, r11
movzx eax, word [rax + r9*2]
mov r10d, dword [rcx + rax*4]
add r10, r11
mov qword [rbp + 0x280], r14
movabs rbx, 0xcaf15c179876adb4
mov qword [rbp + 0x288], rbx
movabs rax, 0x5b9ccd53e41c7d34
mov qword [rbp], rax
mov qword [rbp + 8], rbx
movdqa xmm0, xmmword [rbp + 0x280]
xorps xmm0, xmmword [rbp]
movdqa xmmword [rbp], xmm0
cmp qword [0x140172c40], 0x10
cmovae r12, qword [0x140172c28]
xor r9d, r9d
lea r8, [rbp]
mov rdx, r12
xor ecx, ecx
call r10
mov byte [0x14017282f], 0
mov dword [0x140172834], 0
jmp 0x140007c6a
movabs r14, 0x5befbe36877f0867
mov rax, qword [0x140172948]
mov rcx, qword [rax + 0x3f08]
movss xmm1, dword [rcx + 0x28]
movss xmm0, dword [r15 + 8]
addss xmm0, xmm0
subss xmm1, xmm0
movss dword [rsp + 0x50], xmm1
mov dword [rsp + 0x54], 0
mov qword [rbp + 0x150], r14
mov qword [rbp + 0x158], rbx
movabs rax, 0x5befbe53f4106424
mov qword [rsp + 0x60], rax
mov qword [rsp + 0x68], rbx
movdqa xmm0, xmmword [rbp + 0x150]
xorps xmm0, xmmword [rsp + 0x60]
movdqa xmmword [rsp + 0x60], xmm0
lea rdx, [rsp + 0x50]
lea rcx, [rsp + 0x60]
call fcn.140040c00
test al, al
je 0x140007dc6
xor edx, edx
mov r8d, 0xff
lea rcx, [0x140172730]
call sub.VCRUNTIME140.dll_memset
xor edx, edx
mov r8d, 0xff
mov rcx, rsi
call sub.VCRUNTIME140.dll_memset
xor edx, edx
mov r8d, 0xff
mov rcx, r13
call sub.VCRUNTIME140.dll_memset
mov rax, qword gs:[0x60]
mov rax, qword [rax + 0x18]
mov rax, qword [rax + 0x10]
nop word [rax + rax]
mov r10, qword [rax + 0x30]
movsxd rcx, dword [r10 + 0x3c]
mov edi, dword [rcx + r10 + 0x88]
add rdi, r10
cmp rdi, r10
je 0x140007da6
mov r9d, dword [rdi + 0x18]
test r9d, r9d
je 0x140007da6
mov ebx, dword [rdi + 0x20]
nop dword [rax]
nop dword [rax + rax]
dec r9d
lea rcx, [r10 + r9*4]
mov edx, dword [rcx + rbx]
add rdx, r10
mov r8d, 0x811c9dc5
movzx ecx, byte [rdx]
inc rdx
test cl, cl
je 0x140007da1
nop dword [rax]
movsx ecx, cl
xor ecx, r8d
imul r8d, ecx, 0x1000193
movzx ecx, byte [rdx]
lea rdx, [rdx + 1]
test cl, cl
jne 0x140007d80
cmp r8d, 0xe80fd3a
je 0x140007dab
test r9d, r9d
jne 0x140007d60
mov rax, qword [rax]
jmp 0x140007d30
mov ecx, dword [rdi + 0x1c]
add rcx, r10
mov eax, dword [rdi + 0x24]
add rax, r10
movzx eax, word [rax + r9*2]
mov edx, dword [rcx + rax*4]
add rdx, r10
xor ecx, ecx
call rdx
call fcn.14001a290
nop
mov rdx, qword [rbp + 0x138]
cmp rdx, 0x10
jb 0x140007e10
inc rdx
mov rcx, qword [rbp + 0x120]
mov rax, rcx
cmp rdx, 0x1000
jb 0x140007e0b
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
jbe 0x140007e0b
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
int3
call fcn.1400ac658
call fcn.14001a290
mov rcx, qword [rbp + 0x2d0]
xor rcx, rsp
call fcn.1400ac630
lea r11, [rsp + 0x3f0]
mov rbx, qword [r11 + 0x30]
mov rsi, qword [r11 + 0x38]
mov rdi, qword [r11 + 0x40]
movaps xmm6, xmmword [r11 - 0x10]
mov rsp, r11
pop r15
pop r14
pop r13
pop r12
pop rbp
ret