Function at 0x1800b99e0
Capabilities:
Encode data using base64

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 - 0x138]
sub rsp, 0x210
movaps xmmword [rax - 0x38], xmm6
movaps xmmword [rax - 0x48], xmm7
movaps xmmword [rax - 0x58], xmm8
movaps xmmword [rax - 0x68], xmm9
movaps xmmword [rax - 0x78], xmm10
movaps xmmword [rax - 0x88], xmm11
movaps xmmword [rax - 0x98], xmm12
movaps xmmword [rax - 0xa8], xmm13
movaps xmmword [rax - 0xb8], xmm14
movaps xmmword [rax - 0xc8], xmm15
mov rax, qword [0x1802dd180]
xor rax, rsp
mov qword [rbp + 0x60], rax
xorps xmm1, xmm1
movdqu xmmword [rbp + 0x48], xmm1
xor r12d, r12d
mov qword [rbp + 0x58], r12
mov r13, qword [0x1802e0e00]
mov rax, qword [0x1802e0e08]
mov qword [rbp + 0x38], rax
xorps xmm8, xmm8
movss xmm14, dword [0x180164cb4]
movss xmm15, dword [0x180164c18]
cmp r13, rax
je 0x1800ba2fb
lea rdi, [r13 + 0x20]
movss xmm13, dword [0x180164c40]
movzx r15d, byte [0x1801ac7da]
movzx ebx, word [0x1801ac7d8]
movsd xmm7, qword [str.FVJReR_RP_]
movzx esi, byte [0x1801ac7e9]
movzx r14d, word [0x1801ac7e8]
movsd xmm6, qword [str._ERJfSXSS_]
nop
mov ecx, dword [rdi + 0x44]
test ecx, ecx
je 0x1800ba226
sub ecx, 1
je 0x1800b9e91
sub ecx, 1
je 0x1800b9e23
sub ecx, 1
je 0x1800b9d6e
cmp ecx, 1
jne 0x1800ba2e9
movsd qword [rsp + 0x60], xmm7
mov word [rsp + 0x68], bx
movzx ecx, r15b
mov byte [rsp + 0x60], reloc.WS2_32.dll_WSAStartup
xor byte [rsp + 0x61], 0x36
xor byte [rsp + 0x62], 0x37
xor byte [rsp + 0x63], 0x38
xor byte [rsp + 0x64], 0x39
xor byte [rsp + 0x65], 0x3a
xor byte [rsp + 0x66], 0x3b
xor byte [rsp + 0x67], 0x3c
movzx eax, bl
xor al, 0x3d
mov byte [rsp + 0x68], al
xor byte [rsp + 0x69], 0x3e
xor cl, 0x3f
mov byte [rsp + 0x6a], cl
lea rcx, [rsp + 0x60]
mov rax, 0xffffffffffffffff
inc rax
cmp byte [rcx + rax], 0
jne 0x1800b9b57
mov r12, qword [rdi + 0x10]
mov rcx, rdi
mov rdx, qword [rdi + 0x18]
cmp rdx, 0xf
jbe 0x1800b9b74
mov rcx, qword [rdi]
cmp r12, rax
jne 0x1800b9c41
mov r8, r12
lea rdx, [rsp + 0x60]
call sub.VCRUNTIME140.dll_memcmp
test eax, eax
jne 0x1800b9c3d
call fcn.18001a240
mov rbx, rax
movss xmm6, dword [rdi + 0x40]
addss xmm6, xmm8
movdqa xmm0, xmmword [0x180164d80]
movups xmmword [rbp + 0x18], xmm0
lea rcx, [rbp + 0x18]
call fcn.1800177e0
mov dword [rbp - 0x70], 0x3f800000
mov dword [rbp - 0x6c], 0x3f800000
mov qword [rbp - 0x68], 0
movss xmm3, dword [rdi + 0x24]
movaps xmm2, xmm3
addss xmm2, dword [rdi + 0x2c]
movss xmm1, dword [rdi + 0x20]
movaps xmm0, xmm1
addss xmm0, dword [rdi + 0x28]
movss dword [rbp - 0x60], xmm0
movss dword [rbp - 0x5c], xmm2
movss dword [rbp - 0x58], xmm1
movss dword [rbp - 0x54], xmm3
xor r12d, r12d
mov dword [rsp + 0x40], r12d
movss dword [rsp + 0x38], xmm6
mov dword [rsp + 0x30], eax
lea rax, [rbp - 0x70]
mov qword [rsp + 0x28], rax
lea rax, [rbp - 0x68]
mov qword [rsp + 0x20], rax
lea r9, [rbp - 0x60]
lea r8, [rbp - 0x58]
mov rdx, qword [0x1802e06b8]
mov rcx, rbx
call fcn.18002d0f0
jmp 0x1800ba2b6
mov rdx, qword [rdi + 0x18]
movsd qword [rsp + 0x50], xmm6
mov word [rsp + 0x58], r14w
test sil, sil
je 0x1800b9c84
mov byte [rsp + 0x50], 0x75
xor byte [rsp + 0x51], 0x36
xor byte [rsp + 0x52], 0x37
xor byte [rsp + 0x53], 0x38
xor byte [rsp + 0x54], 0x39
xor byte [rsp + 0x55], 0x3a
xor byte [rsp + 0x56], 0x3b
xor byte [rsp + 0x57], 0x3c
xor byte [rsp + 0x58], 0x3d
xor byte [rsp + 0x59], 0x3e
lea rcx, [rsp + 0x50]
mov rax, 0xffffffffffffffff
inc rax
cmp byte [rcx + rax], 0
jne 0x1800b9c90
mov rcx, rdi
cmp rdx, 0xf
jbe 0x1800b9ca5
mov rcx, qword [rdi]
cmp r12, rax
jne 0x1800ba2e6
mov r8, r12
lea rdx, [rsp + 0x50]
call sub.VCRUNTIME140.dll_memcmp
test eax, eax
jne 0x1800ba2e6
call fcn.18001a240
mov rbx, rax
movss xmm6, dword [rdi + 0x40]
addss xmm6, xmm8
movdqa xmm0, xmmword [0x180164d80]
movups xmmword [rbp + 0x28], xmm0
lea rcx, [rbp + 0x28]
call fcn.1800177e0
mov dword [rbp - 0x50], 0x3f800000
mov dword [rbp - 0x4c], 0x3f800000
mov qword [rbp - 0x48], 0
movss xmm3, dword [rdi + 0x24]
movaps xmm2, xmm3
addss xmm2, dword [rdi + 0x2c]
movss xmm1, dword [rdi + 0x20]
movaps xmm0, xmm1
addss xmm0, dword [rdi + 0x28]
movss dword [rbp - 0x40], xmm0
movss dword [rbp - 0x3c], xmm2
movss dword [rbp - 0x38], xmm1
movss dword [rbp - 0x34], xmm3
xor r12d, r12d
mov dword [rsp + 0x40], r12d
movss dword [rsp + 0x38], xmm6
mov dword [rsp + 0x30], eax
lea rax, [rbp - 0x50]
mov qword [rsp + 0x28], rax
lea rax, [rbp - 0x48]
mov qword [rsp + 0x20], rax
lea r9, [rbp - 0x40]
lea r8, [rbp - 0x38]
mov rdx, qword [0x1802e06b0]
mov rcx, rbx
call fcn.18002d0f0
jmp 0x1800ba2b6
cmp byte [rdi + 0x48], 0
je 0x1800b9dc8
call fcn.18001a240
cvttss2si ecx, dword [rdi + 0x2c]
mov r9d, dword [rdi + 0x3c]
shl r9d, 8
or r9d, dword [rdi + 0x38]
shl r9d, 8
or r9d, dword [rdi + 0x34]
shl r9d, 8
or r9d, dword [rdi + 0x30]
movss xmm1, dword [rdi + 0x24]
movss xmm0, dword [rdi + 0x20]
movss dword [rbp - 0x30], xmm0
movss dword [rbp - 0x2c], xmm1
mov dword [rsp + 0x20], ecx
movss xmm2, dword [rdi + 0x28]
lea rdx, [rbp - 0x30]
mov rcx, rax
call fcn.18002be00
jmp 0x1800ba2b6
call fcn.18001a240
cvttss2si ecx, dword [rdi + 0x2c]
mov r9d, dword [rdi + 0x3c]
shl r9d, 8
or r9d, dword [rdi + 0x38]
shl r9d, 8
or r9d, dword [rdi + 0x34]
shl r9d, 8
or r9d, dword [rdi + 0x30]
movss xmm1, dword [rdi + 0x24]
movss xmm0, dword [rdi + 0x20]
movss dword [rbp - 0x28], xmm0
movss dword [rbp - 0x24], xmm1
movss dword [rsp + 0x28], xmm13
mov dword [rsp + 0x20], ecx
movss xmm2, dword [rdi + 0x28]
lea rdx, [rbp - 0x28]
mov rcx, rax
call fcn.18002bd10
jmp 0x1800ba2b6
call fcn.18001a240
movss xmm3, dword [rdi + 0x40]
addss xmm3, xmm8
mov r9d, dword [rdi + 0x3c]
shl r9d, 8
or r9d, dword [rdi + 0x38]
shl r9d, 8
or r9d, dword [rdi + 0x34]
shl r9d, 8
or r9d, dword [rdi + 0x30]
movss xmm1, dword [rdi + 0x2c]
movss xmm0, dword [rdi + 0x28]
movss dword [rbp - 0x20], xmm0
movss dword [rbp - 0x1c], xmm1
movss xmm2, dword [rdi + 0x24]
movss xmm0, dword [rdi + 0x20]
movss dword [rbp - 0x18], xmm0
movss dword [rbp - 0x14], xmm2
movss dword [rsp + 0x20], xmm3
lea r8, [rbp - 0x20]
lea rdx, [rbp - 0x18]
mov rcx, rax
call fcn.18002d2c0
jmp 0x1800ba2b6
cmp byte [rdi + 0x4a], 0
je 0x1800b9eba
mov rsi, qword [rbp + 0x50]
cmp rsi, qword [rbp + 0x58]
je 0x1800ba2a6
mov rdx, r13
mov rcx, rsi
call fcn.1800ac400
add qword [rbp + 0x50], 0x70
jmp 0x1800ba2b6
cmp byte [rdi + 0x48], 0
je 0x1800ba1a0
mov rcx, qword [0x1802e0e88]
cmp byte [rdi + 0x49], 0
cmovne rcx, qword [0x1802e0e80]
mov rax, rdi
cmp qword [rdi + 0x18], 0xf
jbe 0x1800b9ee4
mov rax, qword [rdi]
mov qword [rsp + 0x38], r12
mov qword [rsp + 0x30], r12
mov qword [rsp + 0x28], rax
movss dword [rsp + 0x20], xmm8
movaps xmm3, xmm14
movss xmm2, dword [rdi + 0x28]
lea rdx, [rbp + 0x40]
call fcn.180032200
cmp byte [rdi + 0x4b], 0
je 0x1800ba111
movss xmm11, dword [rdi + 0x24]
movss xmm0, dword [rbp + 0x40]
mulss xmm0, xmm15
movss xmm6, dword [rdi + 0x20]
subss xmm6, xmm0
mov rbx, qword [0x1802e0e88]
cmp byte [rdi + 0x49], 0
cmovne rbx, qword [0x1802e0e80]
call fcn.18001a240
mov rdx, rdi
cmp qword [rdi + 0x18], 0xf
jbe 0x1800b9f54
mov rdx, qword [rdi]
mov ecx, dword [rdi + 0x3c]
shl ecx, 0x18
movaps xmm12, xmm11
addss xmm12, xmm13
movaps xmm10, xmm6
addss xmm10, xmm13
movss dword [rbp - 0x10], xmm10
movss dword [rbp - 0xc], xmm12
mov qword [rsp + 0x40], r12
movss dword [rsp + 0x38], xmm8
mov qword [rsp + 0x30], r12
mov qword [rsp + 0x28], rdx
mov dword [rsp + 0x20], ecx
lea r9, [rbp - 0x10]
movss xmm2, dword [rdi + 0x28]
mov rdx, rbx
mov rcx, rax
call fcn.180031bb0
call fcn.18001a240
mov rdx, rdi
cmp qword [rdi + 0x18], 0xf
jbe 0x1800b9fb8
mov rdx, qword [rdi]
mov ecx, dword [rdi + 0x3c]
shl ecx, 0x18
movaps xmm7, xmm11
subss xmm7, xmm13
movaps xmm9, xmm6
subss xmm9, xmm13
movss dword [rbp - 8], xmm9
movss dword [rbp - 4], xmm7
mov qword [rsp + 0x40], r12
movss dword [rsp + 0x38], xmm8
mov qword [rsp + 0x30], r12
mov qword [rsp + 0x28], rdx
mov dword [rsp + 0x20], ecx
lea r9, [rbp - 8]
movss xmm2, dword [rdi + 0x28]
mov rdx, rbx
mov rcx, rax
call fcn.180031bb0
call fcn.18001a240
mov rdx, rdi
cmp qword [rdi + 0x18], 0xf
jbe 0x1800ba01b
mov rdx, qword [rdi]
mov ecx, dword [rdi + 0x3c]
shl ecx, 0x18
movss dword [rbp], xmm10
movss dword [rbp + 4], xmm7
mov qword [rsp + 0x40], r12
movss dword [rsp + 0x38], xmm8
mov qword [rsp + 0x30], r12
mov qword [rsp + 0x28], rdx
mov dword [rsp + 0x20], ecx
lea r9, [rbp]
movss xmm2, dword [rdi + 0x28]
mov rdx, rbx
mov rcx, rax
call fcn.180031bb0
call fcn.18001a240
mov rdx, rdi
cmp qword [rdi + 0x18], 0xf
jbe 0x1800ba06c
mov rdx, qword [rdi]
mov ecx, dword [rdi + 0x3c]
shl ecx, 0x18
movss dword [rbp + 8], xmm9
movss dword [rbp + 0xc], xmm12
mov qword [rsp + 0x40], r12
movss dword [rsp + 0x38], xmm8
mov qword [rsp + 0x30], r12
mov qword [rsp + 0x28], rdx
mov dword [rsp + 0x20], ecx
lea r9, [rbp + 8]
movss xmm2, dword [rdi + 0x28]
mov rdx, rbx
mov rcx, rax
call fcn.180031bb0
call fcn.18001a240
mov rdx, rdi
cmp qword [rdi + 0x18], 0xf
jbe 0x1800ba0be
mov rdx, qword [rdi]
mov ecx, dword [rdi + 0x3c]
shl ecx, 8
or ecx, dword [rdi + 0x38]
shl ecx, 8
or ecx, dword [rdi + 0x34]
shl ecx, 8
or ecx, dword [rdi + 0x30]
movss dword [rbp + 0x10], xmm6
movss dword [rbp + 0x14], xmm11
mov qword [rsp + 0x40], r12
movss dword [rsp + 0x38], xmm8
mov qword [rsp + 0x30], r12
mov qword [rsp + 0x28], rdx
mov dword [rsp + 0x20], ecx
lea r9, [rbp + 0x10]
movss xmm2, dword [rdi + 0x28]
mov rdx, rbx
mov rcx, rax
call fcn.180031bb0
jmp 0x1800ba2b6
call fcn.18001a240
mov r8, rdi
cmp qword [rdi + 0x18], 0xf
jbe 0x1800ba123
mov r8, qword [rdi]
mov ecx, dword [rdi + 0x3c]
shl ecx, 8
or ecx, dword [rdi + 0x38]
shl ecx, 8
or ecx, dword [rdi + 0x34]
shl ecx, 8
or ecx, dword [rdi + 0x30]
movss xmm2, dword [rdi + 0x24]
movss xmm1, dword [rbp + 0x40]
mulss xmm1, xmm15
movss xmm0, dword [rdi + 0x20]
subss xmm0, xmm1
movss dword [rsp + 0x70], xmm0
movss dword [rsp + 0x74], xmm2
mov rdx, qword [0x1802e0e88]
cmp byte [rdi + 0x49], 0
cmovne rdx, qword [0x1802e0e80]
mov qword [rsp + 0x40], r12
movss dword [rsp + 0x38], xmm8
mov qword [rsp + 0x30], r12
mov qword [rsp + 0x28], r8
mov dword [rsp + 0x20], ecx
lea r9, [rsp + 0x70]
movss xmm2, dword [rdi + 0x28]
mov rcx, rax
call fcn.180031bb0
jmp 0x1800ba2b6
call fcn.18001a240
mov r8, rdi
cmp qword [rdi + 0x18], 0xf
jbe 0x1800ba1b2
mov r8, qword [rdi]
mov ecx, dword [rdi + 0x3c]
shl ecx, 8
or ecx, dword [rdi + 0x38]
shl ecx, 8
or ecx, dword [rdi + 0x34]
shl ecx, 8
or ecx, dword [rdi + 0x30]
movss xmm1, dword [rdi + 0x24]
movss xmm0, dword [rdi + 0x20]
movss dword [rsp + 0x78], xmm0
movss dword [rsp + 0x7c], xmm1
movss xmm2, dword [rdi + 0x28]
addss xmm2, xmm8
mov rdx, qword [0x1802e0e88]
cmp byte [rdi + 0x49], 0
cmovne rdx, qword [0x1802e0e80]
mov qword [rsp + 0x40], r12
movss dword [rsp + 0x38], xmm8
mov qword [rsp + 0x30], r12
mov qword [rsp + 0x28], r8
mov dword [rsp + 0x20], ecx
lea r9, [rsp + 0x78]
mov rcx, rax
call fcn.180031bb0
jmp 0x1800ba2b6
cmp byte [rdi + 0x4a], 0
jne 0x1800b9e97
call fcn.18001a240
movss xmm4, dword [rdi + 0x40]
addss xmm4, xmm8
mov r9d, dword [rdi + 0x3c]
shl r9d, 8
or r9d, dword [rdi + 0x38]
shl r9d, 8
or r9d, dword [rdi + 0x34]
shl r9d, 8
or r9d, dword [rdi + 0x30]
movss xmm3, dword [rdi + 0x24]
movaps xmm2, xmm3
addss xmm2, dword [rdi + 0x2c]
movss xmm1, dword [rdi + 0x20]
movaps xmm0, xmm1
addss xmm0, dword [rdi + 0x28]
movss dword [rbp - 0x80], xmm0
movss dword [rbp - 0x7c], xmm2
movss dword [rbp - 0x78], xmm1
movss dword [rbp - 0x74], xmm3
mov dword [rsp + 0x28], r12d
movss dword [rsp + 0x20], xmm4
lea r8, [rbp - 0x80]
lea rdx, [rbp - 0x78]
mov rcx, rax
call fcn.18002e3d0
jmp 0x1800ba2b6
mov r8, r13
mov rdx, qword [rbp + 0x50]
lea rcx, [rbp + 0x48]
call fcn.1800a0710
movzx r15d, byte [0x1801ac7da]
movzx ebx, word [0x1801ac7d8]
movsd xmm7, qword [str.FVJReR_RP_]
movzx esi, byte [0x1801ac7e9]
movzx r14d, word [0x1801ac7e8]
movsd xmm6, qword [str._ERJfSXSS_]
jmp 0x1800ba2e9
xor r12d, r12d
add r13, 0x70
add rdi, 0x70
cmp r13, qword [rbp + 0x38]
jne 0x1800b9ad0
mov rsi, qword [rbp + 0x50]
mov rcx, rsi
mov rbx, qword [rbp + 0x48]
sub rcx, rbx
movabs rax, 0x4924924924924925
imul rcx
sar rdx, 5
mov rax, rdx
shr rax, 0x3f
add rdx, rax
je 0x1800ba4d7
cmp rbx, rsi
je 0x1800ba4d7
add rbx, 0x38
cmp dword [rbx + 0x2c], 0
jne 0x1800ba3b6
call fcn.18001a240
movss xmm4, dword [rbx + 0x28]
addss xmm4, xmm8
mov r9d, dword [rbx + 0x24]
shl r9d, 8
or r9d, dword [rbx + 0x20]
shl r9d, 8
or r9d, dword [rbx + 0x1c]
shl r9d, 8
or r9d, dword [rbx + 0x18]
movss xmm3, dword [rbx + 0xc]
movaps xmm2, xmm3
addss xmm2, dword [rbx + 0x14]
movss xmm1, dword [rbx + 8]
movaps xmm0, xmm1
addss xmm0, dword [rbx + 0x10]
movss dword [rbp - 0x78], xmm0
movss dword [rbp - 0x74], xmm2
movss dword [rbp - 0x80], xmm1
movss dword [rbp - 0x7c], xmm3
mov dword [rsp + 0x28], r12d
movss dword [rsp + 0x20], xmm4
lea r8, [rbp - 0x78]
lea rdx, [rbp - 0x80]
mov rcx, rax
call fcn.18002e3d0
jmp 0x1800ba4c6
lea rdi, [rbx - 0x18]
cmp byte [rbx + 0x30], 0
je 0x1800ba449
mov rcx, qword [0x1802e0e88]
cmp byte [rbx + 0x31], 0
cmovne rcx, qword [0x1802e0e80]
mov rax, rdi
cmp qword [rbx], 0xf
jbe 0x1800ba3e3
mov rax, qword [rdi]
mov qword [rsp + 0x38], r12
mov qword [rsp + 0x30], r12
mov qword [rsp + 0x28], rax
movss dword [rsp + 0x20], xmm8
movaps xmm3, xmm14
movss xmm2, dword [rbx + 0x10]
lea rdx, [rbp + 0x38]
call fcn.180032200
call fcn.18001a240
cmp qword [rbx], 0xf
jbe 0x1800ba419
mov rdi, qword [rdi]
movss xmm2, dword [rbx + 0xc]
movss xmm1, dword [rbp + 0x38]
mulss xmm1, xmm15
movss xmm0, dword [rbx + 8]
subss xmm0, xmm1
movss dword [rsp + 0x78], xmm0
movss dword [rsp + 0x7c], xmm2
lea r9, [rsp + 0x78]
movss xmm2, dword [rbx + 0x10]
jmp 0x1800ba47c
call fcn.18001a240
cmp qword [rbx], 0xf
jbe 0x1800ba457
mov rdi, qword [rdi]
movss xmm1, dword [rbx + 0xc]
movss xmm0, dword [rbx + 8]
movss dword [rsp + 0x70], xmm0
movss dword [rsp + 0x74], xmm1
movss xmm2, dword [rbx + 0x10]
addss xmm2, xmm8
lea r9, [rsp + 0x70]
mov ecx, dword [rbx + 0x24]
shl ecx, 8
or ecx, dword [rbx + 0x20]
shl ecx, 8
mov qword [rsp + 0x40], r12
or ecx, dword [rbx + 0x1c]
movss dword [rsp + 0x38], xmm8
shl ecx, 8
mov qword [rsp + 0x30], r12
or ecx, dword [rbx + 0x18]
mov qword [rsp + 0x28], rdi
mov rdx, qword [0x1802e0e88]
cmp byte [rbx + 0x31], 0
mov dword [rsp + 0x20], ecx
cmovne rdx, qword [0x1802e0e80]
mov rcx, rax
call fcn.180031bb0
add rbx, 0x70
lea rax, [rbx - 0x38]
cmp rax, rsi
jne 0x1800ba337
lea rcx, [rbp + 0x48]
call fcn.1800ad2f0
mov rcx, qword [rbp + 0x60]
xor rcx, rsp
call fcn.180157e20
lea r11, [rsp + 0x210]
mov rbx, qword [r11 + 0x30]
mov rsi, qword [r11 + 0x38]
mov rdi, qword [r11 + 0x40]
movaps xmm6, xmmword [r11 - 0x10]
movaps xmm7, xmmword [r11 - 0x20]
movaps xmm8, xmmword [r11 - 0x30]
movaps xmm9, xmmword [r11 - 0x40]
movaps xmm10, xmmword [r11 - 0x50]
movaps xmm11, xmmword [r11 - 0x60]
movaps xmm12, xmmword [r11 - 0x70]
movaps xmm13, xmmword [r11 - 0x80]
movaps xmm14, xmmword [r11 - 0x90]
movaps xmm15, xmmword [r11 - 0xa0]
mov rsp, r11
pop r15
pop r14
pop r13
pop r12
pop rbp
ret