Function at 0x1400a4260
Capabilities:
Encode data using xor

Disassembly:
sub rsp, 0xc8
mov dword [rsp + 0x88], r9d
mov dword [rsp + 0x84], r8d
mov dword [rsp + 0x54], edx
mov qword [rsp + 0x58], rcx
mov al, byte [rsp + 0x118]
mov byte [rsp + 0x67], al
mov rax, qword [rsp + 0x108]
mov qword [rsp + 0x68], rax
mov rax, qword [rsp + 0x100]
mov qword [rsp + 0x70], rax
mov rax, qword [rsp + 0xf8]
mov qword [rsp + 0x78], rax
mov eax, dword [rsp + 0xf0]
mov dword [rsp + 0x8c], eax
call fcn.1400a0894
mov r8d, dword [rsp + 0x84]
mov r9d, dword [rsp + 0x88]
mov rcx, rax
mov eax, dword [rsp + 0x8c]
mov qword [rsp + 0x90], rcx
cmp r8d, 0
setne cl
cmp eax, 0
setg dl
mov byte [rsp + 0x9e], dl
mov al, cl
xor al, dl
xor al, 0xff
or cl, dl
and cl, al
mov eax, 0x115418a8
xor eax, 0x115418a8
cmp r9d, eax
setg al
mov byte [rsp + 0x9f], al
and al, cl
test al, 1
jne 0x1400a432b
jmp 0x1400a45e7
mov rax, qword [rsp + 0x68]
mov ecx, dword [rsp + 0x84]
mov edx, dword [rsp + 0x88]
mov r8, qword [rsp + 0x78]
mov r9d, dword [rsp + 0x8c]
mov r10, qword [rsp + 0x70]
mov qword [rsp + 0xa8], r10
mov dword [rsp + 0xb0], r9d
mov qword [rsp + 0xb8], r8
mov dword [rsp + 0xc0], edx
movsxd rdx, ecx
imul r8, rdx, 0x48
mov rcx, rax
add rcx, r8
add rcx, 8
imul rdx, rdx, 0x48
add rax, rdx
add rax, 0x10
mov rax, qword [rax]
mov qword [rsp + 0x40], rax
mov rcx, qword [rcx]
mov qword [rsp + 0x48], rcx
cmp rax, 0
je 0x1400a43be
mov rax, qword [rsp + 0x48]
mov rdx, qword [rsp + 0x40]
lea rcx, [rsp + 0xa8]
call rax
jmp 0x1400a450d
mov ecx, dword [0x14021b318]
mov r8d, dword [0x14021b31c]
mov r9d, r8d
xor r9d, 0xffffffff
mov edx, ecx
and edx, r9d
mov eax, ecx
or eax, r9d
xor eax, 0xffffffff
imul eax, edx
mov edx, ecx
and edx, r8d
or ecx, r8d
imul ecx, edx
add ecx, eax
mov eax, ecx
and eax, eax
mov edx, 0x8a0c572f
xor edx, 0x75f3a8d0
xor eax, edx
xor eax, 0xffffffff
mov edx, 0x789d90da
xor edx, 0x264ece0
mov r8d, 0x71a78ab6
xor r8d, 0x8e587549
xor edx, r8d
or eax, edx
mov edx, 0x7af97c3a
and edx, 0x7af97c3a
xor edx, 0xffffffff
xor ecx, 0xffffffff
mov r8d, 0x6af4e371
xor r8d, 0x950b1c8e
xor edx, r8d
or ecx, edx
mov edx, 0xcd05b9f3
xor edx, 0x32fa460c
xor eax, edx
xor ecx, 0xffffffff
or eax, ecx
and eax, 0xbe7085ab
mov ecx, 0x770790e0
xor ecx, 0x6a5fae87
xor edx, edx
div ecx
cmp eax, 0x9c06e490
jae 0x1400a4abf
mov rax, qword [rsp + 0x48]
mov edx, dword [0x14021b320]
mov r8d, dword [0x14021b324]
mov r9d, edx
xor r9d, 0xffffffff
mov ecx, r8d
and ecx, r9d
xor r8d, 0xffffffff
and edx, r8d
or ecx, edx
and ecx, 0x3e55ee8b
mov edx, 0xbbc44034
xor edx, 0x443bbfcb
xor ecx, edx
mov r8d, 0xffffffff
xor r8d, 0xf9d1d561
mov edx, 0xffffffff
xor edx, 0x299a484e
or ecx, r8d
or edx, 0x299a484e
xor ecx, 0xffffffff
and ecx, edx
add ecx, 0xe1599491
mov dword [rsp + 0x3c], ecx
mov ecx, 0xd4ee7580
xor ecx, 0xc16de34
mov dword [rsp + 0x38], ecx
lea rcx, [rsp + 0xa8]
call rax
mov ecx, dword [rsp + 0x38]
mov eax, dword [rsp + 0x3c]
cmp eax, ecx
jb 0x1400a4abf
jmp 0x1400a450d
mov ecx, dword [0x14021b328]
mov edx, dword [0x14021b32c]
mov eax, ecx
xor eax, 0xffffffff
mov r9d, 0x328e87eb
xor r9d, 0xcd717814
mov r8d, edx
xor r8d, r9d
and eax, r8d
mov r8d, 0x562decbe
xor r8d, 0xa9d21341
xor ecx, r8d
xor edx, 0xffffffff
and ecx, edx
or eax, ecx
xor eax, 0xffffffff
sub eax, 0x71aee855
sub eax, 0x9eaa5e08
add eax, 0x71aee855
add eax, 0x47405ee5
add eax, 0x4f51e8f4
cmp eax, 0x5d89c539
jb 0x1400a4ac8
mov rcx, qword [rsp + 0x90]
mov edx, dword [0x14021b330]
xor edx, 0x918aba05
mov r8d, dword [0x14021b334]
xor r8d, 0x435ad423
mov eax, edx
and eax, r8d
shl eax, 1
add edx, r8d
sub edx, eax
mov eax, edx
and eax, 0xcfc42b31
xor edx, 0xcfc42b31
or eax, edx
imul eax, eax, 0xba65e9ec
mov r8d, 0x9b25cbd6
xor edx, edx
div r8d
cmp byte [rcx], 0
sete cl
mov byte [rsp + 0x37], cl
cmp eax, 0x67c54121
jae 0x1400a4572
mov al, byte [rsp + 0x37]
test al, 1
jne 0x1400a45e7
jmp 0x1400a4ab6
mov edx, dword [rsp + 0x54]
mov rcx, qword [rsp + 0x58]
call fcn.1400386f0
mov rax, qword [rsp + 0x90]
cmp byte [rax], 0
jne 0x1400a4ab6
mov edx, dword [rsp + 0x84]
mov rcx, qword [rsp + 0x58]
call fcn.1400386f0
mov rax, qword [rsp + 0x90]
cmp byte [rax], 0
jne 0x1400a4ab6
mov al, byte [rsp + 0x67]
test al, 1
jne 0x1400a4639
jmp 0x1400a465e
mov rcx, qword [rsp + 0x58]
mov edx, 8
call fcn.1400387e3
mov rax, qword [rsp + 0x90]
cmp byte [rax], 0
je 0x1400a4686
jmp 0x1400a4ab6
mov edx, dword [rsp + 0x88]
mov rcx, qword [rsp + 0x58]
call fcn.1400386f0
mov rax, qword [rsp + 0x90]
mov al, byte [rax]
mov cl, 0x52
xor cl, 0x52
cmp al, cl
jne 0x1400a4ab6
mov eax, dword [0x14021b338]
and eax, dword [0x14021b33c]
imul eax, eax, 0x329e401c
xor eax, 0x50aeaf66
mov ecx, 0xa44e5488
xor edx, edx
div ecx
cmp eax, 0xc3eef35
jae 0x1400a4ad1
mov rcx, qword [rsp + 0x58]
mov eax, dword [0x14021b340]
mov r9d, dword [0x14021b344]
mov r10d, r9d
xor r10d, 0xffffffff
mov r8d, eax
and r8d, r10d
mov edx, eax
or edx, r10d
mov r10d, 0xf7a64934
xor r10d, 0x859b6cb
xor edx, r10d
imul edx, r8d
mov r8d, eax
and r8d, r9d
or eax, r9d
imul eax, r8d
add eax, edx
xor eax, 0x76de6499
mov r8d, 0x7493b212
xor edx, edx
div r8d
mov edx, dword [rsp + 0x8c]
add eax, 0x37257cad
mov r8d, 0x3055df2c
xor r8d, 0x695b874e
add eax, r8d
sub eax, 0x37257cad
mov dword [rsp + 0x30], eax
mov eax, 0x44f388c3
xor eax, 0x930799e1
mov dword [rsp + 0x2c], eax
call fcn.1400386f0
mov rdx, qword [rsp + 0x90]
mov ecx, dword [rsp + 0x2c]
mov eax, dword [rsp + 0x30]
mov dl, byte [rdx]
mov r8b, 0x79
xor r8b, 0x79
cmp dl, r8b
sete dl
mov byte [rsp + 0x36], dl
cmp eax, ecx
ja 0x1400a46b1
mov al, byte [rsp + 0x36]
test al, 1
jne 0x1400a477c
jmp 0x1400a4ab6
mov al, byte [rsp + 0x67]
test al, 1
jne 0x1400a478d
jmp 0x1400a4823
lea rcx, [rsp + 0xa0]
mov edx, 8
call fcn.1400a4aec
movabs r8, 0x868036cd72c4cd6f
movabs rax, 0x868036cd72c4cd67
xor r8, rax
lea rcx, [rsp + 0xa0]
mov rdx, qword [0x14022dd10]
call fcn.1400a4b90
mov rcx, qword [rsp + 0x58]
lea rdx, [rsp + 0xa0]
mov r8d, 8
call fcn.1400383d0
mov rax, qword [rsp + 0x90]
mov dl, byte [rsp + 0x9e]
cmp byte [rax], 0
sete cl
mov al, cl
xor al, 0xff
mov r8b, dl
xor r8b, 0xff
or al, r8b
xor cl, 0xff
xor dl, 0xff
or cl, dl
and al, cl
mov cl, 1
xor cl, 0
xor al, cl
test al, 1
jne 0x1400a4a9b
jmp 0x1400a4ab6
mov ecx, dword [0x14021b348]
or ecx, dword [0x14021b34c]
mov eax, ecx
add eax, 1
mov edx, 0xe997a638
xor edx, 0x166859c7
xor ecx, edx
mov edx, 0x39681bd3
xor edx, 0xa9a69d3e
or ecx, edx
add ecx, eax
mov eax, ecx
xor eax, 0xffffffff
and eax, 0xa86d2815
mov edx, 0xffffffff
xor edx, 0xa86d2815
and ecx, edx
or eax, ecx
mov r8d, 0xffffffff
xor r8d, 0xc71fdc53
mov edx, eax
and edx, r8d
mov ecx, eax
or ecx, r8d
xor ecx, 0xffffffff
imul ecx, edx
mov edx, eax
and edx, 0xc71fdc53
mov r8d, 0xc18ea181
xor r8d, 0x6917dd2
or eax, r8d
imul eax, edx
add eax, ecx
cmp eax, 0x8be485e3
je 0x1400a4ada
mov eax, dword [0x14021b350]
mov edx, dword [0x14021b354]
mov ecx, eax
and ecx, edx
shl ecx, 1
add eax, edx
sub eax, ecx
mov ecx, 0x73c9985
xor ecx, 0xa6e621fb
and eax, ecx
mov ecx, 0x4689a819
xor edx, edx
div ecx
mov ecx, eax
mov eax, ecx
xor eax, 0xffffffff
mov edx, ecx
xor edx, 0xffffffff
or eax, edx
and eax, 0xe869c8cb
xor eax, 0xffffffff
mov edx, 0x3e4f3486
xor edx, 0xd626fc4d
mov r8d, 0xf1db8e85
xor r8d, 0xe24717a
xor edx, r8d
mov r8d, 0xffffffff
xor r8d, 0xe869c8cb
or edx, r8d
and ecx, edx
xor ecx, 0xffffffff
and eax, ecx
mov ecx, 0x32dd595b
xor ecx, 0xcd22a6a4
xor eax, ecx
cmp eax, 0xf98367fc
je 0x1400a4ada
mov al, byte [rsp + 0x9f]
test al, 1
jne 0x1400a494f
jmp 0x1400a499f
mov rdx, qword [rsp + 0x78]
mov rcx, qword [rsp + 0x58]
mov eax, dword [rsp + 0x88]
mov eax, eax
mov r8d, eax
call fcn.1400383d0
mov rcx, qword [rsp + 0x90]
mov al, byte [rsp + 0x9e]
cmp byte [rcx], 0
sete dl
xor al, 0xff
xor dl, 0xff
mov cl, 1
xor cl, 1
or al, dl
or cl, 1
xor al, 0xff
and al, cl
test al, 1
jne 0x1400a4a9b
jmp 0x1400a4ab6
mov ecx, dword [0x14021b358]
mov edx, dword [0x14021b35c]
mov r8d, ecx
xor r8d, 0xffffffff
mov eax, edx
and eax, r8d
xor edx, 0xffffffff
and ecx, edx
or eax, ecx
mov edx, 0xffffffff
xor edx, 0x6af22d9f
mov ecx, eax
and ecx, edx
mov edx, eax
xor edx, 0x6af22d9f
add eax, edx
sub eax, ecx
mov ecx, 0x5fcb5f97
xor ecx, 0x66647c01
or eax, ecx
mov ecx, 0x573d9778
xor edx, edx
div ecx
mov ecx, 0xc1815297
xor ecx, 0xca60f697
cmp eax, ecx
jae 0x1400a4ae3
mov eax, dword [0x14021b360]
xor edx, edx
div dword [0x14021b364]
mov ecx, 0xd5aefc8d
xor ecx, 0xa27eb08e
xor edx, edx
div ecx
mov ecx, 0xdabddd06
xor ecx, 0x254222f9
xor eax, ecx
mov ecx, 0x91b45eb0
xor ecx, 0x24ad4f83
mov edx, 0xa0bcb608
xor edx, 0x5f4349f7
xor ecx, edx
mov edx, 0xfb8ac1d9
xor edx, 0x6d5e8653
mov r8d, 0xcdff685b
xor r8d, 0x320097a4
xor edx, r8d
or eax, ecx
mov ecx, 0xeb561373
xor ecx, 0x7d8254f9
or ecx, edx
xor eax, 0xffffffff
and eax, ecx
mov ecx, 0x95d14752
xor edx, edx
div ecx
cmp eax, 0xe9c47e9
je 0x1400a4a02
mov al, byte [rsp + 0x9e]
test al, 1
jne 0x1400a4a9b
jmp 0x1400a4ab6
mov rdx, qword [rsp + 0x70]
mov rcx, qword [rsp + 0x58]
mov eax, dword [rsp + 0x8c]
mov eax, eax
mov r8d, eax
call fcn.1400383d0
nop
add rsp, 0xc8
ret
cmp al, 0x43
int 0xbe
jmp 0x1400a4474
pop rcx
invalid
sub byte [rbx + 0x52], ah
push rbp
jmp 0x1400a46b1
mov eax, 0xe98e4a0f
retf
invalid