Function at 0x1401b0910
Capabilities:
Encrypt data using rc4 ksa

Disassembly:
push r15
push r14
push r13
push r12
push rsi
push rdi
push rbp
push rbx
sub rsp, 0x2d8
mov ebx, r8d
mov rdi, rdx
mov rsi, rcx
mov rax, qword [0x1406a7e00]
xor rax, rsp
mov qword [rsp + 0x2d0], rax
mov r14, qword [0x1406ab7c0]
test r14, r14
jne 0x1401b096a
call fcn.140047ea0
mov r8, qword [rax]
lea rdx, str.disabled_by_default_skia.gpu
mov rcx, rax
call qword [r8 + 8]
mov r14, rax
mov qword [0x1406ab7c0], rax
mov qword [rsp + 0xa8], 0
test byte [r14], 5
je 0x1401b09e9
call fcn.140047ea0
mov r10, qword [rax]
xorps xmm0, xmm0
movups xmmword [rsp + 0x30], xmm0
mov byte [rsp + 0x48], 0
mov qword [rsp + 0x40], 0
mov dword [rsp + 0x28], 0
mov qword [rsp + 0x20], 0
lea r15, str.bool___cdecl_GrConvertPixels_const_GrPixmap___const_GrCPixmap___bool_
mov rcx, rax
mov dl, 0x58
mov r8, r14
mov r9, r15
call qword [r10 + 0x18]
lea rcx, [rsp + 0xb0]
mov qword [rsp + 0xb0], r14
mov qword [rsp + 0xb8], r15
mov qword [rsp + 0xc0], rax
mov qword [rsp + 0xa8], rcx
mov rax, qword [rdi + 0x28]
xor ebp, ebp
test eax, eax
jle 0x1401b0b2b
mov rcx, rax
shr rcx, 0x20
test ecx, ecx
jle 0x1401b0b2b
mov rdx, qword [rsi + 0x28]
xor ebp, ebp
test edx, edx
jle 0x1401b0b2b
mov r9, rdx
shr r9, 0x20
test r9d, r9d
jle 0x1401b0b2b
mov r8d, dword [rdi + 0x20]
test r8d, r8d
je 0x1401b0b29
mov r10d, dword [rsi + 0x20]
xor ebp, ebp
test r10d, r10d
je 0x1401b0b2b
cmp qword [rdi], 0
je 0x1401b0b2b
cmp qword [rsi], 0
je 0x1401b0b2b
xor ebp, ebp
cmp edx, eax
jne 0x1401b0b2b
cmp r9d, ecx
jne 0x1401b0b2b
cmp r10d, 0x1a
jne 0x1401b0b90
lea rcx, [rsi + 0x10]
lea r14, [rsp + 0x268]
mov rdx, r14
mov r8d, 6
call fcn.140129cf0
lea r15, [rsp + 0x128]
mov rcx, r15
mov rdx, r14
call fcn.1401362d0
mov rcx, r14
call fcn.14012c390
mov rcx, r15
mov rdx, rdi
mov r8d, ebx
call fcn.1401b0910
mov ebp, eax
test al, al
je 0x1401b0c3f
mov r8d, dword [rsi + 0x2c]
test r8d, r8d
jle 0x1401b0c3f
mov rax, qword [rsi]
xor ecx, ecx
mov rdx, qword [rsp + 0x128]
jmp 0x1401b0af1
add rdx, qword [rsp + 0x130]
inc ecx
add rax, qword [rsi + 8]
cmp ecx, r8d
jge 0x1401b0c3f
cmp dword [rsi + 0x28], 0
jle 0x1401b0ada
mov r8, rax
xor r9d, r9d
nop dword [rax]
movzx r10d, byte [rdx + r9*4 + 2]
mov byte [r8 + 2], r10b
movzx r10d, word [rdx + r9*4]
mov word [r8], r10w
inc r9
movsxd r10, dword [rsi + 0x28]
add r8, 3
cmp r9, r10
jl 0x1401b0b00
mov r8d, dword [rsi + 0x2c]
jmp 0x1401b0ada
xor ebp, ebp
cmp qword [rsp + 0xa8], 0
je 0x1401b0b6a
mov rax, qword [rsp + 0xb0]
cmp byte [rax], 0
je 0x1401b0b6a
call fcn.140047ea0
mov r9, qword [rsp + 0xc0]
mov rdx, qword [rsp + 0xb0]
mov r8, qword [rsp + 0xb8]
mov r10, qword [rax]
mov rcx, rax
call qword [r10 + 0x20]
mov rcx, qword [rsp + 0x2d0]
xor rcx, rsp
call fcn.1405602f0
mov eax, ebp
add rsp, 0x2d8
pop rbx
pop rbp
pop rdi
pop rsi
pop r12
pop r13
pop r14
pop r15
ret
cmp r8d, 0x1a
jne 0x1401b0c51
lea rcx, [rdi + 0x10]
lea r14, [rsp + 0x268]
mov rdx, r14
mov r8d, 6
call fcn.140129cf0
lea rcx, [rsp + 0x128]
mov rdx, r14
call fcn.1401362d0
mov rcx, r14
call fcn.14012c390
mov r8d, dword [rdi + 0x2c]
test r8d, r8d
jle 0x1401b0c87
mov rax, qword [rsp + 0x128]
mov rcx, qword [rdi]
xor edx, edx
jmp 0x1401b0bff
add rcx, qword [rdi + 8]
inc edx
add rax, qword [rsp + 0x130]
cmp edx, r8d
jge 0x1401b0c87
cmp dword [rdi + 0x28], 0
jle 0x1401b0be8
mov r8, rcx
xor r9d, r9d
nop dword [rax + rax]
movzx r10d, byte [r8 + 2]
mov byte [rax + r9*4 + 2], r10b
movzx r10d, word [r8]
mov word [rax + r9*4], r10w
mov byte [rax + r9*4 + 3], 0xff
inc r9
movsxd r10, dword [rdi + 0x28]
add r8, 3
cmp r9, r10
jl 0x1401b0c10
mov r8d, dword [rdi + 0x2c]
jmp 0x1401b0be8
lea rcx, [rsp + 0x128]
call fcn.140133a40
jmp 0x1401b0b2b
lea r13, [rdi + 0x10]
mov rcx, r13
call fcn.1401b1210
mov qword [rsp + 0x60], rax
lea r15, [rsi + 0x10]
mov rcx, r15
call fcn.1401b1210
mov r14, rax
mov eax, dword [rdi + 0x24]
cmp eax, 2
je 0x1401b0cc7
cmp eax, 3
jne 0x1401b0cd2
cmp dword [rsi + 0x24], 2
sete cl
jmp 0x1401b0cd4
lea rdi, [rsp + 0x268]
lea r14, [rsp + 0x128]
mov rcx, rdi
mov rdx, r14
call fcn.140133b60
mov rcx, rsi
mov rdx, rdi
mov r8d, ebx
call fcn.1401b0910
mov ebp, eax
mov rcx, rdi
call fcn.140133a40
mov rcx, r14
call fcn.140133a40
jmp 0x1401b0b2b
cmp dword [rsi + 0x24], 3
sete al
xor ecx, ecx
jmp 0x1401b0cd6
xor ecx, ecx
xor eax, eax
test cl, cl
jne 0x1401b0d67
test al, al
jne 0x1401b0d67
mov rcx, r15
call fcn.140001180
mov rbp, rax
mov rcx, r13
call fcn.140001180
mov rcx, rax
mov rdx, rbp
call fcn.140025c00
mov r12d, eax
xor r12b, 1
mov edx, dword [rdi + 0x20]
jne 0x1401b0d6d
cmp edx, dword [rsi + 0x20]
jne 0x1401b0d6d
movsxd rax, dword [rsi + 0x28]
imul r14, rax
test bl, bl
je 0x1401b113a
mov ebx, dword [rsi + 0x2c]
mov bpl, 1
test ebx, ebx
jle 0x1401b0b2b
dec ebx
imul rbx, qword [rsi + 8]
add rbx, qword [rsi]
mov r15, qword [rdi]
xor r12d, r12d
mov rcx, rbx
mov rdx, r15
mov r8, r14
call fcn.140562340
inc r12d
sub rbx, qword [rsi + 8]
add r15, qword [rdi + 8]
cmp r12d, dword [rsi + 0x2c]
jl 0x1401b0d43
jmp 0x1401b0b2b
mov edx, dword [rdi + 0x20]
mov r12b, 1
lea rax, [rsp + 0xa2]
mov qword [rsp + 0x20], rax
lea rcx, [rsp + 0xa0]
lea r8, [rsp + 0xa4]
lea r9, [rsp + 0xa3]
call fcn.1401b1230
mov edx, dword [rsi + 0x20]
lea rax, [rsp + 0x96]
mov qword [rsp + 0x28], rax
lea rax, [rsp + 0x97]
mov qword [rsp + 0x20], rax
lea rbp, [rsp + 0x90]
lea r8, [rsp + 0x9c]
lea r9, [rsp + 0x98]
mov rcx, rbp
call fcn.1401b14e0
mov byte [rsp + 0x2cc], 0
mov word [rsp + 0x88], 0x3210
test r12b, r12b
mov byte [rsp + 0x5f], r12b
je 0x1401b0e3e
mov ebp, dword [rsi + 0x24]
mov rcx, r15
call fcn.140001180
mov r15, rax
mov r12d, dword [rdi + 0x24]
mov rcx, r13
call fcn.140001180
mov byte [rsp + 0x2cc], 0
mov dword [rsp + 0x20], ebp
lea rbp, [rsp + 0x90]
lea rcx, [rsp + 0x268]
mov rdx, rax
mov r8d, r12d
mov r9, r15
call fcn.140088830
mov byte [rsp + 0x2cc], 1
jmp 0x1401b0e5b
lea rcx, [rsp + 0x88]
lea rdx, [rsp + 0xa0]
lea r8, [rsp + 0x90]
call fcn.1401b1820
mov r9d, dword [rdi + 0x2c]
mov r8, qword [rdi]
mov qword [rsp + 0x78], r8
mov rcx, qword [rdi + 8]
mov r10, qword [rsp + 0x60]
mov rax, r10
or rax, rcx
shr rax, 0x20
je 0x1401b0e86
mov rax, rcx
xor edx, edx
div r10
jmp 0x1401b0e8d
mov eax, ecx
xor edx, edx
div r10d
mov dword [rsp + 0x80], eax
mov rax, qword [rsi]
mov qword [rsp + 0x68], rax
mov rax, qword [rsi + 8]
mov rdx, r14
or rdx, rax
shr rdx, 0x20
je 0x1401b0eb3
xor edx, edx
div r14
jmp 0x1401b0eb8
xor edx, edx
div r14d
mov dword [rsp + 0x70], eax
mov r13d, 1
test bl, bl
je 0x1401b0ee1
movsxd rax, r9d
dec rax
imul rcx, rax
add r8, rcx
mov qword [rsp + 0x78], r8
mov r13d, r9d
mov r9d, 1
mov dword [rsp + 0x60], r9d
mov r12d, dword [rsp + 0x98]
test r12d, r12d
setne al
or al, byte [rsp + 0x5f]
cmp byte [rsp + 0xa2], 0
sete cl
movzx edx, byte [rsp + 0x96]
test dl, dl
sete r15b
or r15b, cl
xor r14d, r14d
or r15b, al
cmovne r14d, edx
xor r15b, 1
or r15b, cl
cmp r15b, 1
jne 0x1401b0f73
test al, al
jne 0x1401b0f73
lea rbx, [rsp + 0x128]
mov rcx, rbx
call fcn.1401b1900
mov edx, dword [rsp + 0xa4]
lea r8, [rsp + 0x78]
mov rcx, rbx
call fcn.1400f37c0
test r14b, r14b
je 0x1401b102f
lea rcx, [rsp + 0xa0]
lea rdx, [rsp + 0x128]
call fcn.14026c010
jmp 0x1401b0fc1
lea rbx, [rsp + 0x128]
mov rcx, rbx
call fcn.1401b1900
mov edx, dword [rsp + 0xa4]
lea r8, [rsp + 0x78]
mov rcx, rbx
call fcn.1400f37c0
lea rcx, [rsp + 0xa0]
mov rdx, rbx
call fcn.14026c010
test r15b, r15b
jne 0x1401b0fc1
call fcn.1400300f0
lea rcx, [rsp + 0x128]
mov rdx, rax
call fcn.1400f4d50
cmp byte [rsp + 0x5f], 0
je 0x1401b0feb
cmp byte [rsp + 0x2cc], 0
je 0x1401b1209
lea rcx, [rsp + 0x268]
lea rdx, [rsp + 0x128]
call fcn.140088b60
cmp r12d, 1
je 0x1401b0ffe
cmp r12d, 2
jne 0x1401b1013
mov edx, 0x2a
jmp 0x1401b1003
mov edx, 0x2b
lea rcx, [rsp + 0x128]
xor r8d, r8d
call fcn.1400f37c0
test r14b, r14b
je 0x1401b1037
call fcn.140030100
lea rcx, [rsp + 0x128]
mov rdx, rax
call fcn.1400f4d50
jmp 0x1401b1037
lea rbp, [rsp + 0x88]
lea r14, [rsp + 0x128]
mov rcx, rbp
mov rdx, r14
call fcn.14026c010
mov edx, dword [rsp + 0x9c]
lea r8, [rsp + 0x68]
mov rcx, r14
call fcn.1400f37c0
lea rdx, [rsp + 0xe8]
mov rcx, r14
call fcn.1400f6b80
test r13d, r13d
jle 0x1401b1104
movsxd rbp, dword [rsp + 0x60]
lea rbx, [rsp + 0xe0]
lea r14, [rsp + 0xc8]
lea r15, [rsp + 0xd0]
lea r12, [rsp + 0xd8]
movsxd rax, dword [rdi + 0x28]
mov qword [rsp + 0xe0], rbp
mov qword [rsp + 0xd8], rax
mov qword [rsp + 0xd0], 0
mov qword [rsp + 0xc8], 0
mov rcx, qword [rsp + 0x120]
test rcx, rcx
je 0x1401b1204
mov rax, qword [rcx]
mov qword [rsp + 0x20], rbx
mov rdx, r14
mov r8, r15
mov r9, r12
call qword [rax + 0x10]
mov rax, qword [rdi + 8]
sub qword [rsp + 0x78], rax
mov rax, qword [rsi + 8]
add qword [rsp + 0x68], rax
dec r13d
jne 0x1401b109c
mov rcx, qword [rsp + 0x120]
test rcx, rcx
je 0x1401b1125
lea rax, [rsp + 0xe8]
cmp rcx, rax
setne dl
mov rax, qword [rcx]
call qword [rax + 0x20]
lea rcx, [rsp + 0x248]
call fcn.14007a670
mov bpl, 1
jmp 0x1401b0b2b
movsxd r13, dword [rdi + 0x2c]
mov rbx, qword [rdi]
mov r15, qword [rdi + 8]
mov rdi, qword [rsi]
mov rsi, qword [rsi + 8]
cmp r14, r15
jne 0x1401b116a
cmp r14, rsi
jne 0x1401b116a
imul r14, r13
mov rcx, rdi
mov rdx, rbx
mov r8, r14
call fcn.140562340
jmp 0x1401b1132
mov bpl, 1
test r13d, r13d
jle 0x1401b0b2b
mov r12d, r13d
and r12d, 3
cmp r13d, 4
jb 0x1401b11dd
and r13d, 0xfffffffc
mov rcx, rdi
mov rdx, rbx
mov r8, r14
call fcn.140562340
add rdi, rsi
add rbx, r15
mov rcx, rdi
mov rdx, rbx
mov r8, r14
call fcn.140562340
add rdi, rsi
add rbx, r15
mov rcx, rdi
mov rdx, rbx
mov r8, r14
call fcn.140562340
add rdi, rsi
add rbx, r15
mov rcx, rdi
mov rdx, rbx
mov r8, r14
call fcn.140562340
add rdi, rsi
add rbx, r15
add r13d, 0xfffffffc
jne 0x1401b1187
test r12d, r12d
je 0x1401b0b2b
mov rcx, rdi
mov rdx, rbx
mov r8, r14
call fcn.140562340
add rdi, rsi
add rbx, r15
dec r12d
jne 0x1401b11e6
jmp 0x1401b0b2b
call fcn.14055e0e4
call fcn.140012580
int3