Function at 0x140029f40
Capabilities:
Encode data using xor

Disassembly:
push rsi
push rdi
sub rsp, 0x68
mov qword [rsp + 0x58], rdx
mov qword [rsp + 0x60], rcx
mov eax, dword [0x1401c9468]
mov ecx, dword [0x1401c946c]
xor eax, 0xffffffff
xor ecx, 0xffffffff
mov edx, 0xffffffff
xor edx, 0xe1fcb1c2
or eax, ecx
mov ecx, 0x46d303f6
xor ecx, 0xa72fb234
or ecx, edx
xor eax, 0xffffffff
and eax, ecx
mov ecx, 0x5aed568e
xor ecx, 0x5aed568e
mov edx, 0xb9a49789
xor edx, 0xa95c6b19
sub ecx, edx
add eax, ecx
mov ecx, 0x86489e4a
xor ecx, 0x47cfe07b
xor edx, edx
div ecx
mov edx, 0xa3dfcb45
xor edx, 0x1bbf4f3b
mov ecx, 0xb9e022c2
xor ecx, 0x461fdd3d
xor edx, ecx
mov ecx, eax
and ecx, edx
mov edx, eax
xor edx, 0xb860847e
add eax, edx
sub eax, ecx
cmp eax, 0xd6b8ec97
ja 0x14002a59c
mov rdx, qword [rsp + 0x60]
mov ecx, dword [0x1401c9470]
mov eax, dword [0x1401c9474]
xor eax, 0x427056c0
add ecx, eax
mov eax, 0xf0560c80
xor eax, 0xbed78eb7
sub ecx, eax
mov r8d, 0x6c4cc62c
xor r8d, 0x2c8cd8f5
mov eax, 0xbca7ed92
xor eax, 0x4358126d
xor r8d, eax
mov eax, ecx
and eax, r8d
mov r9d, 0xe5b67a4a
xor r9d, 0xa5766493
mov r8d, ecx
xor r8d, r9d
add ecx, r8d
sub ecx, eax
mov r8d, 0x21d0b69b
xor r8d, 0xde2f4964
mov eax, ecx
xor eax, r8d
mov r8d, ecx
xor r8d, 0xffffffff
or eax, r8d
xor eax, 0xffffffff
mov r8d, 0xffffffff
xor r8d, 0xbb6d178b
or eax, r8d
mov r8d, 0x977fcb0d
xor r8d, 0x2c12dc86
mov r9d, 0x3afa6000
xor r9d, 0xc5059fff
xor r8d, r9d
mov r9d, 0xffffffff
xor r9d, 0xbb6d178b
or r8d, r9d
and ecx, r8d
xor ecx, 0xffffffff
xor eax, 0xffffffff
xor ecx, 0xffffffff
or eax, ecx
mov ecx, 0x94620554
xor ecx, 0x28276dfa
mov r9, qword [rdx]
xor edx, edx
mov r8d, edx
sub r8, r9
movabs rdx, 0x8a594d628792c1ec
movabs r10, 0x8a594d628792c1ec
xor rdx, r10
movabs r10, 0x97a1fcdfae2d7bc2
movabs r11, 0x685e032051d2843d
xor r10, r11
sub rdx, r10
add r8, rdx
movabs rdx, 0x6fc5b45a232d7829
movabs r10, 0x6fc5b45a232d7829
xor rdx, r10
sub rdx, r8
mov qword [rsp + 0x48], rdx
mov r8, rdx
xor r8, r9
cmp r8, 0
setl r9b
cmp rdx, 0xffffffffffffffff
setg dl
mov r8b, dl
xor r8b, r9b
xor r10d, r10d
xor r10b, 1
xor r8b, r10b
or dl, r9b
and dl, r8b
mov byte [rsp + 0x57], dl
cmp eax, ecx
jae 0x140029fdd
mov al, byte [rsp + 0x57]
test al, 1
jne 0x14002a170
jmp 0x14002a153
mov rax, qword [rsp + 0x48]
mov rcx, qword [rsp + 0x60]
add rcx, 8
mov qword [rsp + 0x38], rcx
mov qword [rsp + 0x40], rax
jmp 0x14002a17a
call fcn.140008024
jmp 0x14002a595
mov rcx, qword [rsp + 0x58]
mov rax, qword [rsp + 0x40]
mov qword [rsp + 0x30], rax
cmp rax, rcx
jl 0x14002a588
mov eax, dword [0x1401c9478]
mov edx, dword [0x1401c947c]
mov r8d, eax
xor r8d, 0xffffffff
mov ecx, edx
and ecx, r8d
xor edx, 0xffffffff
and eax, edx
or ecx, eax
mov edx, 0x7e992f84
xor edx, 0x8166d07b
mov eax, ecx
xor eax, edx
and eax, 0x2cc7a34f
mov edx, 0xffffffff
xor edx, 0x2cc7a34f
and ecx, edx
or eax, ecx
mov ecx, eax
xor ecx, 0xffffffff
and ecx, 0x17a085b1
mov edx, 0xcab5bc60
xor edx, 0xdd1539d1
mov r8d, 0xafd54264
xor r8d, 0x502abd9b
xor edx, r8d
and eax, edx
sub eax, ecx
mov ecx, 0x5320e59a
xor ecx, 0xf2e73f06
sub eax, ecx
mov ecx, 0x62b337d
xor ecx, 0x97b67efa
cmp eax, ecx
ja 0x14002a5a5
mov rcx, qword [rsp + 0x30]
mov eax, dword [0x1401c9480]
add eax, dword [0x1401c9484]
sub eax, 0xb8092a1c
xor edx, edx
sub edx, eax
xor eax, eax
sub eax, 0x1d758f97
add edx, eax
xor eax, eax
sub eax, edx
mov edx, 0x6fdd8d39
xor edx, 0xd46e588e
sub eax, edx
movabs rdx, 0xc5dd9a55a7418146
movabs r8, 0xc5dd9a55a7418146
xor rdx, r8
cmp rcx, rdx
setl cl
mov byte [rsp + 0x2f], cl
cmp eax, 0x2c23a236
jb 0x14002a21e
mov al, byte [rsp + 0x2f]
test al, 1
jne 0x14002a3f2
jmp 0x14002a28f
mov eax, dword [0x1401c9488]
and eax, dword [0x1401c948c]
mov ecx, eax
or ecx, ecx
xor ecx, 0xffffffff
mov edx, 0x8fbc5e96
or edx, 0x8fbc5e96
xor edx, 0xffffffff
or ecx, edx
xor ecx, 0xffffffff
xor eax, 0xffffffff
mov edx, 0xffffffff
xor edx, 0x8fbc5e96
and eax, edx
mov edx, 0x8df8649e
xor edx, 0x72079b61
xor ecx, edx
xor eax, 0xffffffff
and ecx, eax
mov eax, ecx
xor eax, 0xffffffff
and eax, 0x6de44615
mov edx, 0xffffffff
xor edx, 0x6de44615
and ecx, edx
or eax, ecx
mov ecx, 0x79e8119
xor ecx, 0xa556e0ce
mov edx, 0x383b8db3
xor edx, 0xc7c4724c
xor ecx, edx
add eax, ecx
add eax, 1
cmp eax, 0xeebd1e90
je 0x14002a5ae
mov rcx, qword [rsp + 0x30]
mov rdx, qword [rsp + 0x60]
mov eax, dword [0x1401c9490]
mov r9d, dword [0x1401c9494]
mov r8d, r9d
and r8d, eax
xor r8d, 0xffffffff
add eax, r9d
add eax, 1
add eax, r8d
xor r8d, r8d
sub r8d, 0x1b786483
add eax, r8d
mov r8d, 0xa6c30da5
xor r8d, 0xd59586d1
mov edi, eax
and edi, r8d
xor eax, 0x73568b74
or edi, eax
mov r8d, edi
xor r8d, 0xffffffff
mov r9d, 0xffffffff
xor r9d, 0x8cc40a04
mov r10d, 0xffffffff
xor r10d, 0x66bb524d
mov eax, r8d
and eax, 0x66bb524d
and edi, r10d
mov r11d, r9d
and r11d, 0x66bb524d
mov esi, r10d
and esi, 0x8cc40a04
or eax, edi
or r11d, esi
xor eax, r11d
or r8d, r9d
xor r8d, 0xffffffff
mov r9d, 0x2dcf2b26
xor r9d, 0x4b74796b
or r9d, r10d
and r8d, r9d
or eax, r8d
cmp rcx, qword [rdx]
setl cl
mov byte [rsp + 0x2e], cl
cmp eax, 0xb9f9c5bd
jb 0x14002a318
mov al, byte [rsp + 0x2e]
test al, 1
jne 0x14002a4f3
jmp 0x14002a3f2
mov ecx, dword [0x1401c9498]
mov edx, dword [0x1401c949c]
mov eax, ecx
and eax, edx
or ecx, edx
add eax, ecx
mov ecx, 0x99ceb9a0
xor ecx, 0xed5822e7
sub eax, ecx
sub eax, 0xe2670c5e
mov ecx, 0x926157c
xor ecx, 0x7db08e3b
add eax, ecx
mov r8d, 0xffffffff
xor r8d, 0xb099cdc
mov edx, eax
and edx, r8d
mov ecx, eax
or ecx, r8d
xor ecx, 0xffffffff
imul ecx, edx
mov edx, eax
and edx, 0xb099cdc
or eax, 0xb099cdc
imul eax, edx
add eax, ecx
mov ecx, eax
xor ecx, 0xffffffff
and ecx, 0x40d4229c
mov edx, 0xc9a08557
xor edx, 0x8974a7cb
mov r8d, 0x69c9cd50
xor r8d, 0x963632af
xor edx, r8d
and eax, edx
sub eax, ecx
mov ecx, 0x52b9b6c6
xor ecx, 0xbe3f7371
cmp eax, ecx
je 0x14002a5b7
mov edx, dword [0x1401c94a0]
mov eax, dword [0x1401c94a4]
xor eax, 0x85a6a472
mov ecx, edx
xor ecx, eax
xor eax, 0xffffffff
and edx, eax
mov eax, 0x572026fa
xor eax, 0x572026f8
imul eax, edx
sub eax, ecx
imul eax, eax, 0xfc7aef16
sub eax, 0x2079bf8c
mov ecx, 0x2f8cd05d
xor ecx, 0xd8ab5e98
imul eax, ecx
mov dword [rsp + 0x28], eax
mov rcx, rdx
call fcn.1400122ad
mov eax, dword [rsp + 0x28]
cmp eax, 0xbbac857f
jae 0x14002a491
jmp 0x14002a595
mov rax, qword [rsp + 0x30]
mov rcx, qword [rsp + 0x38]
mov rcx, qword [rcx]
add rcx, 8
shl rax, 3
add rcx, rax
call fcn.140029df0
mov rcx, qword [rsp + 0x30]
mov rax, rcx
add rax, 0xffffffffffffffff
mov rdx, rax
xor rdx, rcx
movabs r8, 0x7378cf6a4655f068
movabs r9, 0x7378cf6a4655f068
xor r8, r9
cmp rdx, r8
setl r8b
cmp rcx, 0
setne dl
mov cl, dl
and cl, r8b
xor cl, 0xff
and dl, r8b
xor r8d, r8d
xor r8b, 1
xor dl, r8b
xor cl, 0xff
xor r8d, r8d
xor r8b, 1
xor dl, r8b
or cl, dl
test cl, 1
mov qword [rsp + 0x40], rax
jne 0x14002a57e
jmp 0x14002a17a
call fcn.140008024
jmp 0x14002a595
mov rax, qword [rsp + 0x60]
mov rcx, qword [rsp + 0x58]
mov qword [rax], rcx
add rsp, 0x68
pop rdi
pop rsi
ret
invalid
xor bh, byte [rbx + rsi*2 - 0x38f1610]
invalid
and eax, 0xe92d241f
invalid
in eax, dx
invalid