Function at 0x140044b80
Capabilities:
Encode data using base64
Encode data using xor
Encrypt data using rc4 ksa

Disassembly:
push r15
push r14
push r13
push r12
push rsi
push rdi
push rbp
push rbx
sub rsp, 0xc8
movdqa xmmword [rsp + 0xb0], xmm13
movdqa xmmword [rsp + 0xa0], xmm12
movdqa xmmword [rsp + 0x90], xmm11
movdqa xmmword [rsp + 0x80], xmm10
movdqa xmmword [rsp + 0x70], xmm9
movdqa xmmword [rsp + 0x60], xmm8
movdqa xmmword [rsp + 0x50], xmm7
movdqa xmmword [rsp + 0x40], xmm6
mov r15, r8
mov rdi, rdx
mov rbx, rcx
nop
mov eax, dword [0x141dc5cf0]
or eax, dword [0x141dc5cf4]
or eax, 0x4eb7f77e
xor eax, 0x3be8e2c3
cmp eax, 0xf1f7b4c5
ja 0x140044be0
mov rcx, qword [rbx]
mov rax, qword [rbx + 0x10]
nop word cs:[rax + rax]
mov r8d, dword [0x141dc5cf8]
and r8d, dword [0x141dc5cfc]
xor r8d, 0xe0518880
and r8d, 0xe073cc92
add r8d, 0x90552794
mov rdx, rcx
or rdx, rax
sete dl
cmp r8d, 0x888a6792
ja 0x140044c10
nop word cs:[rax + rax]
mov r8d, dword [0x141dc5d00]
imul r8d, dword [0x141dc5d04]
add r8d, 0xb1b6de61
xor r8d, 0xfa4a0764
cmp r8d, 0x4c0356c2
jb 0x140044c50
test dl, dl
je 0x140044caf
mov r14, qword [rbx + 0x20]
mov eax, dword [0x141dc5d08]
mov ecx, dword [0x141dc5d0c]
add eax, ecx
add eax, 0x50af0eb9
shr eax, 3
imul rax, rax, 0x52cbbb7
shr rax, 0x34
cmp eax, 0x366ca8e8
ja 0x140046061
jmp 0x140046037
test rax, rax
je 0x140044ffc
mov r10, qword [rbx + 0x18]
mov rsi, r15
lea r9, [rdi + r15]
test r10, r10
je 0x140044e14
xor r14d, r14d
mov r15d, 0xc8c585f9
xor r8d, r8d
xor r12d, r12d
mov r13, rdi
jmp 0x140044d05
lea r11, [r13 + 2]
nop word cs:[rax + rax]
mov rax, r11
sub rax, r13
add r8, rax
mov r13, r11
cmp r12, r10
je 0x140044e1a
cmp r13, r9
je 0x140044e98
inc r12
lea r11, [r13 + 1]
mov eax, dword [0x141dc5d18]
xor edx, edx
div dword [0x141dc5d1c]
nop word cs:[rax + rax]
mov eax, dword [0x141dc5d20]
or eax, dword [0x141dc5d24]
imul eax, eax, 0x924e5b5e
add eax, 0xfa9186f8
xor eax, 0x512f109a
cmp eax, 0x1f8f52a8
jb 0x140044d30
movzx eax, byte [r13]
test al, al
js 0x140044d90
nop dword [rax]
mov eax, dword [0x141dc5d28]
xor eax, dword [0x141dc5d2c]
imul eax, eax, 0xb638790f
imul rax, r15
shr rax, 0x3e
imul eax, eax, 0x9d72216a
cmp eax, 0xc09a7762
ja 0x140044d60
jmp 0x140044cf0
cmp al, 0xdf
jbe 0x140044ce0
lea r11, [r13 + 3]
nop dword [rax]
mov edx, dword [0x141dc5d30]
sub edx, dword [0x141dc5d34]
add edx, 0x899a6b77
or edx, 0x9762c3d4
imul edx, edx, 0x65f3940c
cmp edx, 0xc3aba677
jb 0x140044da0
cmp al, 0xf0
jb 0x140044cf0
lea r11, [r13 + 4]
nop word cs:[rax + rax]
test r14b, r14b
jne 0x140044de0
nop word cs:[rax + rax]
mov eax, dword [0x141dc5d38]
xor edx, edx
div dword [0x141dc5d3c]
add eax, 0x6f6c1870
and eax, 0x78a30edd
cmp eax, 0x92094be8
ja 0x140044df0
jmp 0x140044cf0
xor r8d, r8d
mov r11, rdi
mov eax, dword [0x141dc5d40]
xor edx, edx
div dword [0x141dc5d44]
nop dword [rax + rax]
mov eax, dword [0x141dc5d48]
and eax, dword [0x141dc5d4c]
add eax, 0x8ec75220
or eax, 0x100
and eax, 0x858219e2
cmp eax, 0xb163ffcd
ja 0x140044e30
cmp r11, r9
mov r15, rsi
je 0x140044ffc
movzx eax, byte [r11]
test al, al
js 0x140044ea0
nop word cs:[rax + rax]
mov eax, dword [0x141dc5d50]
and eax, dword [0x141dc5d54]
or eax, 0x8dcb8a00
and eax, 0xddfb8a60
imul eax, eax, 0xcb4e1bb1
cmp eax, 0x5b35bad3
jbe 0x140044e70
jmp 0x140044f80
mov r15, rsi
jmp 0x140044ffc
xor edx, edx
nop word cs:[rax + rax]
test dl, dl
jne 0x140044eb0
cmp al, 0xdf
jbe 0x140044f80
mov edx, 0x8a396bdd
nop word cs:[rax + rax]
mov r9d, dword [0x141dc5d58]
imul r9d, dword [0x141dc5d5c]
shr r9d, 1
imul r9, rdx
shr r9, 0x3d
imul r9d, r9d, 0x6d2d7150
add r9d, 0x3333ddcc
cmp r9d, 0x687e0e92
jb 0x140044ed0
cmp al, 0xf0
jb 0x140044f80
nop word cs:[rax + rax]
mov eax, dword [0x141dc5d60]
imul eax, dword [str.u_b_fB]
imul eax, eax, 0xeccfe47a
xor eax, 0x8b4bca7f
imul eax, eax, 0x62f584a4
cmp eax, 0xea6e489
je 0x140044f10
nop word cs:[rax + rax]
mov eax, dword [0x141dc5d68]
xor eax, dword [0x141dc5d6c]
or eax, 0xb9bfc761
cmp eax, 0xd98abb2c
je 0x140044f40
nop dword [rax + rax]
mov eax, dword [0x141dc5d70]
and eax, dword [0x141dc5d74]
add eax, 0x677ef296
or eax, 0x29311825
cmp eax, 0xf2574ac8
je 0x140044f60
nop dword [rax]
mov eax, dword [0x141dc5d78]
imul eax, dword [0x141dc5d7c]
imul eax, eax, 0x48ca8610
xor eax, 0x35712634
cmp eax, 0x7b054a92
jb 0x140044f80
test r8, r8
je 0x140044ff9
nop word cs:[rax + rax]
mov eax, dword [0x141dc5d80]
add eax, dword [0x141dc5d84]
xor eax, 0x6f83689d
add eax, 0x704f4702
cmp eax, 0xb6f075cd
ja 0x140044fb0
nop dword [rax]
mov eax, dword [0x141dc5d88]
imul eax, dword [0x141dc5d8c]
add eax, 0xbb702eb6
cmp eax, 0x3fbf81a
jb 0x140044fd0
cmp r8, r15
jae 0x140044ff7
cmp byte [rdi + r8], 0xbf
jg 0x140044ff9
jmp 0x140044ffc
jne 0x140044ffc
mov r15, r8
test rcx, rcx
je 0x140045068
xor eax, eax
nop word cs:[rax + rax]
test al, al
jne 0x140045010
mov rsi, qword [rbx + 8]
cmp r15, 0x20
mov qword [rsp + 0x30], r15
jae 0x140045121
nop word [rax + rax]
mov eax, dword [0x141dc5e80]
add eax, dword [0x141dc5e84]
or eax, 0x380de02f
cmp eax, 0x798be5e7
je 0x140045030
mov r9, r15
test r15, r15
je 0x140045c02
cmp r15, 1
jne 0x1400451f4
xor r9d, r9d
xor eax, eax
jmp 0x140045280
mov eax, 0xb6f5d0c1
nop dword [rax]
mov ecx, dword [0x141dc5d90]
imul ecx, dword [0x141dc5d94]
xor ecx, 0x94d4e56b
imul rcx, rax
shr rcx, 0x3f
imul ecx, ecx, 0x83fa4631
cmp ecx, 0x737dbceb
ja 0x140045070
mov rcx, qword [rbx + 0x20]
nop dword [rax]
mov eax, dword [0x141dc5d98]
add eax, dword [0x141dc5d9c]
and eax, 0xc295957b
imul eax, eax, 0x24959ca3
add eax, 0xd9c722d2
cmp eax, 0xeaeed2ad
ja 0x1400450a0
mov rax, qword [rbx + 0x28]
mov rax, qword [rax + 0x18]
mov rdx, rdi
mov r8, r15
movaps xmm6, xmmword [rsp + 0x40]
movaps xmm7, xmmword [rsp + 0x50]
movaps xmm8, xmmword [rsp + 0x60]
movaps xmm9, xmmword [rsp + 0x70]
movaps xmm10, xmmword [rsp + 0x80]
movaps xmm11, xmmword [rsp + 0x90]
movaps xmm12, xmmword [rsp + 0xa0]
movaps xmm13, xmmword [rsp + 0xb0]
add rsp, 0xc8
pop rbx
pop rbp
pop rdi
pop rsi
pop r12
pop r13
pop r14
pop r15
jmp rax
lea r8, [rdi + 7]
and r8, 0xfffffffffffffff8
mov rax, r8
sub rax, rdi
mov r9, r15
sub r9, rax
mov rcx, r9
shr rcx, 3
nop dword [rax]
mov edx, dword [0x141dc5da0]
xor edx, dword [0x141dc5da4]
or edx, 0x9331e3b2
and edx, 0x9bb1f3ba
cmp edx, 0xbcb23d21
ja 0x140045140
mov r10d, r9d
and r10d, 7
and r9, 0xfffffffffffffff8
nop dword [rax + rax]
mov edx, dword [0x141dc5da8]
add edx, dword [0x141dc5dac]
imul edx, edx, 0x4dcf8a1
imul rdx, rdx, 0x155db02b
shr rdx, 0x3c
imul edx, edx, 0x738f727d
cmp edx, 0xba8dd05c
je 0x140045170
cmp r8, rdi
mov r12, r8
jne 0x1400451ab
xor r11d, r11d
jmp 0x140045420
xor edx, edx
nop dword [rax]
test dl, dl
jne 0x1400451b0
nop word cs:[rax + rax]
mov edx, dword [0x141dc5db0]
add edx, dword [0x141dc5db4]
imul edx, edx, 0x47a579b6
add edx, 0x38730be3
cmp edx, 0x8351d7ec
ja 0x1400451c0
cmp rax, 4
jae 0x1400452f2
xor r11d, r11d
xor edx, edx
jmp 0x1400453c0
mov rax, r15
and rax, 0xfffffffffffffffe
xor ecx, ecx
nop dword [rax]
test cl, cl
jne 0x140045200
mov rcx, r15
and rcx, 0xfffffffffffffffe
pxor xmm0, xmm0
xor edx, edx
movdqa xmm1, xmmword [0x140102720]
movdqa xmm2, xmmword [0x140102730]
nop word cs:[rax + rax]
movzx r8d, word [rdi + rdx]
movd xmm3, r8d
pcmpgtb xmm3, xmm1
punpcklbw xmm3, xmm3
pshuflw xmm3, xmm3, 0xd4
pshufd xmm3, xmm3, 0xd4
pand xmm3, xmm2
paddq xmm0, xmm3
add rdx, 2
cmp rcx, rdx
jne 0x140045230
pshufd xmm1, xmm0, 0xee
paddq xmm1, xmm0
movq r9, xmm1
cmp r15, rax
je 0x140045c02
nop word cs:[rax + rax]
mov ecx, dword [0x141dc5e88]
imul ecx, dword [0x141dc5e8c]
add ecx, 0x2613ff56
xor ecx, 0x63167836
cmp ecx, 0x875782c8
jb 0x140045280
mov ecx, 0xa110aa8f
nop word cs:[rax + rax]
mov edx, dword [0x141dc5e90]
imul edx, dword [0x141dc5e94]
imul rdx, rcx
shr rdx, 0x3e
imul r10d, edx, 0x798b7be8
xor edx, edx
cmp byte [rdi + rax], 0xc0
setge r8b
cmp r10d, 0x2f2ecd00
jb 0x1400452b0
mov dl, r8b
add r9, rdx
inc rax
cmp rax, r15
jne 0x1400452b0
jmp 0x140045c02
mov edx, eax
and edx, 4
nop word [rax + rax]
mov r8d, dword [0x141dc5db8]
xor r8d, dword [0x141dc5dbc]
add r8d, 0x335dc035
or r8d, 0x6fb60bee
add r8d, 0x6298ba16
cmp r8d, 0xec044097
ja 0x140045300
pxor xmm0, xmm0
xor r8d, r8d
movdqa xmm2, xmmword [0x140102720]
movdqa xmm3, xmmword [0x140102730]
pxor xmm1, xmm1
nop word [rax + rax]
movzx r11d, word [rdi + r8]
movd xmm4, r11d
movzx r11d, word [rdi + r8 + 2]
movd xmm5, r11d
pcmpgtb xmm4, xmm2
punpcklbw xmm4, xmm4
pshuflw xmm4, xmm4, 0xd4
pshufd xmm4, xmm4, 0xd4
pand xmm4, xmm3
paddq xmm0, xmm4
pcmpgtb xmm5, xmm2
punpcklbw xmm5, xmm5
pshuflw xmm4, xmm5, 0xd4
pshufd xmm4, xmm4, 0xd4
pand xmm4, xmm3
paddq xmm1, xmm4
add r8, 4
cmp rdx, r8
jne 0x140045350
paddq xmm1, xmm0
pshufd xmm0, xmm1, 0xee
paddq xmm0, xmm1
movq r11, xmm0
cmp rax, rdx
je 0x140045420
nop dword [rax]
mov r8d, dword [0x141dc5dc0]
xor r8d, dword [0x141dc5dc4]
add r8d, 0xc6771805
imul r14, r8, 0x45d3f4fb
shr r14, 0x20
sub r8d, r14d
shr r8d, 1
add r8d, r14d
shr r8d, 0x1f
add r8d, 0x40929d93
cmp r8d, 0x3d20b90
jb 0x1400453c0
nop dword [rax]
xor r8d, r8d
cmp byte [rdi + rdx], 0xc0
setge r8b
add r11, r8
inc rdx
cmp rax, rdx
jne 0x140045400
nop word cs:[rax + rax]
mov eax, dword [0x141dc5dc8]
mov edx, dword [0x141dc5dcc]
add eax, edx
add eax, 0x7fdcbb83
or eax, 0x66f52550
cmp eax, 0x96682a03
je 0x140045420
test r10, r10
mov r8, r12
mov qword [rsp + 0x20], rsi
je 0x140045641
xor r14d, r14d
cmp byte [r8 + r9], 0xc0
setge r14b
xor eax, eax
nop
test al, al
jne 0x140045460
cmp r10d, 1
je 0x140045644
nop
mov eax, dword [0x141dc5dd0]
sub eax, dword [0x141dc5dd4]
xor eax, 0x1aa40200
or eax, 0x855b183f
cmp eax, 0x7053f58b
je 0x140045470
xor eax, eax
cmp byte [r8 + r9 + 1], 0xc0
setge al
add r14, rax
cmp r10d, 2
je 0x140045644
mov eax, dword [0x141dc5dd8]
xor edx, edx
div dword [0x141dc5ddc]
nop word cs:[rax + rax]
mov eax, dword [0x141dc5de0]
imul eax, dword [0x141dc5de4]
add eax, 0x39abccd9
and eax, 0x389d0022
add eax, 0x8f2ed3c9
cmp eax, 0xb5053fff
ja 0x1400454c0
xor eax, eax
cmp byte [r8 + r9 + 2], 0xc0
setge al
add r14, rax
nop word cs:[rax + rax]
mov eax, dword [0x141dc5de8]
imul eax, dword [0x141dc5dec]
imul eax, eax, 0x25afcf40
imul rax, rax, 0x3b8337cb
shr rax, 0x3d
cmp eax, 0x47b5b42a
ja 0x140045500
cmp r10d, 3
je 0x140045644
nop
mov eax, dword [0x141dc5df0]
or eax, dword [0x141dc5df4]
cmp eax, 0xab49fe85
je 0x140045530
movzx edx, byte [r8 + r9 + 3]
nop dword [rax]
xor eax, eax
cmp dl, 0xc0
setge r8b
mov ebp, dword [0x141dc5df8]
or ebp, dword [0x141dc5dfc]
add ebp, 0x5f413300
cmp ebp, 0x622fdc5d
jb 0x140045550
mov al, r8b
add r14, rax
cmp r10d, 4
je 0x14004563c
mov eax, 0xbeef17ef
mov r8, r12
mov edx, dword [0x141dc5e00]
xor edx, dword [0x141dc5e04]
imul edx, edx, 0x49587d48
imul rdx, rax
shr rdx, 0x3f
add edx, 0x727a17db
cmp edx, 0xc2d093b7
ja 0x14004558b
xor eax, eax
cmp byte [r8 + r9 + 4], 0xc0
setge al
add r14, rax
cmp r10d, 5
je 0x140045644
movzx edx, byte [r8 + r9 + 5]
xor eax, eax
cmp dl, 0xc0
setge r8b
mov ebp, dword [0x141dc5e08]
imul ebp, dword [0x141dc5e0c]
add ebp, 0x35883f41
and ebp, 0xa17ffe6
imul ebp, ebp, 0x76c436e0
cmp ebp, 0x55948b3e
je 0x1400455cd
mov al, r8b
add r14, rax
mov eax, 0x94bae12f
mov edx, dword [0x141dc5e10]
or edx, dword [0x141dc5e14]
add edx, 0x1545b3ff
shr edx, 1
imul rdx, rax
shr rdx, 0x3d
or edx, 0xe5d3c4e
cmp edx, 0x314b28d4
ja 0x140045608
cmp r10d, 6
jne 0x140045fb8
mov r8, r12
jmp 0x140045644
xor r14d, r14d
add r14, r11
movabs rsi, 0xff00ff00ff00ff
movabs r11, 0x1000100010001
xor r13d, r13d
pcmpeqd xmm0, xmm0
movdqa xmm1, xmmword [0x140102740]
jmp 0x140045697
xor r14d, r14d
mov rax, r14
and rax, rsi
shr r14, 8
and r14, rsi
add r14, rax
imul r14, r11
shr r14, 0x30
add r14, r9
test r15, r15
jne 0x140045b04
mov r9, r14
mov r12, r8
nop dword [rax]
mov eax, dword [0x141dc5e30]
and eax, dword [0x141dc5e34]
xor eax, 0x96c9414f
imul rdx, rax, 0xf89e7
shr rdx, 0x20
sub eax, edx
shr eax, 1
add eax, edx
shr eax, 0x1f
imul eax, eax, 0x11b215bf
cmp eax, 0x15e21524
je 0x1400456a0
test rcx, rcx
je 0x140045af5
mov eax, dword [0x141dc5e38]
or eax, dword [0x141dc5e3c]
or eax, 0x64bfc987
imul rax, rax, 0x20807fa9
shr rax, 0x3c
imul eax, eax, 0x253262cf
cmp rcx, 0xc0
mov r14d, 0xc0
cmovb r14, rcx
cmp eax, 0x33309031
ja 0x1400456db
sub rcx, r14
mov r10d, r14d
and r10d, 0xfc
mov r15d, r14d
and r15d, 3
lea r8, [r12 + r14*8]
shr r14, 2
mov rbp, r14
shl rbp, 5
add rbp, r12
nop dword [rax + rax]
mov eax, dword [0x141dc5e40]
and eax, dword [0x141dc5e44]
add eax, 0xa9d7c35f
and eax, 0x5808d089
cmp eax, 0x20af9595
je 0x140045740
test r10, r10
je 0x140045670
mov eax, dword [0x141dc5e48]
and eax, dword [0x141dc5e4c]
add eax, 0x3b8e1809
and eax, 0x7870a018
cmp eax, 0x886237d1
je 0x140045766
movabs rax, 0x7ffffffffffffff
add rax, r14
test r13b, r13b
jne 0x140045790
movabs rdx, 0x7ffffffffffffff
and rax, rdx
lea rdx, [rax + 1]
mov qword [rsp + 0x28], rdx
nop dword [rax + rax]
mov edx, dword [0x141dc5e50]
or edx, dword [0x141dc5e54]
add edx, 0xe8424ed7
and edx, 0xddb296e2
cmp edx, 0xf77ce6b7
je 0x1400457b0
cmp rax, 3
jae 0x1400457f0
xor r14d, r14d
mov rax, r12
jmp 0x140045a90
mov eax, dword [0x141dc5e58]
xor edx, edx
div dword [0x141dc5e5c]
xor eax, 0xda06939b
imul eax, eax, 0xd253563a
and eax, 0x91a87464
cmp eax, 0x9eebd0d2
je 0x1400457f0
mov qword [rsp + 0x38], r8
mov rdx, qword [rsp + 0x28]
movabs rax, 0xffffffffffffffc
and rdx, rax
mov rsi, rdx
mov rax, rdx
shl rax, 5
add rax, r12
nop dword [rax]
mov r8d, dword [0x141dc5e60]
xor r8d, dword [0x141dc5e64]
add r8d, 0x427150ae
xor r8d, 0x61ffe635
cmp r8d, 0x491a9107
jb 0x140045840
dec r14
movabs rdx, 0x7ffffffffffffff
and r14, rdx
inc r14
and r14, 0xfffffffffffffffc
pxor xmm2, xmm2
xor r8d, r8d
xor r11d, r11d
pxor xmm3, xmm3
nop word [rax + rax]
mov edx, dword [0x141dc5e68]
imul edx, dword [0x141dc5e6c]
or edx, 0x921e277e
add edx, 0xd7cca733
or edx, 0x1fc2ac03
cmp edx, 0xad27f1c9
ja 0x140045890
movdqu xmm8, xmmword [r12 + r8]
movdqu xmm4, xmmword [r12 + r8 + 0x10]
movdqu xmm6, xmmword [r12 + r8 + 0x20]
movdqu xmm12, xmmword [r12 + r8 + 0x30]
movdqu xmm13, xmmword [r12 + r8 + 0x70]
movdqu xmm5, xmmword [r12 + r8 + 0x50]
movdqu xmm7, xmmword [r12 + r8 + 0x60]
movdqu xmm9, xmmword [r12 + r8 + 0x40]
movdqa xmm11, xmm8
punpcklqdq xmm11, xmm6
movdqa xmm10, xmm9
punpcklqdq xmm10, xmm7
punpckhqdq xmm8, xmm6
punpckhqdq xmm9, xmm7
movdqa xmm7, xmm4
punpcklqdq xmm7, xmm12
movdqa xmm6, xmm5
punpcklqdq xmm6, xmm13
punpckhqdq xmm4, xmm12
punpckhqdq xmm5, xmm13
movdqa xmm12, xmm11
pxor xmm12, xmm0
movdqa xmm13, xmm10
pxor xmm13, xmm0
psrlq xmm12, 7
psrlq xmm13, 7
psrlq xmm11, 6
por xmm11, xmm12
psrlq xmm10, 6
por xmm10, xmm13
pand xmm11, xmm1
paddq xmm2, xmm11
pand xmm10, xmm1
paddq xmm3, xmm10
movdqa xmm10, xmm8
pxor xmm10, xmm0
movdqa xmm11, xmm9
pxor xmm11, xmm0
psrlq xmm10, 7
psrlq xmm11, 7
psrlq xmm8, 6
por xmm8, xmm10
psrlq xmm9, 6
por xmm9, xmm11
pand xmm8, xmm1
pand xmm9, xmm1
movdqa xmm10, xmm7
pxor xmm10, xmm0
movdqa xmm11, xmm6
pxor xmm11, xmm0
psrlq xmm10, 7
psrlq xmm11, 7
psrlq xmm7, 6
por xmm7, xmm10
psrlq xmm6, 6
por xmm6, xmm11
pand xmm7, xmm1
paddq xmm7, xmm8
paddq xmm7, xmm2
pand xmm6, xmm1
paddq xmm6, xmm9
paddq xmm6, xmm3
movdqa xmm2, xmm4
pxor xmm2, xmm0
movdqa xmm3, xmm5
pxor xmm3, xmm0
psrlq xmm2, 7
psrlq xmm3, 7
psrlq xmm4, 6
por xmm4, xmm2
psrlq xmm5, 6
por xmm5, xmm3
pand xmm4, xmm1
movdqa xmm2, xmm4
paddq xmm2, xmm7
pand xmm5, xmm1
movdqa xmm3, xmm5
paddq xmm3, xmm6
sub r8, 0xffffffffffffff80
add r11, 4
add r14, 0xfffffffffffffffc
jne 0x140045890
paddq xmm3, xmm2
pshufd xmm2, xmm3, 0xee
paddq xmm2, xmm3
movq r14, xmm2
cmp qword [rsp + 0x28], rsi
mov r8, qword [rsp + 0x38]
movabs r11, 0x1000100010001
movabs rsi, 0xff00ff00ff00ff
je 0x140045673
nop dword [rax]
test r13b, r13b
jne 0x140045a90
movdqu xmm2, xmmword [rax]
movdqu xmm3, xmmword [rax + 0x10]
movdqa xmm4, xmm2
pxor xmm4, xmm0
movdqa xmm5, xmm3
pxor xmm5, xmm0
psrlq xmm5, 7
psrlq xmm4, 7
psrlq xmm3, 6
por xmm3, xmm5
psrlq xmm2, 6
por xmm2, xmm4
pand xmm3, xmm1
pand xmm2, xmm1
paddq xmm2, xmm3
pshufd xmm3, xmm2, 0xee
paddq xmm3, xmm2
movq rdx, xmm3
add r14, rdx
add rax, 0x20
cmp rax, rbp
jne 0x140045a90
jmp 0x140045673
mov r15, qword [rsp + 0x30]
mov rsi, qword [rsp + 0x20]
jmp 0x140045c02
movabs rax, 0x101010101010101
mov r9, qword [r12 + r10*8]
mov rcx, r9
not rcx
shr rcx, 7
shr r9, 6
or r9, rcx
and r9, rax
cmp r15d, 1
jne 0x140045b33
mov r15, qword [rsp + 0x30]
jmp 0x140045b5a
mov rcx, qword [r12 + r10*8 + 8]
mov rdx, rcx
not rdx
shr rdx, 7
shr rcx, 6
or rcx, rdx
and rcx, rax
add r9, rcx
cmp r15d, 2
mov r15, qword [rsp + 0x30]
jne 0x140045b61
mov rsi, qword [rsp + 0x20]
jmp 0x140045bb4
mov rcx, qword [r12 + r10*8 + 0x10]
mov rdx, rcx
not rdx
shr rdx, 7
shr rcx, 6
or rcx, rdx
and rcx, rax
add r9, rcx
mov rsi, qword [rsp + 0x20]
nop word cs:[rax + rax]
mov eax, dword [0x141dc5e78]
xor edx, edx
div dword [0x141dc5e7c]
or eax, 0xa00c277c
add eax, 0x455595fc
or eax, 0x2babaf46
cmp eax, 0xe293c1be
jbe 0x140045b90
mov eax, 0xa159dccd
mov rcx, r9
movabs rdx, 0xff00ff00ff00ff
and rcx, rdx
shr r9, 8
and r9, rdx
add r9, rcx
imul r9, r11
shr r9, 0x30
add r9, r14
nop
mov ecx, dword [0x141dc5e70]
sub ecx, dword [0x141dc5e74]
imul rcx, rax
shr rcx, 0x3d
add ecx, 0xb91a1636
cmp ecx, 0x561f925
jbe 0x140045be0
sub rsi, r9
jbe 0x140045c80
mov eax, dword [0x141dc5e98]
xor edx, edx
div dword [0x141dc5e9c]
mov eax, 0x8abf6987
nop word [rax + rax]
mov ecx, dword [0x141dc5ea0]
and ecx, dword [0x141dc5ea4]
imul ecx, ecx, 0x7648768a
imul rcx, rax
shr rcx, 0x3f
cmp ecx, 0x5141d4fc
je 0x140045c20
xor eax, eax
nop word cs:[rax + rax]
test al, al
jne 0x140045c50
movzx eax, byte [rbx + 0x38]
cmp rax, 3
ja case.default.0x140045c70
lea rcx, [0x141dba0ec]
movsxd rax, dword [rcx + rax*4]
add rax, rcx
jmp rax
mov qword [rsp + 0x28], rsi
xor esi, esi
jmp 0x140045d8d
mov eax, dword [0x141dc5ee8]
and eax, dword [0x141dc5eec]
imul eax, eax, 0xf202b934
or eax, 0xf7fd9abf
cmp eax, 0x6bce60df
jb 0x140045c80
mov r14, qword [rbx + 0x20]
mov rbx, qword [rbx + 0x28]
mov eax, dword [0x141dc5ef0]
add eax, dword [0x141dc5ef4]
mov ecx, 0x8c660541
imul rcx, rax
shr rcx, 0x3e
or ecx, 0xfe16e7fd
cmp ecx, 0xf2b59d21
jb 0x1400460a5
jmp 0x140046073
mov eax, dword [0x141dc5eb0]
and eax, dword [0x141dc5eb4]
xor eax, 0x988a24a5
and eax, 0x989b27b7
cmp eax, 0xf0a738e0
ja case.0x140045c70.1
xor eax, eax
mov qword [rsp + 0x28], rax
jmp 0x140045d8d
mov eax, dword [0x141dc5ea8]
imul eax, dword [0x141dc5eac]
and eax, 0x5a0820b
xor eax, 0x81360011
cmp eax, 0x2f13b2a1
jb case.default.0x140045c70
ud2
mov rcx, rsi
shr rcx, 1
nop
mov eax, dword [0x141dc5eb8]
and eax, dword [0x141dc5ebc]
xor eax, 0x4e7dfb06
imul eax, eax, 0x73b81468
cmp eax, 0x6eca8829
je 0x140045d30
inc rsi
shr rsi, 1
nop word cs:[rax + rax]
mov eax, dword [0x141dc5ec0]
xor edx, edx
div dword [0x141dc5ec4]
or eax, 0x295a6ef8
imul eax, eax, 0x3192d2a4
or eax, 0xab9dd8d9
cmp eax, 0x4e1e71fe
jb 0x140045d60
mov qword [rsp + 0x28], rsi
mov rsi, rcx
mov r14, qword [rbx + 0x20]
mov r12, qword [rbx + 0x28]
mov ebx, dword [rbx + 0x30]
xor r13d, r13d
xor ebp, ebp
mov qword [rsp + 0x20], rsi
nop word cs:[rax + rax]
mov eax, dword [0x141dc5ec8]
imul eax, dword [0x141dc5ecc]
imul rax, rax, 0x75d17d97
shr rax, 0x3e
xor eax, 0x4582c6cd
imul eax, eax, 0xee3ff88b
cmp eax, 0xab582a5c
ja 0x140045db0
cmp rbp, rsi
je 0x140045ea6
nop word cs:[rax + rax]
test r13b, r13b
jne 0x140045df0
inc rbp
nop dword [rax + rax]
mov eax, dword [0x141dc5ed0]
xor edx, edx
div dword [0x141dc5ed4]
imul eax, eax, 0xfe845d3b
xor eax, 0x98f7f729
imul eax, eax, 0x84ceb452
cmp eax, 0x57b862b0
jb 0x140045e00
mov eax, dword [0x141dc5ed8]
imul eax, dword [0x141dc5edc]
mov r15, qword [r12 + 0x20]
add eax, 0x4c28eb71
and eax, 0xc011483
cmp eax, 0xb4b380ba
jne 0x140045e60
mov rcx, r14
mov edx, ebx
call r15
nop word cs:[rax + rax]
mov eax, dword [str.B_Cz]
and eax, dword [0x141dc5ee4]
imul eax, eax, 0x9a2fe86c
add eax, 0xbce0edb8
imul rsi, rax, 0x4ca21d6f
shr rsi, 0x3e
mov rcx, r14
mov edx, ebx
call r15
cmp esi, 0xcd30a84e
je 0x140045e60
test al, al
mov rsi, qword [rsp + 0x20]
je 0x140045db0
mov al, 1
jmp 0x1400460b3
mov eax, dword [0x141dc5f00]
xor edx, edx
div dword [0x141dc5f04]
mov r8, qword [rsp + 0x30]
mov r15, qword [rsp + 0x28]
nop
mov eax, dword [0x141dc5f08]
sub eax, dword [0x141dc5f0c]
xor eax, 0xa4001811
and eax, 0xa6149911
imul rcx, rax, 0x1da040ef
shr rcx, 0x20
sub eax, ecx
shr eax, 1
add eax, ecx
shr eax, 0x1f
cmp eax, 0x2b4674b3
je 0x140045ec0
mov rcx, r14
mov rdx, rdi
call qword [r12 + 0x18]
mov ecx, eax
mov al, 1
test cl, cl
jne 0x1400460b3
xor edi, edi
nop word [rax + rax]
cmp rdi, r15
je 0x140045faa
mov rsi, rdi
mov eax, dword [0x141dc5f10]
xor eax, dword [0x141dc5f14]
imul eax, eax, 0x5378d6dc
cmp eax, 0x63b7d566
je 0x140045f1c
mov eax, dword [0x141dc5f18]
imul eax, dword [0x141dc5f1c]
imul eax, eax, 0x2bb40c60
add eax, 0x614bc5a0
cmp eax, 0xf776a6e3
jbe 0x140045f5e
mov rcx, r14
mov edx, ebx
call qword [r12 + 0x20]
lea rdi, [rsi + 1]
nop word cs:[rax + rax]
mov eax, dword [0x141dc5f20]
add eax, dword [0x141dc5f24]
imul ebp, eax, 0x8326ac47
add ebp, 0x1ebfae54
or ebp, 0x1a78c92f
mov rcx, r14
mov edx, ebx
call qword [r12 + 0x20]
cmp ebp, 0x7f27505
je 0x140045f70
test al, al
je 0x140045f10
jmp 0x140045fad
mov rsi, r15
cmp rsi, r15
setb al
jmp 0x1400460b3
mov r10, r12
mov r8d, dword [0x141dc5e18]
xor r8d, dword [0x141dc5e1c]
add r8d, 0x2807a3c3
xor eax, eax
cmp byte [r10 + r9 + 6], 0xc0
setge dl
cmp r8d, 0xf297711b
ja 0x140045fbb
mov al, dl
add r14, rax
mov eax, dword [str.m_r_r]
and eax, dword [0x141dc5e24]
add eax, 0x530e4f96
or eax, 0x81ee1b9e
and eax, 0xd7fe7b9f
cmp eax, 0xfcc42a27
je 0x140045fe9
mov r8, r12
mov eax, dword [0x141dc5e28]
add eax, dword [0x141dc5e2c]
imul eax, eax, 0xaa297728
xor eax, 0xb285881d
imul eax, eax, 0xcc7cc
cmp eax, 0xaec09fd7
je 0x14004600e
jmp 0x140045644
mov eax, dword [0x141dc5d10]
or eax, dword [0x141dc5d14]
imul ebp, eax, 0x6eab274f
mov rax, qword [rbx + 0x28]
mov rcx, r14
mov rdx, rdi
mov r8, r15
call qword [rax + 0x18]
cmp ebp, 0x12c1647
jne 0x1400460b3
mov rax, qword [rbx + 0x28]
mov rcx, r14
mov rdx, rdi
mov r8, r15
call qword [rax + 0x18]
jmp 0x140046037
mov esi, dword [0x141dc5ef8]
or esi, dword [0x141dc5efc]
add esi, 0x7948f3f2
and esi, 0xcb51ffaf
add esi, 0xa7c3922f
mov rcx, r14
mov rdx, rdi
mov r8, r15
call qword [rbx + 0x18]
cmp esi, 0x60c72ad8
jae 0x1400460b3
mov rcx, r14
mov rdx, rdi
mov r8, r15
call qword [rbx + 0x18]
jmp 0x140046073
movaps xmm6, xmmword [rsp + 0x40]
movaps xmm7, xmmword [rsp + 0x50]
movaps xmm8, xmmword [rsp + 0x60]
movaps xmm9, xmmword [rsp + 0x70]
movaps xmm10, xmmword [rsp + 0x80]
movaps xmm11, xmmword [rsp + 0x90]
movaps xmm12, xmmword [rsp + 0xa0]
movaps xmm13, xmmword [rsp + 0xb0]
add rsp, 0xc8
pop rbx
pop rbp
pop rdi
pop rsi
pop r12
pop r13
pop r14
pop r15
ret