Function at 0x140273620
Capabilities:
Encode data using xor

Disassembly:
mov qword [rsp + 8], rbx
mov qword [rsp + 0x18], rbp
mov qword [rsp + 0x20], rsi
mov qword [rsp + 0x10], rdx
push rdi
push r12
push r13
push r14
push r15
mov eax, 0xc0
call fcn.1402b6820
sub rsp, rax
xor esi, esi
mov rdi, r9
mov r14d, esi
mov r13, r8
mov r15, rdx
mov rbx, rcx
call fcn.1401c9ff0
mov rcx, rbx
mov qword [rsp + 0x68], rax
call fcn.140078ec0
mov rcx, rax
mov rbp, rax
call fcn.140182830
mov rcx, rbx
mov qword [rsp + 0xb0], rax
call fcn.140181200
mov rcx, r15
mov qword [rsp + 0xb8], rax
mov qword [rsp + 0x58], rsi
mov ebx, esi
mov qword [rsp + 0x60], rsi
mov qword [rsp + 0x50], rsi
call fcn.1401e7f60
mov dword [rsp + 0x48], eax
mov qword [rsp + 0xa8], rsi
mov qword [rsp + 0xa0], rsi
cmp qword [rsp + 0x68], rbx
je 0x140273cab
test eax, eax
jle 0x140273cab
mov rcx, rbp
call fcn.140272d50
mov r15, rax
test rax, rax
jne 0x1402736ed
mov dword [rsp + 0x20], 0x8a
jmp 0x140273cb3
mov rcx, rbp
call fcn.140202ca0
mov rcx, rbp
mov qword [rsp + 0x58], rax
call fcn.140202ca0
mov qword [rsp + 0x60], rax
call fcn.140227500
mov r14, rax
cmp qword [rsp + 0x58], rbx
je 0x140273c9b
cmp qword [rsp + 0x60], rbx
je 0x140273c9b
test rax, rax
je 0x140273c9b
mov rcx, rax
call fcn.1402275f0
mov rcx, r14
call fcn.140227350
mov rcx, r14
mov r12, rax
call fcn.140227350
mov rcx, r14
mov qword [rsp + 0x80], rax
call fcn.140227350
mov rcx, r14
mov qword [rsp + 0x78], rax
call fcn.140227350
mov rcx, r14
mov qword [rsp + 0x88], rax
call fcn.140227350
mov qword [rsp + 0x70], rax
test rax, rax
jne 0x140273791
mov dword [rsp + 0x20], 0x9e
lea r8d, [rax + 3]
jmp 0x140273cb9
lea rcx, [r15 + r15]
mov r8d, 0xa2
lea rdx, str.crypto_sm2_sm2_crypt.c
call fcn.1401df580
movsxd rcx, dword [rsp + 0x48]
lea rdx, str.crypto_sm2_sm2_crypt.c
mov r8d, 0xa3
mov qword [rsp + 0x50], rax
call fcn.1401df580
mov qword [rsp + 0x40], rax
cmp qword [rsp + 0x50], rbx
je 0x140273c72
test rax, rax
je 0x140273c72
mov rax, qword [rsp + 0x118]
xor edx, edx
mov rcx, qword [rsp + 0x110]
mov r8, qword [rax]
call fcn.140306610
mov rdx, qword [rsp + 0xb0]
mov rcx, r12
call fcn.1402394a0
test eax, eax
jne 0x140273834
mov dword [rsp + 0x20], 0xad
mov edx, 0x67
lea r9, str.crypto_sm2_sm2_crypt.c
lea ecx, [rdx - 0x32]
lea r8d, [rdx - 0x23]
call fcn.1401d4a20
mov rbp, qword [rsp + 0x40]
jmp 0x140273cd0
mov rdx, qword [rsp + 0x58]
xor r9d, r9d
mov qword [rsp + 0x28], r14
mov r8, r12
mov rcx, rbp
mov qword [rsp + 0x20], rsi
call fcn.140202af0
test eax, eax
je 0x140273c4b
mov r9, qword [rsp + 0x88]
mov rcx, rbp
mov r8, qword [rsp + 0x80]
mov rdx, qword [rsp + 0x58]
mov qword [rsp + 0x20], r14
call fcn.1402027b0
test eax, eax
je 0x140273c4b
mov r9, qword [rsp + 0xb8]
xor r8d, r8d
mov rdx, qword [rsp + 0x60]
mov rcx, rbp
mov qword [rsp + 0x28], r14
mov qword [rsp + 0x20], r12
call fcn.140202af0
test eax, eax
je 0x140273c4b
mov r12, qword [rsp + 0x70]
mov rcx, rbp
mov r8, qword [rsp + 0x78]
mov r9, r12
mov rdx, qword [rsp + 0x60]
mov qword [rsp + 0x20], r14
call fcn.1402027b0
test eax, eax
je 0x140273c4b
mov rbp, qword [rsp + 0x50]
mov r8d, r15d
mov rcx, qword [rsp + 0x78]
mov rdx, rbp
call fcn.1401d55e0
test eax, eax
js 0x140273c3e
lea rax, [r15 + rbp]
mov r8d, r15d
mov rdx, rax
mov qword [rsp + 0x70], rax
mov rcx, r12
call fcn.1401d55e0
test eax, eax
js 0x140273c3e
mov r8d, 0xbf
lea rdx, str.crypto_sm2_sm2_crypt.c
mov rcx, rdi
call fcn.1401df580
mov rbx, rax
test rax, rax
jne 0x14027393a
mov dword [rsp + 0x20], 0xc1
jmp 0x140273c7a
mov r12, qword [rsp + 0xf8]
lea r9, [r15 + r15]
mov qword [rsp + 0x30], r12
mov r8, rbp
mov qword [rsp + 0x28], rsi
mov rdx, rdi
mov rcx, rbx
mov qword [rsp + 0x20], rsi
call fcn.140271fc0
test eax, eax
jne 0x140273978
mov dword [rsp + 0x20], 0xc8
lea r8d, [rax + 6]
jmp 0x140273c80
mov rdx, rsi
test rdi, rdi
je 0x140273a91
cmp rdi, 8
jb 0x140273a63
lea rcx, [rdi - 1]
lea rax, [r13 - 1]
add rcx, rbx
add rax, rdi
cmp rbx, rax
ja 0x1402739aa
cmp rcx, r13
jae 0x140273a63
mov rcx, r13
cmp rdi, 0x40
jb 0x140273a30
mov r8, rdi
mov r9, rdi
and r8d, 0x3f
sub r9, r8
lea rax, [rbx + 0x10]
sub rcx, rbx
nop word [rax + rax]
movdqu xmm0, xmmword [rax - 0x10]
add rdx, 0x40
movdqu xmm1, xmmword [rcx + rax - 0x10]
movdqu xmm2, xmmword [rax + rcx]
lea rax, [rax + 0x40]
xorps xmm1, xmm0
movdqu xmmword [rax - 0x50], xmm1
movdqu xmm0, xmmword [rax - 0x40]
movdqu xmm1, xmmword [rcx + rax - 0x30]
xorps xmm2, xmm0
movdqu xmmword [rax - 0x40], xmm2
movdqu xmm0, xmmword [rax - 0x30]
xorps xmm1, xmm0
movdqu xmmword [rax - 0x30], xmm1
movdqu xmm0, xmmword [rax - 0x20]
movdqu xmm1, xmmword [rcx + rax - 0x20]
xorps xmm1, xmm0
movdqu xmmword [rax - 0x20], xmm1
cmp rdx, r9
jne 0x1402739d0
cmp r8, 8
jb 0x140273a5e
jmp 0x140273a33
sub rcx, rbx
mov r8, rdi
and r8, 0xfffffffffffffff8
lea rax, [rdx + rbx]
nop
movq xmm0, qword [rax]
add rdx, 8
movq xmm1, qword [rcx + rax]
lea rax, [rax + 8]
xorps xmm1, xmm0
movq qword [rax - 8], xmm1
cmp rdx, r8
jne 0x140273a40
cmp rdx, rdi
je 0x140273a91
mov r9, r13
lea rcx, [rdx + rbx]
sub r9, rbx
mov r8, rdi
sub r8, rdx
nop dword [rax]
nop word [rax + rax]
movzx eax, byte [r9 + rcx]
xor byte [rcx], al
lea rcx, [rcx + 1]
sub r8, 1
jne 0x140273a80
mov rbp, qword [rsp + 0x68]
mov rdx, r12
mov rcx, rbp
call fcn.1401c9a00
test eax, eax
je 0x140273c14
mov rdx, qword [rsp + 0x50]
mov r8, r15
mov rcx, rbp
call fcn.1401c9c70
test eax, eax
je 0x140273c14
mov rdx, r13
mov r8, rdi
mov rcx, rbp
mov r13, rbp
call fcn.1401c9c70
test eax, eax
je 0x140273c14
mov rdx, qword [rsp + 0x70]
mov r8, r15
mov rcx, rbp
call fcn.1401c9c70
mov rbp, qword [rsp + 0x40]
test eax, eax
je 0x140273c19
xor r8d, r8d
mov rdx, rbp
mov rcx, r13
call fcn.1401c9860
test eax, eax
je 0x140273c19
mov rax, qword [rsp + 0x80]
mov qword [rsp + 0x90], rax
mov rax, qword [rsp + 0x88]
mov qword [rsp + 0x98], rax
call fcn.140203db0
mov qword [rsp + 0xa0], rax
call fcn.140203db0
mov rcx, qword [rsp + 0xa0]
mov qword [rsp + 0xa8], rax
test rcx, rcx
je 0x140273bef
test rax, rax
je 0x140273bef
mov r8d, dword [rsp + 0x48]
mov rdx, rbp
call fcn.140219c70
test eax, eax
je 0x140273bca
mov rcx, qword [rsp + 0xa8]
mov r8d, edi
mov rdx, rbx
call fcn.140219c70
test eax, eax
je 0x140273bca
lea r8, [0x1403c63b0]
lea rdx, [rsp + 0x110]
lea rcx, [rsp + 0x90]
call fcn.140207260
test eax, eax
jns 0x140273bb3
mov dword [rsp + 0x20], 0xea
jmp 0x140273bd2
mov rcx, qword [rsp + 0x118]
mov esi, 1
cdqe
mov qword [rcx], rax
jmp 0x140273cd0
mov dword [rsp + 0x20], 0xe3
mov edx, 0x67
lea r9, str.crypto_sm2_sm2_crypt.c
lea ecx, [rdx - 0x32]
lea r8d, [rdx - 0x23]
call fcn.1401d4a20
jmp 0x140273cd0
mov edx, 0x67
mov dword [rsp + 0x20], 0xde
lea r9, str.crypto_sm2_sm2_crypt.c
lea ecx, [rdx - 0x32]
lea r8d, [rdx - 0x26]
call fcn.1401d4a20
jmp 0x140273cd0
mov rbp, qword [rsp + 0x40]
mov edx, 0x67
mov dword [rsp + 0x20], 0xd4
lea r9, str.crypto_sm2_sm2_crypt.c
lea ecx, [rdx - 0x32]
lea r8d, [rdx - 0x61]
call fcn.1401d4a20
jmp 0x140273cd0
mov dword [rsp + 0x20], 0xbb
jmp 0x140273812
mov edx, 0x67
mov dword [rsp + 0x20], UnRegisterTypeLib
lea r9, str.crypto_sm2_sm2_crypt.c
lea ecx, [rdx - 0x32]
lea r8d, [rdx - 0x57]
call fcn.1401d4a20
mov rbp, qword [rsp + 0x40]
jmp 0x140273cd0
mov dword [rsp + 0x20], 0xa6
mov r8d, 0x41
mov ecx, 0x35
lea r9, str.crypto_sm2_sm2_crypt.c
lea edx, [rcx + 0x32]
call fcn.1401d4a20
mov rbp, qword [rsp + 0x40]
jmp 0x140273cd0
mov dword [rsp + 0x20], 0x92
mov r8d, 0x41
jmp 0x140273cb9
mov dword [rsp + 0x20], 0x84
mov r8d, 0x44
mov edx, 0x67
lea r9, str.crypto_sm2_sm2_crypt.c
lea ecx, [rdx - 0x32]
call fcn.1401d4a20
mov rbp, rbx
mov rcx, qword [rsp + 0xa8]
call fcn.140203c40
mov rcx, qword [rsp + 0xa0]
call fcn.140203c40
mov r8d, 0xf4
lea rdx, str.crypto_sm2_sm2_crypt.c
mov rcx, rbx
call fcn.1401df240
mov rcx, qword [rsp + 0x50]
lea rdx, str.crypto_sm2_sm2_crypt.c
mov r8d, 0xf5
call fcn.1401df240
mov r8d, 0xf6
lea rdx, str.crypto_sm2_sm2_crypt.c
mov rcx, rbp
call fcn.1401df240
mov rcx, qword [rsp + 0x68]
call fcn.1401c9fb0
mov rcx, r14
call fcn.140227290
mov rcx, qword [rsp + 0x58]
call fcn.140202770
mov rcx, qword [rsp + 0x60]
call fcn.140202770
lea r11, [rsp + 0xc0]
mov eax, esi
mov rbx, qword [r11 + 0x30]
mov rbp, qword [r11 + 0x40]
mov rsi, qword [r11 + 0x48]
mov rsp, r11
pop r15
pop r14
pop r13
pop r12
pop rdi
ret