Function at 0x140033560
Capabilities:
Encode data using xor

Disassembly:
push rsi
sub rsp, 0x70
mov word [rsp + 0x6e], cx
mov eax, dword [0x1401f48a0]
xor eax, 0x8fba6d77
mov edx, dword [0x1401f48a4]
mov ecx, eax
xor ecx, edx
mov r8d, 0x427866aa
xor r8d, 0xbd879955
xor ecx, r8d
or eax, edx
and eax, ecx
or eax, 0xc3d9ff26
mov r8d, 0xffffffff
xor r8d, 0x52184897
mov edx, eax
and edx, r8d
mov ecx, eax
or ecx, r8d
xor ecx, 0xffffffff
imul ecx, edx
mov edx, eax
and edx, 0x52184897
mov r8d, 0xa26f4600
xor r8d, 0xf0770e97
or eax, r8d
imul eax, edx
add eax, ecx
imul eax, eax, 0x9b89b477
mov ecx, 0x480e3905
xor ecx, 0x90b3d32d
cmp eax, ecx
jbe 0x140033ba4
mov eax, dword [0x1401f48a8]
mov ecx, dword [0x1401f48ac]
xor ecx, 0xdce6f10
add eax, ecx
mov ecx, 0x8f5efc29
xor ecx, 0x1fe997d8
and ecx, eax
mov edx, 0x35601720
xor edx, 0xca9fe8df
xor ecx, edx
add eax, 0x90b76bf1
mov edx, 0xa461ed62
xor edx, 0xa461ed63
add eax, edx
add eax, ecx
mov ecx, 0xbcac9f36
xor ecx, 0x2323c8db
sub eax, ecx
sub eax, 0x40eb3a05
add eax, 0x9f8f57ed
and eax, 0xf3a3b6ea
mov dword [rsp + 0x64], eax
mov rax, qword [0x140209370]
mov ecx, dword [rax]
call fcn.140009923
mov qword [rsp + 0x58], rax
add rax, 0x50
mov qword [rsp + 0x50], rax
mov cl, 0x31
xor cl, 0x64
call fcn.140033110
mov rcx, qword [rsp + 0x58]
mov dx, ax
mov eax, dword [rsp + 0x64]
mov word [rsp + 0x6a], dx
mov cl, byte [rcx + 0x50]
mov dl, 0x6a
xor dl, 0x6a
cmp cl, dl
sete cl
mov byte [rsp + 0x6d], cl
cmp eax, 0xae08a4b9
jae 0x140033ba4
mov ax, word [rsp + 0x6e]
mov cl, byte [rsp + 0x6d]
test cl, 1
mov word [rsp + 0x4e], ax
jne 0x1400336bc
jmp 0x140033b99
mov eax, dword [0x1401f48b0]
xor eax, 0xdfe3ef21
xor edx, edx
div dword [0x1401f48b4]
mov r8d, 0x4cc57396
xor r8d, 0xa2212ce9
mov ecx, 0x72d19daf
xor ecx, 0x8d2e6250
xor r8d, ecx
mov edx, eax
and edx, r8d
mov ecx, eax
or ecx, r8d
mov r8d, 0xbc78a043
xor r8d, 0x43875fbc
xor ecx, r8d
imul ecx, edx
mov r8d, 0xb8c0ad5a
xor r8d, 0x5624f225
mov edx, eax
and edx, r8d
mov r8d, 0x704b5a38
xor r8d, 0x9eaf0547
or eax, r8d
imul eax, edx
add eax, ecx
and eax, 0x8d55334a
mov ecx, 0x891f8fc0
xor edx, edx
div ecx
cmp eax, 0x4b8be901
je 0x140033bad
mov eax, dword [0x1401f48b8]
xor eax, 0x6e13797d
mov edx, dword [0x1401f48bc]
mov ecx, edx
and ecx, eax
xor ecx, 0xffffffff
add eax, edx
mov edx, 0x77e3aeb6
xor edx, 0x77e3aeb7
add eax, edx
add eax, ecx
mov ecx, 0x2be07fe9
xor ecx, 0x510f6256
xor edx, edx
div ecx
mov ecx, 0xaef732c2
xor ecx, 0x8ecccfec
xor eax, ecx
mov ecx, eax
and ecx, 0x2421e425
shl ecx, 1
add eax, 0x2421e425
sub eax, ecx
mov dword [rsp + 0x44], eax
mov eax, 0xbe2d4b77
xor eax, 0xde5ccbef
mov dword [rsp + 0x40], eax
mov ecx, 0xaa
call fcn.140033110
mov rdx, qword [rsp + 0x50]
mov ecx, dword [rsp + 0x40]
mov r8w, ax
mov eax, dword [rsp + 0x44]
mov word [rsp + 0x4a], r8w
cmp byte [rdx], 0
sete dl
mov byte [rsp + 0x4d], dl
cmp eax, ecx
jae 0x140033bad
mov ax, word [rsp + 0x6e]
mov cl, byte [rsp + 0x4d]
test cl, 1
mov word [rsp + 0x4e], ax
jne 0x1400337ff
jmp 0x140033b99
mov eax, dword [0x1401f48c0]
mov ecx, dword [0x1401f48c4]
mov edx, 0xc8e1f392
xor edx, 0xf63c74c9
xor ecx, edx
imul eax, ecx
mov ecx, 0x77a480a8
xor ecx, 0x9677643
imul eax, ecx
mov ecx, 0x38c2559c
xor ecx, 0xb55774c8
xor edx, edx
div ecx
mov ecx, 0x523f4753
xor edx, edx
div ecx
mov ecx, 0x5b174815
xor ecx, 0xc521a1e5
cmp eax, ecx
je 0x140033bb6
mov r8w, word [rsp + 0x6e]
mov ax, word [rsp + 0x4a]
mov dx, word [rsp + 0x6a]
mov ecx, dword [0x1401f48c8]
mov r11d, dword [0x1401f48cc]
mov r9d, 0xbaee9206
xor r9d, 0x45116df9
mov esi, r11d
xor esi, r9d
mov r10d, ecx
and r10d, esi
mov r9d, ecx
or r9d, esi
xor r9d, 0xffffffff
imul r9d, r10d
mov r10d, ecx
and r10d, r11d
or ecx, r11d
imul ecx, r10d
add ecx, r9d
add ecx, 0x34ce2786
add ecx, 0x9210e106
sub ecx, 0x34ce2786
mov r11d, 0x2d80d104
xor r11d, 0x3814384f
mov r9d, 0x85235982
xor r9d, 0x7adca67d
xor r11d, r9d
mov r10d, ecx
and r10d, r11d
mov r9d, ecx
or r9d, r11d
xor r9d, 0xffffffff
imul r9d, r10d
mov r10d, ecx
and r10d, 0x1594e94b
mov r11d, 0xf0a59c8b
xor r11d, 0xe53175c0
or ecx, r11d
imul ecx, r10d
add ecx, r9d
mov r9d, 0x53ef1339
xor r9d, 0xfb642005
imul ecx, r9d
mov dword [rsp + 0x38], ecx
and dx, r8w
mov cx, 0xc045
xor cx, 0xc044
shl dx, cl
mov cx, dx
xor ax, 0xffff
xor r8w, 0xffff
mov dx, 0xffff
xor dx, 0x7e3f
or ax, r8w
or dx, 0x7e3f
mov r8w, 0x5e02
xor r8w, 0xa1fd
xor ax, r8w
and ax, dx
shr ax, 1
and ax, ax
xor ax, 0xffff
and cx, cx
xor cx, 0xffff
xor ax, 0xffff
mov dx, 0xc09b
xor dx, 0x3f64
xor cx, dx
or ax, cx
mov word [rsp + 0x36], ax
mov cl, 0xdf
xor cl, 0xec
call fcn.140033110
mov rcx, qword [rsp + 0x50]
mov dx, ax
mov eax, dword [rsp + 0x38]
mov word [rsp + 0x3c], dx
cmp byte [rcx], 0
sete cl
mov byte [rsp + 0x3f], cl
cmp eax, 0x4cb922c3
je 0x140033bb6
mov ax, word [rsp + 0x36]
mov cl, byte [rsp + 0x3f]
test cl, 1
mov word [rsp + 0x4e], ax
jne 0x1400339d7
jmp 0x140033b99
mov eax, dword [0x1401f48d0]
xor eax, 0x5948d6a8
mov r8d, dword [0x1401f48d4]
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
mov ecx, 0x4a04c3bd
xor edx, edx
div ecx
mov ecx, 0xab8f857
xor ecx, 0x4bea867a
imul eax, ecx
mov edx, 0x1c241b6a
xor edx, 0xe3dbe495
mov ecx, eax
xor ecx, edx
and ecx, 0x4e31f49a
mov edx, 0xffffffff
xor edx, 0x4e31f49a
and eax, edx
sub eax, ecx
cmp eax, 0xefc142
jb 0x140033bbf
mov eax, dword [0x1401f48d8]
xor edx, edx
div dword [0x1401f48dc]
and eax, 0x5d6dc23b
mov ecx, 0x603a8611
xor ecx, 0x4b7eb995
add eax, ecx
mov ecx, 0x247e67e3
xor edx, edx
div ecx
mov dword [rsp + 0x2c], eax
mov cl, 0x14
xor cl, 0xd8
call fcn.140033110
mov rcx, qword [rsp + 0x50]
mov dx, ax
mov eax, dword [rsp + 0x2c]
mov word [rsp + 0x32], dx
cmp byte [rcx], 0
sete cl
mov byte [rsp + 0x35], cl
cmp eax, 0x3611958b
je 0x140033a53
mov ax, word [rsp + 0x36]
mov cl, byte [rsp + 0x35]
test cl, 1
mov word [rsp + 0x4e], ax
jne 0x140033acc
jmp 0x140033b99
mov dx, word [rsp + 0x36]
mov ax, word [rsp + 0x32]
mov r8w, word [rsp + 0x3c]
and r8w, dx
mov cx, 0xf128
xor cx, 0xf12a
shl r8w, cl
mov cx, r8w
and ax, dx
shr ax, 2
or ax, cx
mov word [rsp + 0x28], ax
mov ecx, 0xf
call fcn.140033110
mov rcx, qword [rsp + 0x50]
mov dx, ax
mov ax, word [rsp + 0x28]
mov word [rsp + 0x2a], dx
cmp byte [rcx], 0
mov word [rsp + 0x4e], ax
jne 0x140033b99
mov cl, 0xfb
xor cl, 0xb
call fcn.140033110
mov rcx, qword [rsp + 0x50]
mov dx, ax
mov ax, word [rsp + 0x28]
mov word [rsp + 0x26], dx
cmp byte [rcx], 0
mov word [rsp + 0x4e], ax
jne 0x140033b99
mov r8w, word [rsp + 0x28]
mov ax, word [rsp + 0x26]
mov dx, word [rsp + 0x2a]
and dx, r8w
mov cx, 0x9b76
xor cx, 0x9b72
shl dx, cl
mov cx, dx
mov dx, ax
xor dx, r8w
xor dx, 0xffff
xor edx, 0xffffffff
or ax, r8w
and ax, dx
shr ax, 4
or ax, cx
rol ax, 8
mov word [rsp + 0x4e], ax
mov ax, word [rsp + 0x4e]
add rsp, 0x70
pop rsi
ret
xchg esp, eax
and al, 0x40
sub eax, 0xfffa3ee9
call [rsi - 0x1662301e]
xchg ecx, eax
sti
invalid
sahf
loop 0x140033b7f
popfq
jmp 0x140033747
inc dword [rdi - 0x6a16b837]
cld
invalid
invalid