Function at 0x1400762e0
Capabilities:
Encode data using xor

Disassembly:
push rsi
sub rsp, 0x60
mov qword [rsp + 0x50], rdx
mov qword [rsp + 0x58], rcx
mov eax, dword [0x140219bc8]
mov ecx, 0x7f1b4d61
xor ecx, 0xfc6f7245
xor eax, ecx
mov r8d, dword [0x140219bcc]
mov ecx, eax
xor ecx, 0xffffffff
mov edx, r8d
and edx, ecx
mov r9d, r8d
xor r9d, 0xffffffff
mov ecx, eax
and ecx, r9d
imul ecx, edx
mov edx, eax
and edx, r8d
or eax, r8d
imul eax, edx
add eax, ecx
mov ecx, 0xffffffff
xor ecx, 0xac1637fa
mov edx, 0x47be116f
xor edx, 0x47be116f
mov r8d, 0xb5b6f52e
xor r8d, 0xb5b6f52f
sub edx, r8d
sub ecx, edx
sub eax, ecx
mov ecx, eax
xor ecx, 0xcd64d4d9
mov edx, 0xffffffff
xor edx, 0xcd64d4d9
and eax, edx
shl eax, 1
sub eax, ecx
and eax, 0x2c02a42d
cmp eax, 0x4f18a879
je 0x1400762a1
mov eax, dword [0x140219bd0]
mov r8d, dword [0x140219bd4]
mov r9d, r8d
xor r9d, 0xffffffff
mov edx, eax
and edx, r9d
mov ecx, eax
or ecx, r9d
xor ecx, 0xffffffff
imul ecx, edx
mov edx, eax
and edx, r8d
or eax, r8d
imul eax, edx
add eax, ecx
imul ecx, eax, 0x9329ef14
mov eax, ecx
xor eax, 0xffffffff
xor ecx, 0xffffffff
and eax, ecx
mov ecx, 0xd20050b2
or ecx, 0xd20050b2
xor ecx, 0xffffffff
or eax, ecx
mov ecx, 0x5acd1f08
xor ecx, 0xa532e0f7
xor eax, ecx
mov r8d, 0xffffffff
xor r8d, 0xce91bc6e
mov edx, eax
and edx, r8d
mov ecx, eax
or ecx, r8d
mov r8d, 0x53d5b759
xor r8d, 0xac2a48a6
xor ecx, r8d
imul ecx, edx
mov edx, eax
and edx, 0xce91bc6e
mov r8d, 0x86e5b5ad
xor r8d, 0x487409c3
or eax, r8d
imul eax, edx
add eax, ecx
mov dword [rsp + 0x3c], eax
call fcn.1400741ed
mov rcx, qword [rsp + 0x50]
mov rdx, rax
mov eax, dword [rsp + 0x3c]
mov qword [rsp + 0x40], rdx
cmp rcx, 0xffffffffffffffe0
setl cl
mov byte [rsp + 0x4f], cl
cmp eax, 0xa6c07011
ja 0x140075933
mov al, byte [rsp + 0x4f]
test al, 1
jne 0x140075a19
jmp 0x140075f1f
mov eax, dword [0x140219bd8]
mov ecx, dword [0x140219bdc]
mov edx, 0x37dafdda
xor edx, 0xbe1f294
xor ecx, edx
xor edx, edx
div ecx
sub eax, 0x45fb552d
mov ecx, 0xd5a34f6a
xor ecx, 0x95b4d5b5
sub eax, ecx
mov ecx, 0x5a72e8da
xor ecx, 0x34d4c1ba
sub eax, ecx
mov ecx, 0x9128d1db
xor ecx, 0xd13f4b04
add eax, ecx
mov ecx, eax
and ecx, 0x1e8532e8
shl ecx, 1
xor eax, 0x1e8532e8
add eax, ecx
mov ecx, 0xc907ac27
xor ecx, 0x6beb5def
cmp eax, ecx
ja 0x1400762aa
mov rcx, qword [rsp + 0x50]
mov eax, dword [0x140219be0]
mov r8d, dword [0x140219be4]
mov edx, 0x10184346
xor edx, 0x1273fc0c
xor r8d, edx
xor edx, edx
div r8d
mov edx, eax
mov eax, edx
or eax, 0xcf64977
mov r8d, 0x211652ab
xor r8d, 0xdee9ad54
xor eax, r8d
or edx, 0xcf64977
xor edx, 0xffffffff
or eax, edx
mov edx, 0x24ba0903
xor edx, 0xdb45f6fc
xor eax, edx
add eax, 0xdfd26540
mov edx, 0xb09964d4
xor edx, 0x2383a6dd
sub eax, edx
cmp rcx, 0xffffffff80000000
setb cl
mov byte [rsp + 0x3b], cl
cmp eax, 0xeefd9abd
ja 0x1400762aa
mov al, byte [rsp + 0x3b]
test al, 1
jne 0x140075b19
jmp 0x140075c43
mov rcx, qword [rsp + 0x58]
mov edx, 0xd3
call fcn.140038540
mov rax, qword [rsp + 0x40]
cmp byte [rax], 0
jne 0x14007629a
mov ecx, dword [0x140219be8]
imul ecx, dword [0x140219bec]
mov eax, ecx
xor eax, 0xffffffff
mov edx, 0xf2bfb8db
xor edx, 0xd404724
xor ecx, edx
or eax, ecx
mov ecx, 0xc5bd8d44
and ecx, 0xc5bd8d44
mov edx, 0x2ca7d3d4
xor edx, 0xd3582c2b
xor ecx, edx
mov edx, 0x7751094b
xor edx, 0x88aef6b4
xor eax, edx
xor ecx, 0xffffffff
or eax, ecx
sub eax, 0xcbf63bb4
imul eax, eax, 0x1c660985
cmp eax, 0x46ec60b6
jbe 0x1400762b3
mov rdx, qword [rsp + 0x50]
mov rcx, qword [rsp + 0x58]
mov eax, dword [0x140219bf0]
xor eax, 0x2398e877
and eax, dword [0x140219bf4]
mov r9d, eax
xor r9d, 0xffffffff
and r9d, 0x56f85791
mov r10d, 0xffffffff
xor r10d, 0x56f85791
mov r8d, eax
and r8d, r10d
imul r8d, r9d
mov r9d, eax
and r9d, 0x56f85791
mov r10d, 0xc71af834
xor r10d, 0x91e2afa5
or eax, r10d
imul eax, r9d
add eax, r8d
mov r9d, 0xb5f20a5d
xor r9d, 0xfc628930
mov r8d, eax
xor r8d, r9d
mov r9d, 0xffffffff
xor r9d, 0x4990836d
and eax, r9d
shl eax, 1
sub eax, r8d
sub eax, 0x32a1915d
mov dword [rsp + 0x34], eax
call fcn.1400756c0
mov eax, dword [rsp + 0x34]
cmp eax, 0x63945a24
jae 0x1400762b3
jmp 0x14007629a
mov rax, qword [rsp + 0x50]
cmp rax, 0xffffffffffff8000
jae 0x140075c87
mov rcx, qword [rsp + 0x58]
mov dl, 0xa9
xor dl, 0x7b
call fcn.140038540
mov rax, qword [rsp + 0x40]
cmp byte [rax], 0
jne 0x14007629a
mov rcx, qword [rsp + 0x58]
mov rax, qword [rsp + 0x50]
mov edx, eax
call fcn.14007456f
jmp 0x14007629a
mov rax, qword [rsp + 0x50]
movabs rcx, 0xd0c663538fe6cead
movabs rdx, 0x2f399cac7019312d
xor rcx, rdx
cmp rax, rcx
jae 0x140075d9b
mov eax, dword [0x140219bf8]
mov edx, dword [0x140219bfc]
xor eax, 0xffffffff
xor edx, 0xffffffff
mov ecx, 0x71a2f332
xor ecx, 0x68c9af71
mov r8d, 0xbee309e4
xor r8d, 0x411cf61b
xor ecx, r8d
or eax, edx
or ecx, 0x196b5c43
mov edx, 0x139845d3
xor edx, 0xec67ba2c
xor eax, edx
and eax, ecx
imul eax, eax, 0xf92e38bb
or eax, 0x3200167e
and eax, 0xb901a24e
cmp eax, 0x79759db0
jae 0x1400762bc
mov rcx, qword [rsp + 0x58]
mov eax, dword [0x140219c00]
mov edx, 0x8e7d5e3a
xor edx, 0x1a8d9676
xor eax, edx
xor edx, edx
div dword [0x140219c04]
or eax, 0xbe7223a1
xor edx, edx
sub edx, 0x71168d87
add eax, edx
mov edx, 0x25b8ec81
xor edx, 0x12c4c3a6
xor eax, edx
mov dword [rsp + 0x2c], eax
mov edx, 0xd1
call fcn.140038540
mov rcx, qword [rsp + 0x40]
mov eax, dword [rsp + 0x2c]
cmp byte [rcx], 0
sete cl
mov byte [rsp + 0x33], cl
cmp eax, 0x4926e019
je 0x140075d0b
mov al, byte [rsp + 0x33]
test al, 1
jne 0x140075d84
jmp 0x14007629a
mov rcx, qword [rsp + 0x58]
mov rax, qword [rsp + 0x50]
mov dx, ax
call fcn.1400744b9
jmp 0x14007629a
mov eax, dword [0x140219c08]
xor edx, edx
div dword [0x140219c0c]
mov ecx, 0xa93b4b1b
xor edx, edx
div ecx
mov ecx, eax
mov edx, 0xffcba520
xor edx, 0x710a0780
mov eax, ecx
and eax, edx
or ecx, 0x8ec1a2a0
add eax, ecx
add eax, 0xfc8a00d4
cmp eax, 0x666725e6
jbe 0x1400762c5
mov rcx, qword [rsp + 0x58]
mov esi, dword [0x140219c10]
xor esi, 0x74ffe6f
mov eax, dword [0x140219c14]
xor eax, 0xd60ee577
sub esi, eax
mov eax, esi
xor eax, 0xffffffff
mov r8d, 0x922918b1
xor r8d, 0xbd4c4fd0
mov edx, 0xf802e18b
xor edx, 0x7fd1e74
xor r8d, edx
mov r9d, 0xffffffff
xor r9d, 0x9862b8a
mov edx, eax
and edx, 0x9862b8a
and esi, r9d
mov r10d, r8d
and r10d, 0x9862b8a
mov r11d, 0x62cb2505
xor r11d, 0x4dae7264
and r11d, r9d
or edx, esi
or r10d, r11d
xor edx, r10d
or eax, r8d
mov r8d, 0x63e7f63b
xor r8d, 0x9c1809c4
xor eax, r8d
mov r8d, 0xf19ff6f4
xor r8d, 0xf819dd7e
or r8d, r9d
and eax, r8d
or edx, eax
mov eax, edx
xor eax, 0xffffffff
mov r8d, edx
xor r8d, 0xffffffff
and eax, r8d
mov r8d, 0xdcf0c2a3
xor r8d, 0x6ec39c2f
mov r9d, 0x81b415ab
xor r9d, 0x33874b27
or r8d, r9d
xor r8d, 0xffffffff
or eax, r8d
xor eax, 0xffffffff
or edx, 0xb2335e8c
xor edx, 0xffffffff
or eax, edx
xor eax, 0xffffffff
mov edx, 0xbb3480a7
xor edx, 0x2d32f833
add eax, edx
mov dword [rsp + 0x24], eax
mov edx, 0xd0
call fcn.140038540
mov rcx, qword [rsp + 0x40]
mov eax, dword [rsp + 0x24]
cmp byte [rcx], 0
sete cl
mov byte [rsp + 0x2b], cl
cmp eax, 0xdd69f5ad
ja 0x1400762c5
mov al, byte [rsp + 0x2b]
test al, 1
jne 0x140075f09
jmp 0x14007629a
mov rcx, qword [rsp + 0x58]
mov rax, qword [rsp + 0x50]
mov dl, al
call fcn.140038540
jmp 0x14007629a
mov rax, qword [rsp + 0x50]
cmp rax, 0x80
jge 0x1400760c8
mov eax, dword [0x140219c18]
mov r8d, dword [0x140219c1c]
mov ecx, 0x87091e73
xor ecx, 0x78f6e18c
mov r9d, r8d
xor r9d, ecx
mov edx, eax
and edx, r9d
mov ecx, eax
or ecx, r9d
xor ecx, 0xffffffff
imul ecx, edx
mov edx, eax
and edx, r8d
or eax, r8d
imul eax, edx
add eax, ecx
imul eax, eax, 0xbc9ea4db
mov ecx, eax
and ecx, 0xf350e9ba
shl ecx, 1
add eax, 0xf350e9ba
sub eax, ecx
mov ecx, 0x19fdedca
xor ecx, 0x348eacc0
and eax, ecx
cmp eax, 0x6e77fa77
ja 0x1400762ce
mov rdx, qword [rsp + 0x40]
mov esi, dword [0x140219c20]
mov r11d, dword [0x140219c24]
xor r11d, 0x9751d510
mov eax, esi
xor eax, 0xffffffff
mov r9d, r11d
xor r9d, 0xffffffff
mov r8d, 0xade0942
xor r8d, 0x3cd3f2b8
mov ecx, 0xbc1a289a
xor ecx, 0x43e5d765
xor r8d, ecx
mov ecx, eax
and ecx, 0x360dfbfa
and esi, r8d
mov r10d, r9d
and r10d, 0x360dfbfa
and r11d, r8d
or ecx, esi
or r10d, r11d
xor ecx, r10d
or eax, r9d
mov r9d, 0xc2bdfb68
xor r9d, 0x3d420497
xor eax, r9d
or r8d, 0x360dfbfa
and eax, r8d
or ecx, eax
mov eax, ecx
and eax, 0xcfed2f04
or ecx, 0xcfed2f04
add eax, ecx
or eax, 0x68890c00
mov r9d, 0xa0c17bd0
xor r9d, 0x61466c05
mov ecx, 0xc9a98a17
xor ecx, 0x365675e8
xor r9d, ecx
mov r8d, eax
and r8d, r9d
mov ecx, eax
or ecx, r9d
xor ecx, 0xffffffff
imul ecx, r8d
mov r8d, eax
and r8d, 0xc18717d5
mov r9d, 0x71755338
xor r9d, 0xb0f244ed
or eax, r9d
imul eax, r8d
add eax, ecx
mov ecx, 0x44f03fde
xor ecx, 0xa3d67749
mov dl, byte [rdx]
mov r8b, 0xde
xor r8b, 0xde
cmp dl, r8b
sete dl
mov byte [rsp + 0x23], dl
cmp eax, ecx
je 0x1400762ce
mov al, byte [rsp + 0x23]
test al, 1
jne 0x1400760b2
jmp 0x14007629a
mov rcx, qword [rsp + 0x58]
mov rax, qword [rsp + 0x50]
mov dl, al
call fcn.140038540
jmp 0x14007629a
mov rax, qword [rsp + 0x50]
cmp rax, 0x100
jae 0x14007610c
mov rcx, qword [rsp + 0x58]
mov edx, 0xcc
call fcn.140038540
mov rax, qword [rsp + 0x40]
cmp byte [rax], 0
jne 0x14007629a
mov rcx, qword [rsp + 0x58]
mov rax, qword [rsp + 0x50]
mov dl, al
call fcn.1400386b8
jmp 0x14007629a
mov rax, qword [rsp + 0x50]
movabs rcx, 0x7c43edff2ebde23f
movabs rdx, 0x7c43edff2ebce23f
xor rcx, rdx
cmp rax, rcx
jae 0x14007616b
mov rcx, qword [rsp + 0x58]
mov dl, 0xca
xor dl, 7
call fcn.140038540
mov rax, qword [rsp + 0x40]
mov al, byte [rax]
mov cl, 4
xor cl, 4
cmp al, cl
jne 0x14007629a
mov rcx, qword [rsp + 0x58]
mov rax, qword [rsp + 0x50]
mov dx, ax
call fcn.1400744b9
jmp 0x14007629a
mov ecx, dword [0x140219c28]
or ecx, dword [0x140219c2c]
mov eax, ecx
xor eax, 0xffffffff
xor ecx, 0xffffffff
or eax, ecx
mov ecx, 0xffffffff
xor ecx, 0xed3b0985
mov edx, 0xffffffff
xor edx, 0xed3b0985
or ecx, edx
and eax, ecx
xor eax, 0xffffffff
mov ecx, eax
and ecx, 0x45d15e97
shl ecx, 1
mov edx, 0x1dc70cc4
xor edx, 0x58165253
add eax, edx
sub eax, ecx
imul eax, eax, 0x7f3283c3
cmp eax, 0xdbe3cf67
ja 0x1400762d7
mov rdx, qword [rsp + 0x50]
mov eax, dword [0x140219c30]
mov ecx, dword [0x140219c34]
xor ecx, 0xf176117
or eax, ecx
sub eax, 0xe07ee98a
add eax, 0xef0c1ee7
xor ecx, ecx
sub ecx, 0x22827d30
add eax, ecx
mov ecx, 0xd8a605d9
xor ecx, 0x17a36beb
movabs r8, 0xb29c4ee738fd9b97
movabs r9, 0xb29c4ee638fd9b97
xor r8, r9
cmp rdx, r8
setb dl
mov byte [rsp + 0x22], dl
cmp eax, ecx
jae 0x1400761c9
mov al, byte [rsp + 0x22]
test al, 1
jne 0x14007623b
jmp 0x14007626e
mov rcx, qword [rsp + 0x58]
mov dl, 0x10
xor dl, 0xde
call fcn.140038540
mov rax, qword [rsp + 0x40]
cmp byte [rax], 0
jne 0x14007629a
mov rcx, qword [rsp + 0x58]
mov rax, qword [rsp + 0x50]
mov edx, eax
call fcn.14007456f
jmp 0x14007629a
mov rcx, qword [rsp + 0x58]
mov edx, 0xcf
call fcn.140038540
mov rax, qword [rsp + 0x40]
cmp byte [rax], 0
jne 0x14007629a
mov rdx, qword [rsp + 0x50]
mov rcx, qword [rsp + 0x58]
call fcn.1400756c0
nop
add rsp, 0x60
pop rsi
ret
invalid
mov ebx, 0xe9f43244
invalid
pop rsi
xchg esi, eax
cmp byte [rax - 0x72417], bl
call qword [rax - 0x7c]
pop rsi
invalid
push rax
test byte [rsi + 0x27], bl
jmp 0x140075d0b
imul edi, ebp, 0xde9fd7c
sti
invalid
invalid
cmp byte [0x13ef14c09], r15b
invalid
sub rsp, 0x38
mov qword [rsp + 0x30], rdx
mov qword [rsp + 0x28], rcx
call fcn.1400741ed
mov rcx, qword [rsp + 0x28]
mov rdx, qword [rsp + 0x30]
add rsp, 0x38
jmp 0x140075890