Function at 0x180021df0
Capabilities:
Encode data using xor

Disassembly:
mov qword [rsp + 0x18], rbx
push rbp
push rsi
push rdi
push r12
push r13
push r14
push r15
lea rbp, [rsp - 0x1c0]
sub rsp, 0x2c0
mov rax, qword [0x180072180]
xor rax, rsp
mov qword [rbp + 0x1b0], rax
mov r12, rdx
mov rsi, rcx
xor ebx, ebx
cmp qword [0x180072010], rbx
jne 0x180021e66
lea rdx, [rbp - 0x60]
lea rcx, [rsp + 0x30]
call fcn.18001965c
cmp byte [rax + 0xd], bl
je 0x180022df1
mov rcx, rax
lea r8d, [rbx + 0xe]
mov r15b, 0x31
lea edi, [rbx + 1]
xor byte [rcx], r15b
add rcx, rdi
sub r8, rdi
je 0x180022df1
jmp 0x180021e55
mov rax, qword [str.__RW_AT2YEZU2]
mov qword [rbp - 0x10], rax
mov r15b, 0x31
mov edi, 1
cmp byte [0x180059727], bl
je 0x180021e9b
mov ecx, ebx
lea rdx, [rbp - 0x10]
mov al, cl
and al, dil
add al, r15b
xor byte [rdx], al
add ecx, edi
add rdx, rdi
cmp ecx, 8
jl 0x180021e87
xorps xmm0, xmm0
movups xmmword [rbp - 0x30], xmm0
xorps xmm1, xmm1
movdqu xmmword [rbp - 0x20], xmm1
lea rax, [rbp - 0x10]
or r14, 0xffffffffffffffff
mov r8, r14
inc r8
cmp byte [rax + r8], bl
jne 0x180021eb5
lea rdx, [rbp - 0x10]
lea rcx, [rbp - 0x30]
call fcn.180002b20
nop
mov byte [rbp + 0x70], bl
xor eax, eax
mov qword [rbp + 0x78], rax
mov dl, bl
lea rcx, [rbp + 0x78]
call fcn.1800240c8
mov byte [rbp + 0x70], 3
lea rdx, [rbp - 0x30]
lea rcx, [rbp - 0x40]
call fcn.1800159f4
mov rax, qword [rbp - 0x40]
mov qword [rbp + 0x78], rax
mov qword [rbp + 0x80], rbx
mov byte [rbp + 0x88], bl
xor eax, eax
mov qword [rbp + 0x90], rax
mov dl, bl
lea rcx, [rbp + 0x90]
call fcn.1800240c8
mov byte [rbp + 0x88], 3
mov rcx, rsi
call fcn.18000b220
mov qword [rbp + 0x90], rax
mov qword [rbp + 0x98], rbx
lea rax, [rbp + 0x70]
mov qword [rbp - 0x60], rax
lea rax, [rbp + 0xa0]
mov qword [rbp - 0x58], rax
mov r9b, 2
mov r8b, dil
lea rdx, [rbp - 0x60]
lea rcx, [rbp + 0x140]
call fcn.180012704
mov qword [rbp + 0x150], rbx
mov eax, dword [0x180059728]
mov dword [rbp - 0x68], eax
mov al, byte [0x18005972c]
mov byte [rbp - 0x64], al
mov r8d, ebx
lea r9, [rbp - 0x68]
mov eax, 0xaaaaaaab
mul r8d
shr edx, 1
lea eax, [rdx + rdx*2]
mov ecx, r8d
sub ecx, eax
add cl, r15b
xor byte [r9], cl
add r8d, edi
add r9, rdi
cmp r8d, 5
jl 0x180021f83
xorps xmm0, xmm0
movups xmmword [rbp + 0x10], xmm0
xorps xmm1, xmm1
movdqu xmmword [rbp + 0x20], xmm1
lea rax, [rbp - 0x68]
mov r8, r14
inc r8
cmp byte [rax + r8], bl
jne 0x180021fbd
lea rdx, [rbp - 0x68]
lea rcx, [rbp + 0x10]
call fcn.180002b20
nop
mov byte [rbp + 0xd0], bl
xor eax, eax
mov qword [rbp + 0xd8], rax
mov dl, bl
lea rcx, [rbp + 0xd8]
call fcn.1800240c8
mov byte [rbp + 0xd0], 3
lea rdx, [rbp + 0x10]
lea rcx, [rbp - 0x40]
call fcn.1800159f4
mov rax, qword [rbp - 0x40]
mov qword [rbp + 0xd8], rax
mov qword [rbp + 0xe0], rbx
mov byte [rbp + 0xe8], bl
xor eax, eax
mov qword [rbp + 0xf0], rax
mov dl, bl
lea rcx, [rbp + 0xf0]
call fcn.1800240c8
mov byte [rbp + 0xe8], 3
mov rcx, r12
call fcn.18000b220
mov qword [rbp + 0xf0], rax
mov qword [rbp + 0xf8], rbx
lea rax, [rbp + 0xd0]
mov qword [rbp - 0x60], rax
lea rax, [rbp + 0x100]
mov qword [rbp - 0x58], rax
mov r9b, 2
mov r8b, dil
lea rdx, [rbp - 0x60]
lea rcx, [rbp + 0x158]
call fcn.180012704
mov qword [rbp + 0x168], rbx
movsd xmm0, qword [str.CS_P__QBA3]
movsd qword [rbp], xmm0
movzx eax, word [0x180059738]
mov word [rbp + 8], ax
mov al, byte [0x18005973a]
mov byte [rbp + 0xa], al
mov ecx, ebx
lea rdx, [rbp]
mov al, cl
and al, 3
add al, r15b
xor byte [rdx], al
add ecx, edi
add rdx, rdi
cmp ecx, 0xb
jl 0x1800220ab
xorps xmm0, xmm0
movups xmmword [rbp + 0x50], xmm0
xorps xmm1, xmm1
movdqu xmmword [rbp + 0x60], xmm1
lea rax, [rbp]
mov r8, r14
inc r8
cmp byte [rax + r8], bl
jne 0x1800220d4
lea rdx, [rbp]
lea rcx, [rbp + 0x50]
call fcn.180002b20
nop
mov byte [rbp + 0xa0], bl
xor eax, eax
mov qword [rbp + 0xa8], rax
mov dl, bl
lea rcx, [rbp + 0xa8]
call fcn.1800240c8
mov byte [rbp + 0xa0], 3
lea rdx, [rbp + 0x50]
lea rcx, [rbp - 0x40]
call fcn.1800159f4
mov rax, qword [rbp - 0x40]
mov qword [rbp + 0xa8], rax
mov qword [rbp + 0xb0], rbx
call qword [sym.imp.api_ms_win_crt_utility_l1_1_0.dll_rand]
mov esi, eax
and esi, 0x800000ff
jge 0x180022148
sub esi, edi
or esi, 0xffffff00
add esi, edi
mov byte [rbp + 0xb8], bl
xor eax, eax
mov qword [rbp + 0xc0], rax
mov dl, bl
lea rcx, [rbp + 0xc0]
call fcn.1800240c8
mov byte [rbp + 0xb8], 5
movsxd rax, esi
mov qword [rbp + 0xc0], rax
mov qword [rbp + 0xc8], rbx
lea rax, [rbp + 0xa0]
mov qword [rbp - 0x60], rax
lea rax, [rbp + 0xd0]
mov qword [rbp - 0x58], rax
mov r9b, 2
mov r8b, dil
lea rdx, [rbp - 0x60]
lea rcx, [rbp + 0x170]
call fcn.180012704
mov qword [rbp + 0x180], rbx
lea rax, [rbp + 0x140]
mov qword [rbp - 0x60], rax
lea rax, [rbp + 0x188]
mov qword [rbp - 0x58], rax
mov r9b, 2
mov r8b, dil
lea rdx, [rbp - 0x60]
lea rcx, [rsp + 0x40]
call fcn.180012704
nop
mov dword [rsp + 0x28], ebx
mov byte [rsp + 0x20], bl
mov r9b, 0x20
mov r8d, r14d
lea rdx, [rbp + 0x190]
mov rcx, rax
call fcn.180024588
nop
mov dl, byte [rsp + 0x40]
lea rcx, [rsp + 0x48]
call fcn.1800240c8
nop
lea rsi, [0x1800166a4]
mov r9, rsi
mov r8d, 3
lea r12d, [r8 + 0x15]
mov edx, r12d
lea rcx, [rbp + 0x140]
call fcn.180051d6c
nop
mov r9, rsi
lea r8d, [r12 - 0x16]
mov edx, r12d
lea rcx, [rbp + 0xa0]
call fcn.180051d6c
nop
mov r13d, 0x1000
mov r12d, 0x27
mov rdx, qword [rbp + 0x68]
cmp rdx, 0x10
jb 0x180022289
inc rdx
mov rcx, qword [rbp + 0x50]
mov rax, rcx
cmp rdx, r13
jb 0x180022284
add rdx, r12
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
jbe 0x180022284
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
int3
call fcn.180051630
movdqa xmm0, xmmword [0x18005b550]
movdqu xmmword [rbp + 0x60], xmm0
mov byte [rbp + 0x50], bl
mov r9, rsi
mov esi, 2
mov r8d, esi
lea edx, [rsi + 0x16]
lea rcx, [rbp + 0xd0]
call fcn.180051d6c
nop
mov rdx, qword [rbp + 0x28]
cmp rdx, 0x10
jb 0x1800222ed
inc rdx
mov rcx, qword [rbp + 0x10]
mov rax, rcx
cmp rdx, r13
jb 0x1800222e8
add rdx, r12
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
jbe 0x1800222e8
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
int3
call fcn.180051630
movdqa xmm0, xmmword [0x18005b550]
movdqu xmmword [rbp + 0x20], xmm0
mov byte [rbp + 0x10], bl
lea r9, [0x1800166a4]
mov r8, rsi
mov edx, 0x18
lea rcx, [rbp + 0x70]
call fcn.180051d6c
nop
mov rdx, qword [rbp - 0x18]
cmp rdx, 0x10
jb 0x18002234f
inc rdx
mov rcx, qword [rbp - 0x30]
mov rax, rcx
cmp rdx, r13
jb 0x18002234a
add rdx, r12
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
jbe 0x18002234a
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
int3
call fcn.180051630
movdqa xmm0, xmmword [0x18005b550]
movdqu xmmword [rbp - 0x20], xmm0
mov byte [rbp - 0x30], bl
movups xmm0, xmmword [str.YFGD]
movups xmmword [rbp - 0x60], xmm0
mov eax, dword [str.QY5]
mov dword [rbp - 0x50], eax
mov esi, 0xcccccccd
cmp byte [0x180059753], bl
je 0x1800223a9
mov r8d, ebx
lea r9, [rbp - 0x60]
mov eax, esi
mul r8d
shr edx, 2
lea eax, [rdx + rdx*4]
mov ecx, r8d
sub ecx, eax
add cl, r15b
xor byte [r9], cl
add r8d, edi
add r9, rdi
cmp r8d, 0x14
jl 0x180022387
xorps xmm0, xmm0
movups xmmword [rbp + 0x30], xmm0
xorps xmm1, xmm1
movdqu xmmword [rbp + 0x40], xmm1
lea rax, [rbp - 0x60]
mov r8, r14
inc r8
cmp byte [rax + r8], bl
jne 0x1800223bf
lea rdx, [rbp - 0x60]
lea rcx, [rbp + 0x30]
call fcn.180002b20
nop
lea rdx, [rbp + 0x30]
lea rcx, [rsp + 0x60]
call fcn.180013aac
nop
mov rdx, qword [rbp + 0x48]
cmp rdx, 0x10
jb 0x18002241e
inc rdx
mov rcx, qword [rbp + 0x30]
mov rax, rcx
cmp rdx, r13
jb 0x180022419
add rdx, r12
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
jbe 0x180022419
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
int3
call fcn.180051630
movdqa xmm0, xmmword [0x18005b550]
movdqu xmmword [rbp + 0x40], xmm0
mov byte [rbp + 0x30], bl
movsd xmm0, qword [str.dAVF]
movsd qword [rbp - 0x40], xmm0
movzx eax, word [0x180059760]
mov word [rbp - 0x38], ax
mov al, byte [0x180059762]
mov byte [rbp - 0x36], al
mov r8d, ebx
lea r9, [rbp - 0x40]
mov eax, 0xaaaaaaab
mul r8d
shr edx, 2
lea eax, [rdx + rdx*2]
add eax, eax
mov ecx, r8d
sub ecx, eax
add cl, r15b
xor byte [r9], cl
add r8d, edi
add r9, rdi
cmp r8d, 0xb
jl 0x180022456
xorps xmm0, xmm0
movups xmmword [rbp + 0x10], xmm0
xorps xmm1, xmm1
movdqu xmmword [rbp + 0x20], xmm1
lea rax, [rbp - 0x40]
mov r8, r14
inc r8
cmp byte [rax + r8], bl
jne 0x180022493
lea rdx, [rbp - 0x40]
lea rcx, [rbp + 0x10]
call fcn.180002b20
nop
movsd xmm0, qword [str.wFLv]
movsd qword [rbp - 0x10], xmm0
mov eax, dword [0x180059770]
mov dword [rbp - 8], eax
cmp byte [0x180059773], bl
je 0x1800224fd
mov r8d, ebx
lea r9, [rbp - 0x10]
mov eax, 0x24924925
mul r8d
mov eax, r8d
sub eax, edx
shr eax, 1
add eax, edx
shr eax, 2
imul eax, eax, 7
mov ecx, r8d
sub ecx, eax
add cl, r15b
xor byte [r9], cl
add r8d, edi
add r9, rdi
cmp r8d, 0xc
jl 0x1800224cf
xorps xmm0, xmm0
movups xmmword [rbp - 0x30], xmm0
xorps xmm1, xmm1
movdqu xmmword [rbp - 0x20], xmm1
lea rax, [rbp - 0x10]
mov r8, r14
inc r8
cmp byte [rax + r8], bl
jne 0x180022513
lea rdx, [rbp - 0x10]
lea rcx, [rbp - 0x30]
call fcn.180002b20
nop
lea r8, [rbp - 0x30]
lea rdx, [rbp + 0x10]
lea rcx, [rbp + 0x140]
call fcn.180003744
nop
lea rax, [rbp + 0x140]
mov qword [rsp + 0x40], rax
lea rax, [rbp + 0x180]
mov qword [rsp + 0x48], rax
lea rdx, [rsp + 0x40]
lea rcx, [rsp + 0x68]
call fcn.180012ee0
nop
lea r9, [fcn.180016a08]
mov r8, rdi
mov edx, 0x40
lea rcx, [rbp + 0x140]
call fcn.180051d6c
nop
mov rdx, qword [rbp - 0x18]
cmp rdx, 0x10
jb 0x1800225bc
inc rdx
mov rcx, qword [rbp - 0x30]
mov rax, rcx
cmp rdx, r13
jb 0x1800225b7
add rdx, r12
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
jbe 0x1800225b7
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
int3
call fcn.180051630
movdqa xmm0, xmmword [0x18005b550]
movdqu xmmword [rbp - 0x20], xmm0
mov byte [rbp - 0x30], bl
mov rdx, qword [rbp + 0x28]
cmp rdx, 0x10
jb 0x180022605
inc rdx
mov rcx, qword [rbp + 0x10]
mov rax, rcx
cmp rdx, r13
jb 0x180022600
add rdx, r12
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
jbe 0x180022600
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
int3
call fcn.180051630
movdqa xmm0, xmmword [0x18005b550]
movdqu xmmword [rbp + 0x20], xmm0
mov byte [rbp + 0x10], bl
movsd xmm0, qword [str.EWK_]
movsd qword [rbp - 0x60], xmm0
movzx eax, word [0x1800597b0]
mov word [rbp - 0x58], ax
mov al, byte [0x1800597b2]
mov byte [rbp - 0x56], al
mov r8d, ebx
lea r9, [rbp - 0x60]
mov eax, esi
mul r8d
shr edx, 3
lea eax, [rdx + rdx*4]
add eax, eax
mov ecx, r8d
sub ecx, eax
add cl, r15b
xor byte [r9], cl
add r8d, edi
add r9, rdi
cmp r8d, 0xb
jl 0x18002263d
xorps xmm0, xmm0
movups xmmword [rbp + 0x120], xmm0
xorps xmm1, xmm1
movdqu xmmword [rbp + 0x130], xmm1
lea rax, [rbp - 0x60]
mov r8, r14
inc r8
cmp byte [rax + r8], bl
jne 0x18002267d
lea rdx, [rbp - 0x60]
lea rcx, [rbp + 0x120]
call fcn.180002b20
nop
lea r8, [0x180077b10]
lea rdx, [rbp + 0x190]
lea rcx, [rbp + 0xa0]
call fcn.180025678
mov rsi, rax
movups xmm0, xmmword [0x180059788]
movups xmmword [rbp + 0x50], xmm0
movsd xmm0, qword [0x180059798]
movsd qword [rbp + 0x60], xmm0
movzx ecx, word [0x1800597a0]
mov word [rbp + 0x68], cx
cmp byte [0x1800597a1], bl
je 0x18002270a
mov r8d, ebx
lea r9, [rbp + 0x50]
mov eax, 0x38e38e39
mul r8d
shr edx, 1
lea eax, [rdx + rdx*8]
mov ecx, r8d
sub ecx, eax
add cl, r15b
xor byte [r9], cl
add r8d, edi
add r9, rdi
cmp r8d, 0x1a
jl 0x1800226e6
xorps xmm0, xmm0
movups xmmword [rbp + 0x100], xmm0
xorps xmm1, xmm1
movdqu xmmword [rbp + 0x110], xmm1
lea rax, [rbp + 0x50]
mov r8, r14
inc r8
cmp byte [rax + r8], bl
jne 0x180022726
lea rdx, [rbp + 0x50]
lea rcx, [rbp + 0x100]
call fcn.180002b20
nop
movsd xmm0, qword [0x180059778]
movsd qword [rbp], xmm0
mov al, byte [0x180059780]
mov byte [rbp + 8], al
mov ecx, ebx
lea rdx, [rbp]
mov al, cl
and al, 7
add al, r15b
xor byte [rdx], al
add ecx, edi
add rdx, rdi
cmp ecx, 9
jl 0x18002275c
xorps xmm0, xmm0
movups xmmword [rbp + 0x30], xmm0
xorps xmm1, xmm1
movdqu xmmword [rbp + 0x40], xmm1
lea rax, [rbp]
mov r8, r14
inc r8
cmp byte [rax + r8], bl
jne 0x180022785
lea rdx, [rbp]
lea rcx, [rbp + 0x30]
call fcn.180002b20
nop
lea r8, [section..data]
lea rdx, [rbp + 0x30]
lea rcx, [rbp + 0xd0]
call fcn.180003d9c
nop
lea r9, [rbp + 0x100]
mov r8, rax
mov dl, byte [rsp + 0x30]
lea rcx, [rbp + 0x70]
call fcn.180012918
nop
lea rax, [rbp + 0x120]
mov qword [rsp + 0x28], rax
mov qword [rsp + 0x20], rsi
lea r9, [rsp + 0x68]
lea r8, [rbp + 0x70]
lea rdx, [rsp + 0x78]
mov rcx, qword [rsp + 0x60]
call fcn.18001b9dc
nop
mov rdx, qword [rbp + 0x88]
cmp rdx, 0x10
jb 0x180022832
inc rdx
mov rcx, qword [rbp + 0x70]
mov rax, rcx
cmp rdx, r13
jb 0x18002282d
add rdx, r12
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
jbe 0x18002282d
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
int3
call fcn.180051630
movdqa xmm0, xmmword [0x18005b550]
movdqu xmmword [rbp + 0x80], xmm0
mov byte [rbp + 0x70], bl
mov rdx, qword [rbp + 0xe8]
cmp rdx, 0x10
jb 0x180022884
inc rdx
mov rcx, qword [rbp + 0xd0]
mov rax, rcx
cmp rdx, r13
jb 0x18002287f
add rdx, r12
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
jbe 0x18002287f
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
int3
call fcn.180051630
movdqa xmm0, xmmword [0x18005b550]
movdqu xmmword [rbp + 0xe0], xmm0
mov byte [rbp + 0xd0], bl
mov rdx, qword [rbp + 0x48]
cmp rdx, 0x10
jb 0x1800228d3
inc rdx
mov rcx, qword [rbp + 0x30]
mov rax, rcx
cmp rdx, r13
jb 0x1800228ce
add rdx, r12
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
jbe 0x1800228ce
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
int3
call fcn.180051630
movdqa xmm0, xmmword [0x18005b550]
movdqu xmmword [rbp + 0x40], xmm0
mov byte [rbp + 0x30], bl
mov rdx, qword [rbp + 0x118]
cmp rdx, 0x10
jb 0x180022922
inc rdx
mov rcx, qword [rbp + 0x100]
mov rax, rcx
cmp rdx, r13
jb 0x18002291d
add rdx, r12
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
jbe 0x18002291d
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
int3
call fcn.180051630
movdqa xmm0, xmmword [0x18005b550]
movdqu xmmword [rbp + 0x110], xmm0
mov byte [rbp + 0x100], bl
mov rdx, qword [rbp + 0xb8]
cmp rdx, 0x10
jb 0x180022977
inc rdx
mov rcx, qword [rbp + 0xa0]
mov rax, rcx
cmp rdx, r13
jb 0x180022972
add rdx, r12
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
jbe 0x180022972
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
int3
call fcn.180051630
movdqa xmm0, xmmword [0x18005b550]
movdqu xmmword [rbp + 0xb0], xmm0
mov byte [rbp + 0xa0], bl
mov rdx, qword [rbp + 0x138]
cmp rdx, 0x10
jb 0x1800229cc
inc rdx
mov rcx, qword [rbp + 0x120]
mov rax, rcx
cmp rdx, r13
jb 0x1800229c7
add rdx, r12
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
jbe 0x1800229c7
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
int3
call fcn.180051630
movdqa xmm0, xmmword [0x18005b550]
movdqu xmmword [rbp + 0x130], xmm0
mov byte [rbp + 0x120], bl
lea rax, [rbp + 0x140]
mov qword [rbp - 0x40], rax
mov qword [rbp + 0x178], rbx
mov rdx, qword [rsp + 0x78]
add rdx, 0x58
lea r8, [0x180077b10]
lea rcx, [rbp - 0x30]
call fcn.180023dd8
nop
mov byte [rsp + 0x20], bl
mov r9b, dil
lea r8, [rbp + 0x140]
mov rdx, rax
lea rcx, [rsp + 0x40]
call fcn.18000dfb0
mov dl, byte [0x180077b30]
mov cl, byte [rax]
mov byte [0x180077b30], cl
mov byte [rax], dl
lea rcx, [rax + 8]
mov rdx, qword [0x180077b38]
mov r8, qword [rcx]
mov qword [0x180077b38], r8
mov qword [rcx], rdx
mov dl, byte [rax]
call fcn.1800240c8
nop
mov rdx, qword [rbp - 0x18]
cmp rdx, 0x10
jb 0x180022a92
inc rdx
mov rcx, qword [rbp - 0x30]
mov rax, rcx
cmp rdx, r13
jb 0x180022a8d
add rdx, r12
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
jbe 0x180022a8d
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
int3
call fcn.180051630
mov eax, dword [0x1800597b4]
mov dword [rbp - 0x68], eax
movzx eax, word [0x1800597b8]
mov word [rbp - 0x64], ax
mov r8d, ebx
lea r9, [rbp - 0x68]
mov eax, 0xba2e8ba3
mul r8d
shr edx, 3
imul eax, edx, 0xb
mov ecx, r8d
sub ecx, eax
add cl, r15b
xor byte [r9], cl
add r8d, edi
add r9, rdi
cmp r8d, 6
jl 0x180022aad
xorps xmm0, xmm0
movups xmmword [rbp - 0x30], xmm0
xorps xmm1, xmm1
movdqu xmmword [rbp - 0x20], xmm1
lea rax, [rbp - 0x68]
mov r8, r14
inc r8
cmp byte [rax + r8], bl
jne 0x180022ae8
lea rdx, [rbp - 0x68]
lea rcx, [rbp - 0x30]
call fcn.180002b20
cmp byte [0x180077b30], dil
jne 0x180022b3f
lea r8, [rbp - 0x30]
lea rdx, [rsp + 0x40]
mov rsi, qword [0x180077b38]
mov rcx, rsi
call fcn.180007da0
lea r8, [rbp - 0x30]
mov r12, qword [rsp + 0x50]
mov rdx, r12
mov rcx, rsi
call fcn.180008304
test al, al
je 0x180022b3f
cmp r12, qword [rsi]
mov sil, dil
jne 0x180022b42
mov sil, bl
mov rdx, qword [rbp - 0x18]
cmp rdx, 0x10
jb 0x180022b7c
inc rdx
mov rcx, qword [rbp - 0x30]
mov rax, rcx
cmp rdx, r13
jb 0x180022b77
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
jbe 0x180022b77
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
int3
call fcn.180051630
test sil, sil
je 0x180022bc8
lea rdx, [rbp - 0x68]
lea rcx, [rsp + 0x30]
call fcn.180018bd4
mov r9, rax
cmp byte [rax + 5], bl
je 0x180022e20
mov r8, rax
mov eax, 0xaaaaaaab
mul ebx
shr edx, 3
lea eax, [rdx + rdx*2]
shl eax, 2
mov ecx, ebx
sub ecx, eax
add cl, r15b
xor byte [r8], cl
add ebx, edi
add r8, rdi
cmp ebx, 6
jge 0x180022e20
jmp 0x180022b9e
mov rax, qword [str.BGPWPED8DXZZAY]
mov qword [rbp - 0x10], rax
cmp byte [0x1800597cf], bl
je 0x180022c07
mov r8d, ebx
lea r9, [rbp - 0x10]
mov eax, 0x4ec4ec4f
mul r8d
shr edx, 2
imul eax, edx, 0xd
mov ecx, r8d
sub ecx, eax
add cl, r15b
xor byte [r9], cl
add r8d, edi
add r9, rdi
cmp r8d, 8
jl 0x180022be2
xorps xmm0, xmm0
movups xmmword [rbp - 0x30], xmm0
xorps xmm1, xmm1
movdqu xmmword [rbp - 0x20], xmm1
lea rax, [rbp - 0x10]
inc r14
cmp byte [rax + r14], bl
jne 0x180022c1a
mov r8, r14
lea rdx, [rbp - 0x10]
lea rcx, [rbp - 0x30]
call fcn.180002b20
cmp byte [0x180077b30], dil
jne 0x180022c74
lea r8, [rbp - 0x30]
lea rdx, [rsp + 0x40]
mov rsi, qword [0x180077b38]
mov rcx, rsi
call fcn.180007da0
lea r8, [rbp - 0x30]
mov r14, qword [rsp + 0x50]
mov rdx, r14
mov rcx, rsi
call fcn.180008304
test al, al
je 0x180022c74
cmp r14, qword [rsi]
mov sil, bl
jne 0x180022c77
mov sil, dil
mov rdx, qword [rbp - 0x18]
cmp rdx, 0x10
jb 0x180022cb1
inc rdx
mov rcx, qword [rbp - 0x30]
mov rax, rcx
cmp rdx, r13
jb 0x180022cac
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
jbe 0x180022cac
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
int3
call fcn.180051630
test sil, sil
je 0x180022d08
lea rdx, [rbp - 0x40]
lea rcx, [rsp + 0x30]
call fcn.180018bec
mov r10, rax
cmp byte [rax + 0xd], bl
je 0x180022e67
mov r9, rax
mov r8d, send
mov eax, 0x24924925
mul ebx
mov ecx, ebx
sub ecx, edx
shr ecx, 1
add ecx, edx
shr ecx, 3
imul eax, ecx, 0xe
mov ecx, ebx
sub ecx, eax
add cl, r15b
xor byte [r9], cl
add ebx, edi
add r9, rdi
cmp ebx, r8d
jge 0x180022e67
jmp 0x180022cd9
mov r8, qword [rbp - 0x78]
mov r8, qword [r8 + 8]
lea rdx, [rbp - 0x78]
lea rcx, [rbp - 0x78]
call fcn.1800079a4
mov r14d, 0x60
mov edx, r14d
mov rcx, qword [rbp - 0x78]
call fcn.180051630
mov rsi, qword [rsp + 0x78]
test rsi, rsi
je 0x180022d4f
mov rcx, rsi
call fcn.180017d80
mov edx, 0x128
mov rcx, rsi
call fcn.180051630
nop
mov r8, qword [rsp + 0x68]
mov r8, qword [r8 + 8]
lea rdx, [rsp + 0x68]
lea rcx, [rsp + 0x68]
call fcn.1800079a4
mov rdx, r14
mov rcx, qword [rsp + 0x68]
call fcn.180051630
nop
mov rcx, qword [rsp + 0x60]
test rcx, rcx
je 0x180022d87
mov rax, qword [rcx]
mov edx, edi
call qword [rax]
nop
mov rdx, qword [rbp + 0x1a8]
cmp rdx, 0x10
jb 0x180022dc7
inc rdx
mov rcx, qword [rbp + 0x190]
mov rax, rcx
cmp rdx, r13
jb 0x180022dc2
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
jbe 0x180022dc2
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
int3
call fcn.180051630
mov rcx, qword [rbp + 0x1b0]
xor rcx, rsp
call fcn.180051610
mov rbx, qword [rsp + 0x310]
add rsp, 0x2c0
pop r15
pop r14
pop r13
pop r12
pop rdi
pop rsi
pop rbp
ret
mov rdx, rax
lea rcx, [rbp + 0xa0]
call fcn.180002260
nop
mov rdx, rax
lea rcx, [rsp + 0x40]
call fcn.180015d90
lea rdx, [0x18006ed10]
lea rcx, [rsp + 0x40]
call sub.VCRUNTIME140.dll__CxxThrowException
nop
mov rdx, r9
lea rcx, [rbp - 0x30]
call fcn.180002260
mov rdx, rax
lea rcx, [0x180077b30]
call fcn.180018854
lea rdx, [rbp + 0x10]
mov rcx, rax
call fcn.18000be24
nop
mov rdx, rax
lea rcx, [rsp + 0x40]
call fcn.180015d90
lea rdx, [0x18006ed10]
lea rcx, [rsp + 0x40]
call sub.VCRUNTIME140.dll__CxxThrowException
nop
mov rdx, r10
lea rcx, [rbp - 0x30]
call fcn.180002260
nop
mov rdx, rax
lea rcx, [rsp + 0x40]
call fcn.180015d90
lea rdx, [0x18006ed10]
lea rcx, [rsp + 0x40]
call sub.VCRUNTIME140.dll__CxxThrowException
int3