Function at 0x1400339aa
Capabilities:
Encode data using xor

Disassembly:
push rbp
sub rsp, 0x90
lea rbp, [rsp + 0x80]
mov qword [rbp], rdx
mov qword [rbp + 8], rcx
mov eax, dword [0x1401f2be8]
xor edx, edx
div dword [0x1401f2bec]
sub eax, 0x3bc8eff2
mov ecx, 0x1bf90056
xor edx, edx
div ecx
sub eax, 0x62af3840
cmp eax, 0xb9b8c34a
je 0x14003397d
mov eax, dword [0x1401f2bf0]
xor eax, 0xca4823d
mov ecx, dword [0x1401f2bf4]
and eax, ecx
add eax, 0x16428a89
imul rax, rax, 0x30386cb7
shr rax, 0x3d
or eax, 0xc701e976
mov dword [rbp - 0x1c], eax
mov eax, 0x516133a0
mov dword [rbp - 0x20], eax
mov eax, 0x10
mov qword [rbp - 0x38], rax
call fcn.1401f0aa0
sub rsp, rax
mov rax, qword [rbp - 0x38]
mov rcx, rsp
mov qword [rbp - 0x30], rcx
call fcn.1401f0aa0
sub rsp, rax
mov rax, rsp
mov qword [rbp - 0x28], rax
sub rsp, 0x20
call fcn.14000c8dc
mov rdx, qword [rbp + 8]
mov r8, qword [rbp]
mov ecx, dword [rbp - 0x20]
add rsp, 0x20
mov r9, rax
mov eax, dword [rbp - 0x1c]
add r9, 0x60
mov qword [rbp - 0x18], r9
mov rdx, qword [rdx]
mov qword [rbp - 0x10], rdx
cmp rdx, r8
setg dl
mov byte [rbp - 1], dl
cmp eax, ecx
jb 0x140033174
mov al, byte [rbp - 1]
test al, 1
jne 0x140033220
jmp 0x14003323a
mov rdx, qword [rbp]
mov rcx, qword [rbp + 8]
sub rsp, 0x20
call fcn.140032e90
add rsp, 0x20
jmp 0x140033977
mov rax, qword [rbp - 0x10]
mov rcx, qword [rbp]
cmp rax, rcx
jge 0x140033977
mov rax, qword [rbp + 8]
mov rcx, rax
add rcx, 8
mov qword [rbp - 0x48], rcx
mov rax, qword [rax + 8]
mov qword [rbp - 0x40], rax
cmp rax, 0
je 0x1400333b0
mov eax, dword [0x1401f2bf8]
xor edx, edx
div dword [0x1401f2bfc]
mov ecx, 0x107e137a
xor ecx, 0x6d371324
add eax, ecx
mov edx, eax
xor edx, 0x70395aba
xor edx, 0xffffffff
mov ecx, 0x50053490
xor ecx, 0x203c6e2a
and ecx, edx
shl ecx, 1
sub ecx, 0x70395aba
sub eax, ecx
add eax, 0xd3554719
cmp eax, 0x6f1f9a9d
jbe 0x140033986
mov r8, qword [rbp]
mov r9d, dword [0x1401f2c00]
mov edx, dword [0x1401f2c04]
mov eax, 0x1f710512
xor eax, 0x8a1f8217
xor edx, eax
mov ecx, r9d
xor ecx, 0xffffffff
mov eax, 0x45ebf934
xor eax, 0xa07dfd32
and eax, ecx
mov r10d, 0xbca159b4
xor r10d, 0x59375db2
mov ecx, 0x2c449108
xor ecx, 0xd3bb6ef7
xor r10d, ecx
and r9d, r10d
mov r11d, 0x3eeb365e
xor r11d, 0xc114c9a1
mov ecx, edx
xor ecx, r11d
and ecx, 0xe5960406
and edx, r10d
or eax, r9d
or ecx, edx
xor eax, ecx
sub eax, 0xfc8c1f1f
imul eax, eax, 0x3bcb0303
mov ecx, 0x65f92ce2
xor edx, edx
div ecx
mov rdx, qword [rbp - 0x40]
mov ecx, 0xcbcc8ba1
xor ecx, 0xb51de9d4
mov r9, qword [rdx]
mov rdx, r9
xor rdx, 0xffffffffffffffff
xor r9, 0xffffffffffffffff
and rdx, r9
mov r9, 0xffffffffffffffff
movabs r10, 0xbfffffffffffffff
xor r9, r10
mov r10, 0xffffffffffffffff
movabs r11, 0xbfffffffffffffff
xor r10, r11
and r9, r10
or rdx, r9
xor rdx, 0xffffffffffffffff
cmp rdx, r8
setl dl
mov byte [rbp - 0x49], dl
cmp eax, ecx
ja 0x140033986
mov al, byte [rbp - 0x49]
test al, 1
jne 0x1400333b0
jmp 0x14003376d
mov r9, qword [rbp - 0x10]
mov r8, qword [rbp]
mov rax, r8
xor rax, 0xffffffffffffffff
and rax, r9
mov rcx, r9
xor rcx, 0xffffffffffffffff
mov rdx, r8
and rdx, rcx
sub rdx, rax
mov qword [rbp - 0x58], rdx
mov rax, rdx
or rax, rax
movabs rcx, 0xe5ffd03062c66a21
movabs r10, 0x1a002fcf9d3995de
xor rcx, r10
xor rax, rcx
mov rcx, r8
or rcx, rcx
xor rcx, 0xffffffffffffffff
xor rax, 0xffffffffffffffff
xor rcx, 0xffffffffffffffff
and rax, rcx
mov rcx, rdx
or rcx, r8
xor rcx, 0xffffffffffffffff
or rax, rcx
xor rax, 0xffffffffffffffff
cmp rax, 0
setl al
mov rcx, rdx
xor rcx, 0xffffffffffffffff
movabs r10, 0x41bbc565c55dcf4e
movabs r8, 0xbe443a9a3aa230b1
xor r10, r8
mov r8, rdx
xor r8, r10
or rcx, r8
and rcx, r9
movabs r8, 0x3ae0de5fc7865cc1
movabs r10, 0xc51f21a03879a33e
xor r8, r10
xor rcx, r8
mov r8, r9
xor r8, 0xffffffffffffffff
movabs r10, 0x78dcb44657aaf9b5
movabs r11, 0x87234bb9a855064a
xor r10, r11
xor r9, r10
or r8, r9
xor rdx, 0xffffffffffffffff
xor r8, 0xffffffffffffffff
or rdx, r8
movabs r8, 0x1cff8c2ba4d83905
movabs r9, 0xe30073d45b27c6fa
xor r8, r9
xor rcx, r8
xor rdx, 0xffffffffffffffff
or rcx, rdx
movabs rdx, 0x1197dc9e10b31696
movabs r8, 0xee682361ef4ce969
xor rdx, r8
cmp rcx, rdx
setg cl
and al, cl
test al, 1
jne 0x14003368b
mov eax, dword [0x1401f2c08]
mov ecx, dword [0x1401f2c0c]
xor ecx, 0x5dbd42c5
xor eax, ecx
sub eax, 0xbd636457
mov ecx, eax
xor ecx, 0xffffffff
mov edx, 0xe03d55d1
xor edx, 0xdda2d1ce
and edx, ecx
mov r8d, 0xffffffff
xor r8d, 0x3d9f841f
mov ecx, eax
and ecx, r8d
imul ecx, edx
mov edx, eax
and edx, 0x3d9f841f
or eax, 0x3d9f841f
imul eax, edx
add eax, ecx
mov ecx, 0x1e3c2fcc
xor ecx, 0xe1c3d033
xor eax, ecx
mov edx, 0xed73ce1a
xor edx, 0x5e9662ed
mov ecx, 0x65007311
xor ecx, 0x9aff8cee
xor edx, ecx
mov ecx, 0xa8d288bb
xor ecx, 0xa12170f8
mov r8d, 0x6894f17f
xor r8d, 0x976b0e80
xor ecx, r8d
or eax, edx
or ecx, 0x9f3f843
xor eax, 0xffffffff
and eax, ecx
cmp eax, 0x8d6f0220
ja 0x14003398f
mov r8, qword [rbp - 0x58]
mov rdx, qword [rbp - 0x40]
mov rcx, qword [rbp - 0x10]
mov r9d, dword [0x1401f2c10]
xor r9d, 0x99788a16
mov r10d, dword [str.pB_fw_]
xor r10d, 0xffffffff
mov eax, r9d
xor eax, r10d
and eax, r9d
mov r9d, eax
add r9d, 1
xor eax, 0xffffffff
or eax, 0xb8f33e1d
add eax, r9d
mov r10d, 0xffffffff
xor r10d, 0x2d5e7109
mov r9d, eax
xor r9d, r10d
and r9d, eax
mov eax, r9d
xor eax, 0xffffffff
mov r10d, r9d
xor r10d, 0xffffffff
or eax, r10d
xor eax, 0xffffffff
mov r10d, 0x209bed0b
xor r10d, 0x4ee6a7b2
mov r11d, 0xeecda80
xor r11d, 0xf113257f
xor r10d, r11d
or eax, r10d
mov r10d, 0x9d407d5c
xor r10d, 0xf33d37e5
mov r11d, 0xd45b33fb
xor r11d, 0x2ba4cc04
xor r10d, r11d
mov r11d, 0xffffffff
xor r11d, 0x6e7d4ab9
or r10d, r11d
and r9d, r10d
xor r9d, 0xffffffff
xor eax, 0xffffffff
xor r9d, 0xffffffff
or eax, r9d
mov dword [rbp - 0x5c], eax
mov r9d, 0x10
sub rsp, 0x30
mov qword [rsp + 0x20], 8
call fcn.140014320
mov rcx, qword [rbp - 0x48]
add rsp, 0x30
mov rdx, rax
mov eax, dword [rbp - 0x5c]
mov qword [rcx], rdx
cmp eax, 0x8ca89293
jae 0x14003398f
jmp 0x14003376d
mov r8d, dword [0x1401f2c18]
mov edx, dword [0x1401f2c1c]
mov eax, r8d
xor eax, 0xffffffff
and eax, 0xb8d2224a
mov r9d, 0x41c45759
xor r9d, 0xf9167513
mov ecx, 0x9467b474
xor ecx, 0x6b984b8b
xor r9d, ecx
and r8d, r9d
mov ecx, edx
xor ecx, 0xffffffff
and ecx, 0xb8d2224a
and edx, r9d
or eax, r8d
or ecx, edx
xor eax, ecx
xor eax, 0x4721c20e
mov ecx, 0xbb3da8e7
xor ecx, 0x69dd74a2
add eax, ecx
mov edx, eax
xor edx, 0xffffffff
and edx, 0xec8ca2a
mov r8d, 0xffffffff
xor r8d, 0xec8ca2a
mov ecx, eax
and ecx, r8d
imul ecx, edx
mov edx, eax
and edx, 0xec8ca2a
or eax, 0xec8ca2a
imul eax, edx
add eax, ecx
cmp eax, 0xbd260864
je 0x140033998
mov eax, dword [0x1401f2c20]
xor eax, 0xf9c2df01
or eax, dword [0x1401f2c24]
xor eax, 0x4e1ff06c
xor eax, 0x679e8a18
xor ecx, ecx
sub ecx, 0x5ac3997a
sub eax, ecx
mov dword [rbp - 0x60], eax
sub rsp, 0x20
call fcn.1400091c0
mov eax, dword [rbp - 0x60]
add rsp, 0x20
cmp eax, 0x3f1076a6
jbe 0x140033998
jmp 0x140033977
mov rax, qword [rbp - 0x10]
mov rcx, qword [rbp + 8]
mov rdx, qword [rbp]
mov qword [rcx], rdx
mov qword [rbp - 0x68], rax
mov rcx, qword [rbp]
mov rax, qword [rbp - 0x68]
mov qword [rbp - 0x70], rax
cmp rax, rcx
jge 0x1400338d5
mov rcx, qword [rbp - 0x30]
mov edx, 0x10
sub rsp, 0x20
call fcn.140009850
mov rcx, qword [rbp - 0x48]
mov r8, qword [rbp - 0x70]
mov rax, qword [rbp - 0x30]
mov rdx, qword [rbp - 0x28]
add rsp, 0x20
mov rcx, qword [rcx]
add rcx, 8
shl r8, 4
add rcx, r8
mov r8, qword [rax]
mov qword [rdx], r8
mov rax, qword [rax + 8]
mov qword [rdx + 8], rax
sub rsp, 0x20
call fcn.1401d1ccc
mov rax, qword [rbp - 0x18]
add rsp, 0x20
cmp byte [rax], 0
jne 0x1400338d5
mov rcx, qword [rbp - 0x70]
movabs rdx, 0xd1601763514b3999
movabs rax, 0xd1601763514b3998
xor rdx, rax
mov rax, rcx
add rax, rdx
mov qword [rbp - 0x78], rax
mov rdx, rcx
xor rdx, 0xffffffffffffffff
and rdx, 0xffffffffffffffff
movabs r8, 0xb4d24954b7716d35
movabs r9, 0x4b2db6ab488e92ca
xor r8, r9
movabs r9, 0x59656ab68797cc9
movabs r10, 0xfa69a95497868336
xor r9, r10
xor r8, r9
and rcx, r8
or rdx, rcx
xor rax, 0xffffffffffffffff
movabs rcx, 0x78fa0eeb1b2a598a
movabs r8, 0x8705f114e4d5a675
xor rcx, r8
xor rdx, rcx
movabs rcx, 0xb16869ce77d486f0
movabs r8, 0xabf3dec2dff41e0d
xor rcx, r8
movabs r8, 0x4d8669e7cfb8bcbf
movabs r9, 0xb279961830474340
xor r8, r9
xor rcx, r8
or rax, rdx
movabs rdx, 0x1a9bb70ca82098fd
or rcx, rdx
xor rax, 0xffffffffffffffff
and rax, rcx
cmp rax, 0
jge 0x14003396a
sub rsp, 0x20
call fcn.1400091c0
add rsp, 0x20
mov ecx, dword [0x1401f2c28]
imul ecx, dword [0x1401f2c2c]
sub ecx, 0x3068cced
mov eax, 0xffffffff
xor eax, 0x5089657
add ecx, eax
add ecx, 1
mov eax, ecx
or eax, 0xd7d62d9a
mov edx, 0xa956d226
xor edx, 0x56a92dd9
xor eax, edx
mov edx, 0xb9e9afbb
xor edx, 0x46165044
xor ecx, edx
mov edx, 0xffffffff
xor edx, 0xd7d62d9a
and ecx, edx
xor eax, 0xffffffff
xor ecx, 0xffffffff
and eax, ecx
cmp eax, 0x2faeb22d
je 0x1400339a1
mov eax, dword [0x1401f2c30]
xor edx, edx
div dword [0x1401f2c34]
mov ecx, 0xadbb0909
xor edx, edx
div ecx
imul eax, eax, 0x890a3fb8
or eax, 0x26b96bee
cmp eax, 0x1adf355b
jbe 0x140033938
jmp 0x140033977
mov rax, qword [rbp - 0x78]
mov qword [rbp - 0x68], rax
jmp 0x140033780
lea rsp, [rbp + 0x10]
pop rbp
ret
pop rdi
int1
or byte [rdi - 0x81117], bl
call [rbx + rbp*8 + 0x2be9215d]
stc
invalid
pushfq
jmp 0x1400339e6
invalid
xchg edi, eax
test dword [rax - 0x27b1693], ecx
invalid
ret
sub rsp, 0x38
mov qword [rsp + 0x30], rdx
mov qword [rsp + 0x28], rcx
xor eax, eax
mov edx, eax
call fcn.140032e90
mov rcx, qword [rsp + 0x28]
mov rdx, qword [rsp + 0x30]
add rsp, 0x38
jmp 0x140033130
push rsp
and al, 0x30
mov qword [rsp + 0x38], rcx
mov qword [rsp + 0x40], rcx
mov ecx, dword [0x1401f2c38]
mov eax, dword [0x1401f2c3c]
xor eax, 0x43a116b2
xor eax, 0xffffffff
add ecx, eax
add ecx, 1
xor eax, eax
sub eax, ecx
mov ecx, 0x910719c6
xor ecx, 0x910719c6
mov edx, 0x38c105d0
xor edx, 0x8d68028b
sub ecx, edx
add eax, ecx
xor ecx, ecx
sub ecx, eax
mov eax, ecx
or eax, 0x2b940b69
mov edx, 0xadba401b
xor edx, 0x5245bfe4
xor eax, edx
mov edx, 0x930f5598
xor edx, 0xb89b5ef1
or ecx, edx
xor ecx, 0xffffffff
xor eax, 0xffffffff
xor ecx, 0xffffffff
and eax, ecx
add eax, 0xb1f8539b
cmp eax, 0xdb24da48
jbe 0x140033b7f
mov rdx, qword [rsp + 0x30]
mov rcx, qword [rsp + 0x38]
mov r8d, dword [0x1401f2c40]
mov r10d, dword [0x1401f2c44]
mov eax, r8d
xor eax, 0xffffffff
mov r9d, r10d
and r9d, eax
mov r11d, r10d
xor r11d, 0xffffffff
mov eax, r8d
and eax, r11d
imul eax, r9d
mov r9d, r8d
and r9d, r10d
or r8d, r10d
imul r8d, r9d
add r8d, eax
xor r8d, 0xffffffff
mov r9d, 0xffffffff
xor r9d, 0xf9f0e216
mov eax, 0x1871d520
xor eax, 0xbba191fc
mov r10d, 0x85cab20a
xor r10d, 0x7a354df5
xor eax, r10d
or r8d, r9d
or eax, 0xa3d044dc
xor r8d, 0xffffffff
and r8d, eax
xor eax, eax
sub eax, 0x3785535d
add r8d, eax
mov eax, r8d
xor eax, 0xffffffff
mov r9d, 0xffffffff
xor r9d, 0xcd2d5301
and eax, r9d
mov r9d, 0xdff498ae
xor r9d, 0x12d9cbaf
or r8d, r9d
mov r9d, 0x50839d0
xor r9d, 0xfaf7c62f
xor r8d, r9d
xor eax, 0xffffffff
mov r9d, 0xac9df4a
xor r9d, 0xf53620b5
xor r8d, r9d
and eax, r8d
mov dword [rsp + 0x2c], eax
mov eax, 0xe9af8296
xor eax, 0xa23b54e9
mov dword [rsp + 0x28], eax
mov qword [rcx], 0
mov qword [rcx + 8], 0
call fcn.1400339aa
mov ecx, dword [rsp + 0x28]
mov eax, dword [rsp + 0x2c]
cmp eax, ecx
jb 0x140033a6a
mov rax, qword [rsp + 0x40]
add rsp, 0x48
ret
fcompi st(4)
invalid