Function at 0x14005d380
Capabilities:
Encode data using xor

Disassembly:
push rbp
push rsi
sub rsp, 0x108
lea rbp, [rsp + 0x80]
mov qword [rbp + 0x80], rcx
mov ecx, dword [0x1401da9d0]
mov edx, dword [0x1401da9d4]
mov eax, ecx
and eax, edx
xor ecx, edx
or eax, ecx
mov ecx, 0x1fc0b13a
xor edx, edx
div ecx
sub eax, 0x2a2fa031
xor eax, 0x16c4ecbc
cmp eax, 0x32507f46
jbe 0x14005ddd2
mov ecx, dword [0x1401da9d8]
mov eax, dword [0x1401da9dc]
sub ecx, eax
and ecx, 0x64f73f27
mov edx, ecx
not edx
or edx, 0xdb64627
mov eax, ecx
mov ecx, edx
lea eax, [rax + rcx + 1]
mov ecx, eax
not ecx
mov edx, eax
and edx, 0xd05de4e
and ecx, 0xf2fa21b1
imul ecx, edx
mov edx, eax
and edx, 0xf2fa21b1
or eax, 0xf2fa21b1
imul eax, edx
add eax, ecx
mov dword [rbp + 0x78], eax
mov eax, 0x10
mov qword [rbp + 0x40], rax
call fcn.1401d7280
sub rsp, rax
mov rax, qword [rbp + 0x40]
mov rcx, rsp
mov qword [rbp + 0x58], rcx
call fcn.1401d7280
sub rsp, rax
mov rax, qword [rbp + 0x40]
mov rcx, rsp
mov qword [rbp + 0x60], rcx
call fcn.1401d7280
sub rsp, rax
mov rax, qword [rbp + 0x40]
mov rcx, rsp
mov qword [rbp + 0x48], rcx
call fcn.1401d7280
sub rsp, rax
mov rax, rsp
mov qword [rbp + 0x50], rax
sub rsp, 0x20
call fcn.140043a70
mov rcx, qword [rbp + 0x58]
mov r8, qword [rbp + 0x60]
add rsp, 0x20
mov rdx, rax
mov rax, qword [rbp + 0x80]
mov qword [rbp + 0x68], rdx
mov qword [rcx], 0
mov rdx, rcx
add rdx, 8
mov qword [rbp + 0x70], rdx
mov qword [rcx + 8], 0
mov rcx, qword [rax]
movabs rdx, 0xbaa357419f45a1d6
movabs rax, 0xbaa357419f45a1d4
xor rdx, rax
sub rsp, 0x20
call fcn.140044e80
add rsp, 0x20
mov cl, al
mov eax, dword [rbp + 0x78]
mov byte [rbp + 0x7f], cl
cmp eax, 0x7785618b
jbe 0x14005ddd2
mov al, byte [rbp + 0x7f]
test al, 1
jne 0x14005d4f2
jmp 0x14005d5e7
mov eax, dword [0x1401da9e0]
mov r8d, dword [0x1401da9e4]
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, 0xb5712c23
xor ecx, 0xb5712c23
sub ecx, eax
xor eax, eax
sub eax, 0xa0a4c929
add ecx, eax
xor eax, eax
sub eax, ecx
mov ecx, 0xfb78bb74
xor ecx, 0xc87bc6ee
xor edx, edx
div ecx
mov ecx, 0x5a47a0b5
xor ecx, 0xc3a5fb13
add eax, ecx
add eax, 0xf2deb00c
sub eax, 0x99e25ba6
cmp eax, 0xf6d83606
ja 0x14005dddb
mov eax, dword [0x1401da9e8]
xor eax, 0xaf8c3657
mov ecx, dword [0x1401da9ec]
mov edx, 0x159d36b2
xor edx, 0x5ead72e3
xor ecx, edx
and eax, ecx
add eax, 0xe1d5d56c
mov ecx, eax
add ecx, 1
xor eax, 0xffffffff
mov edx, 0xc7d8d49d
xor edx, 0x3aa255b1
or eax, edx
add eax, ecx
mov ecx, eax
and ecx, 0x25eeec90
shl ecx, 1
mov edx, 0x1cd526a1
xor edx, 0x393bca31
add eax, edx
sub eax, ecx
mov dword [rbp + 0x3c], eax
sub rsp, 0x20
call fcn.140007bb8
mov eax, dword [rbp + 0x3c]
add rsp, 0x20
cmp eax, 0x4e9e24db
je 0x14005dddb
jmp 0x14005ddc8
mov rax, qword [rbp + 0x60]
mov rax, qword [rax]
mov qword [rbp + 0x30], rax
cmp rax, 0
jge 0x14005d640
mov rcx, qword [rbp + 0x30]
movabs rdx, 0x68b3ced0d89f3b38
movabs rax, 0x68b3ced0d89f3b38
xor rdx, rax
movabs r8, 0x3848592829567a8e
movabs rax, 0x47b7a6d7d6a98571
xor r8, rax
sub rsp, 0x20
call fcn.14000c4b0
add rsp, 0x20
jmp 0x14005ddc8
mov rcx, qword [rbp + 0x58]
mov rdx, qword [rbp + 0x30]
sub rsp, 0x20
call fcn.14001793b
mov r10, qword [rbp + 0x80]
mov r8, qword [rbp + 0x58]
mov rcx, qword [rbp + 0x70]
mov rax, qword [rbp + 0x48]
add rsp, 0x20
mov r9, qword [r10]
mov qword [rbp + 0x10], r9
mov rdx, r10
add rdx, 8
mov qword [rbp + 0x18], rdx
mov rdx, qword [r10 + 8]
mov r11, qword [r8]
mov qword [r10], r11
mov r11, qword [r8 + 8]
mov qword [r10 + 8], r11
mov qword [r8], r9
mov qword [rcx], rdx
add rax, 8
mov qword [rbp + 0x20], rax
xor eax, eax
mov qword [rbp + 0x28], rax
mov rcx, qword [rbp + 0x10]
mov rax, qword [rbp + 0x28]
mov qword [rbp + 8], rax
cmp rax, rcx
jge 0x14005dda5
mov rcx, qword [rbp + 8]
mov rdx, qword [rbp + 0x58]
test rcx, rcx
setns al
mov rdx, qword [rdx]
mov qword [rbp], rdx
sub rcx, rdx
setl cl
and al, cl
test al, 1
jne 0x14005d6fd
mov rcx, qword [rbp + 8]
mov rdx, qword [rbp]
xor eax, eax
sub rax, 0xffffffffffffffff
sub rdx, rax
sub rsp, 0x20
call fcn.140012270
add rsp, 0x20
jmp 0x14005ddc8
mov rax, qword [rbp + 0x68]
mov rdx, qword [rbp + 8]
mov rcx, qword [rbp + 0x70]
mov rcx, qword [rcx]
shl rdx, 5
mov rcx, qword [rcx + rdx + 8]
mov qword [rbp - 0x10], rcx
test rcx, rcx
sete cl
mov al, byte [rax]
test al, al
setne al
mov byte [rbp - 1], al
or al, cl
test al, 1
jne 0x14005dd17
mov rcx, qword [rbp - 0x10]
mov rax, qword [rbp + 0x80]
mov rax, qword [rax]
add rax, 0xffffffffffffffff
and rax, rcx
mov qword [rbp - 0x18], rax
mov rax, qword [rbp - 0x18]
mov qword [rbp - 0x20], rax
mov ecx, dword [0x1401da9f0]
mov eax, dword [0x1401da9f4]
sub ecx, 0x77beca3a
sub ecx, eax
mov eax, 0x50cfa618
xor eax, 0x27716c22
add ecx, eax
mov eax, 0x486c9f93
xor eax, 0xb793606c
xor ecx, eax
mov eax, 0xffffffff
xor eax, 0x5980d8ea
mov edx, 0xffffffff
xor edx, 0x83cd8753
or ecx, eax
mov eax, 0x3908ffa0
xor eax, 0xbac578f3
or eax, edx
xor ecx, 0xffffffff
and ecx, eax
mov edx, 0xffffffff
xor edx, 0xf151dd62
mov eax, ecx
and eax, edx
mov edx, ecx
xor edx, 0xf151dd62
add ecx, edx
sub ecx, eax
mov eax, ecx
xor eax, 0xffffffff
mov edx, 0x4b035e77
xor edx, 0xc05cbd43
mov r8d, 0x1bdb4603
xor r8d, 0xe424b9fc
xor edx, r8d
and eax, edx
or ecx, 0x8b5fe334
xor ecx, 0xffffffff
xor eax, 0xffffffff
xor ecx, 0xffffffff
and eax, ecx
cmp eax, 0x296b6a9c
jb 0x14005dde4
mov r8, qword [rbp - 0x20]
mov r9, qword [rbp + 0x80]
mov eax, dword [0x1401da9f8]
xor eax, 0x106e8ad9
mov ecx, dword [0x1401da9fc]
add eax, ecx
and eax, 0xc0035401
imul eax, eax, 0x9573e1b0
mov ecx, 0xde708357
test r8, r8
setns dl
mov r9, qword [r9]
mov qword [rbp - 0x30], r9
sub r8, r9
setl r8b
and dl, r8b
mov byte [rbp - 0x21], dl
cmp eax, ecx
je 0x14005d801
mov al, byte [rbp - 0x21]
test al, 1
jne 0x14005d899
jmp 0x14005d861
mov rcx, qword [rbp - 0x20]
mov rdx, qword [rbp - 0x30]
movabs rax, 0xe0cbf35633bc4b2b
add rdx, rax
add rdx, 0xffffffffffffffff
movabs rax, 0xe0cbf35633bc4b2b
sub rdx, rax
sub rsp, 0x20
call fcn.140012270
add rsp, 0x20
jmp 0x14005ddc8
mov ecx, dword [0x1401daa00]
add ecx, dword [0x1401daa04]
mov eax, 0x845a3d4a
xor eax, 0x7208f16b
and ecx, eax
mov edx, 0xb1d6870c
xor edx, 0xacbcbdea
mov eax, ecx
and eax, edx
mov edx, 0xa2cd155f
xor edx, 0xbfa72fb9
or ecx, edx
add eax, ecx
mov ecx, 0x80650b71
xor ecx, 0x86ada87b
or eax, ecx
cmp eax, 0x124b6797
jbe 0x14005dded
mov r8, qword [rbp - 0x20]
mov rdx, qword [rbp + 0x18]
mov r9d, dword [0x1401daa08]
mov ecx, dword [0x1401daa0c]
mov eax, 0xf0e28f30
xor eax, 0x887344ce
xor ecx, eax
mov r10d, 0x74f12498
xor r10d, 0x8b0edb67
mov eax, r9d
xor eax, r10d
xor r9d, 0xffffffff
or eax, r9d
and ecx, ecx
xor ecx, 0xffffffff
xor eax, 0xffffffff
xor ecx, 0xffffffff
or eax, ecx
mov r9d, 0xda6f3082
xor r9d, 0xb95d95de
mov ecx, eax
xor ecx, r9d
xor ecx, 0xffffffff
and ecx, 0x6332a55c
shl ecx, 1
mov r9d, 0xe9ce4350
xor r9d, 0x8afce60c
sub ecx, r9d
sub eax, ecx
mov ecx, 0x3d8f6c38
xor ecx, 0x490636ec
xor eax, ecx
sub eax, 0xfe0d16e4
mov ecx, 0x4e29e152
xor ecx, 0xdd73afb8
mov rdx, qword [rdx]
add rdx, 8
shl r8, 5
add rdx, r8
cmp qword [rdx], 0
sete dl
mov byte [rbp - 0x31], dl
cmp eax, ecx
jb 0x14005d8e7
mov al, byte [rbp - 0x31]
test al, 1
jne 0x14005d9fb
jmp 0x14005d9ac
mov rcx, qword [rbp - 0x20]
mov rdx, qword [rbp - 0x30]
movabs rax, 0x672a7896bc7ee0c2
sub rdx, rax
add rdx, 0xffffffffffffffff
movabs rax, 0x672a7896bc7ee0c2
add rdx, rax
sub rsp, 0x20
call fcn.140044fc0
mov rcx, qword [rbp + 0x68]
add rsp, 0x20
mov cl, byte [rcx]
mov dl, 0xd2
xor dl, 0xd2
cmp cl, dl
mov qword [rbp - 0x18], rax
je 0x14005d74c
jmp 0x14005ddc8
mov rax, qword [rbp + 8]
mov rcx, qword [rbp + 0x58]
mov rcx, qword [rcx]
mov qword [rbp - 0x40], rcx
cmp rax, rcx
jl 0x14005db62
mov r8d, dword [0x1401daa10]
xor r8d, dword [0x1401daa14]
mov ecx, 0x656023b4
xor ecx, 0x9a9fdc4b
mov eax, r8d
xor eax, ecx
and eax, 0xc6a373ad
mov edx, 0xffffffff
xor edx, 0xc6a373ad
and r8d, edx
mov ecx, 0xffffffff
xor ecx, 0x96b69a1c
and ecx, 0xc6a373ad
and edx, 0x96b69a1c
or eax, r8d
or ecx, edx
xor eax, ecx
xor ecx, ecx
sub ecx, eax
mov eax, 0xc046689a
xor eax, 0xc046689a
mov edx, 0xafebce7b
xor edx, 0x32568161
sub eax, edx
add ecx, eax
xor eax, eax
sub eax, ecx
mov ecx, 0xa643b2d0
xor ecx, 0x8673bdeb
xor eax, ecx
cmp eax, 0x7a47ede6
jbe 0x14005ddf6
mov rcx, qword [rbp + 8]
mov esi, dword [0x1401daa18]
mov r11d, dword [0x1401daa1c]
mov edx, esi
xor edx, 0xffffffff
mov eax, 0x8a6a0e3a
xor eax, 0x7595f1c5
mov r9d, r11d
xor r9d, eax
mov r8d, 0xffffffff
xor r8d, 0x793fecf
mov eax, edx
and eax, 0x793fecf
and esi, r8d
mov r10d, r9d
and r10d, 0x793fecf
and r11d, r8d
or eax, esi
or r10d, r11d
xor eax, r10d
or edx, r9d
xor edx, 0xffffffff
or r8d, 0x793fecf
and edx, r8d
or eax, edx
mov edx, 0xa4a0e124
xor edx, 0x4433d715
xor eax, edx
xor edx, edx
sub edx, 0xbfcd83d9
add eax, edx
mov r8d, 0xdf8af0a5
xor edx, edx
div r8d
mov rdx, qword [rbp - 0x40]
mov dword [rbp - 0x44], eax
movabs rax, 0xd5eb1bbbbdf8271d
movabs r8, 0x2a14e4444207d8e2
xor rax, r8
add rdx, rax
sub rsp, 0x20
call fcn.140012270
mov eax, dword [rbp - 0x44]
add rsp, 0x20
cmp eax, 0xa32e9533
ja 0x14005ddf6
jmp 0x14005ddc8
mov rax, qword [rbp + 8]
mov rcx, qword [rbp + 0x70]
mov rcx, qword [rcx]
add rcx, 8
shl rax, 5
add rcx, rax
add rcx, 8
mov rax, qword [rcx]
mov qword [rbp - 0x60], rax
mov rax, qword [rcx + 8]
mov qword [rbp - 0x58], rax
sub rsp, 0x20
call fcn.14000fb15
mov rcx, qword [rbp + 0x58]
mov rax, qword [rbp + 8]
add rsp, 0x20
mov rcx, qword [rcx]
mov qword [rbp - 0x50], rcx
cmp rax, rcx
jl 0x14005dbce
mov rcx, qword [rbp + 8]
mov rdx, qword [rbp - 0x50]
add rdx, 0xffffffffffffffff
sub rsp, 0x20
call fcn.140012270
add rsp, 0x20
jmp 0x14005ddc8
mov rsi, qword [rbp - 0x60]
mov rax, qword [rbp + 8]
mov rcx, qword [rbp + 0x70]
mov rcx, qword [rcx]
add rcx, 8
shl rax, 5
add rcx, rax
add rcx, 0x18
mov rax, qword [rcx]
mov qword [rbp - 0x68], rax
sub rsp, 0x20
call fcn.140024e25
mov r11, qword [rbp - 0x58]
mov rcx, qword [rbp + 0x20]
mov rdx, qword [rbp + 0x80]
mov r8, qword [rbp + 0x48]
mov r9, qword [rbp - 0x68]
mov r10, qword [rbp - 0x10]
mov rax, qword [rbp - 0x20]
add rsp, 0x20
mov qword [r8], rsi
mov qword [rcx], r11
sub rsp, 0x30
mov qword [rsp + 0x20], r10
mov qword [rsp + 0x28], rax
call fcn.14005d110
mov rax, qword [rbp + 0x68]
add rsp, 0x30
cmp byte [rax], 0
jne 0x14005ddc8
mov rax, qword [rbp - 0x58]
cmp rax, 0
je 0x14005dd35
mov rax, qword [rbp - 0x58]
mov rcx, qword [rax]
mov rax, rcx
xor rax, 0xffffffffffffffff
movabs rdx, 0xc8e22695637eb4d7
movabs r8, 0x88e22695637eb4d7
xor rdx, r8
movabs r8, 0x2ef8689fb5e706bb
movabs r9, 0xd10797604a18f944
xor r8, r9
xor rdx, r8
or rax, rdx
movabs rdx, 0x4000000000000000
and rcx, rdx
movabs rdx, 0x9d6833780a065466
movabs r8, 0x6297cc87f5f9ab99
xor rdx, r8
xor rcx, rdx
movabs rdx, 0xc56300200f18da80
movabs r8, 0x3a9cffdff0e7257f
xor rdx, r8
xor rax, rdx
movabs rdx, 0x7cd299b856f10adf
movabs r8, 0x832d6647a90ef520
xor rdx, r8
xor rcx, rdx
or rax, rcx
cmp rax, 0
jne 0x14005dd35
mov rcx, qword [rbp - 0x58]
sub rsp, 0x20
call fcn.14000de03
add rsp, 0x20
jmp 0x14005dd35
mov rcx, qword [rbp + 8]
mov dl, byte [rbp - 1]
xor eax, eax
test dl, 1
mov qword [rbp - 0x78], rcx
mov byte [rbp - 0x69], al
jne 0x14005dd8c
jmp 0x14005dd35
mov rax, qword [rbp + 8]
mov rcx, rax
add rcx, 1
movabs rdx, 0xdcb9a2bd52af7456
movabs r8, 0x23465d42ad508ba9
xor rdx, r8
xor rax, rdx
xor rax, 0xffffffffffffffff
mov rdx, rcx
xor rdx, rax
and rdx, rcx
mov al, 1
cmp rdx, 0
mov qword [rbp - 0x78], rcx
mov byte [rbp - 0x69], al
jge 0x14005dd8c
sub rsp, 0x20
call fcn.140007bb8
add rsp, 0x20
jmp 0x14005ddc8
mov rax, qword [rbp - 0x78]
mov cl, byte [rbp - 0x69]
test cl, 1
mov qword [rbp + 0x28], rax
jne 0x14005d6a0
jmp 0x14005ddc8
mov rcx, qword [rbp + 0x50]
mov rax, qword [rbp + 0x58]
mov rdx, qword [rax]
mov qword [rcx], rdx
mov rax, qword [rax + 8]
mov qword [rcx + 8], rax
sub rsp, 0x20
call fcn.1400477c0
add rsp, 0x20
lea rsp, [rbp + 0x88]
pop rsi
pop rbp
ret
mov esp, 0xe9d81c97
out dx, eax
cmc
invalid
adc al, 0x7d
xchg edx, eax
jmp 0x14005d56e
rcl dword [rax + 0x14e9b226]
cli
invalid
adc bh, byte [rcx + 0x7d]
invalid
in al, 9
movabs eax, dword [0x5590fffffc9ce9fc]
push rbp
push rsi
push rdi
sub rsp, 0x190
lea rbp, [rsp + 0x80]
mov qword [rbp + 0x80], r8
mov qword [rbp + 0x88], rdx
mov qword [rbp + 0xc0], rcx
mov eax, 0x10
mov qword [rbp + 0xa8], rax
call fcn.1401d7280
sub rsp, rax
mov rax, qword [rbp + 0xa8]
mov rcx, rsp
mov qword [rbp + 0x90], rcx
call fcn.1401d7280
sub rsp, rax
mov rax, qword [rbp + 0xa8]
mov rcx, rsp
mov qword [rbp + 0x98], rcx
call fcn.1401d7280
sub rsp, rax
mov rax, qword [rbp + 0xa8]
mov rcx, rsp
mov qword [rbp + 0xa0], rcx
call fcn.1401d7280
sub rsp, rax
mov rax, qword [rbp + 0xa8]
mov rcx, rsp
mov qword [rbp + 0xb0], rcx
call fcn.1401d7280
sub rsp, rax
mov rax, rsp
mov qword [rbp + 0xb8], rax
sub rsp, 0x20
call fcn.140043a70
mov rcx, qword [rbp + 0xc0]
add rsp, 0x20
mov qword [rbp + 0xc8], rax
cmp qword [rcx], 0
jne 0x14005df50
mov ecx, 0x20
sub rsp, 0x20
call fcn.140043c00
add rsp, 0x20
mov rcx, rax
mov rax, qword [rbp + 0xc8]
mov qword [rbp + 0x78], rcx
cmp byte [rax], 0
jne 0x14005eb85
mov rax, qword [rbp + 0x78]
mov rcx, qword [rbp + 0xc0]
mov qword [rcx + 0x10], 0
cmp rax, 0
jge 0x14005df38
mov rcx, qword [rbp + 0x78]
xor eax, eax
mov edx, eax
movabs r8, 0x7fffffffffffffff
sub rsp, 0x20
call fcn.14000c4b0
add rsp, 0x20
jmp 0x14005eb85
mov rdx, qword [rbp + 0x78]
mov rcx, qword [rbp + 0xc0]
sub rsp, 0x20
call fcn.14001793b
add rsp, 0x20
mov r8, qword [rbp + 0xa0]
mov rax, qword [rbp + 0x88]
mov rcx, qword [rbp + 0xc0]
mov qword [r8], 0
mov rdx, qword [rcx]
mov qword [rbp + 0xe0], rdx
mov rdx, qword [rcx + 8]
mov qword [rbp + 0xe8], rdx
mov rcx, qword [rcx + 0x10]
mov qword [rbp + 0xf0], rcx
mov rcx, qword [rax]
mov qword [rbp + 0xd0], rcx
mov rax, qword [rax + 8]
mov qword [rbp + 0xd8], rax
lea rcx, [rbp + 0xe0]
lea rdx, [rbp + 0xd0]
sub rsp, 0x20
call fcn.14005cb00
add rsp, 0x20
mov rcx, rax
mov rax, qword [rbp + 0xc8]
mov qword [rbp + 0x70], rcx
cmp byte [rax], 0
jne 0x14005eb85
mov rax, qword [rbp + 0x70]
mov rcx, qword [rbp + 0xc0]
mov rcx, qword [rcx]
mov qword [rbp + 0x68], rcx
cmp rax, 0xffffffffffffffff
jle 0x14005e0f6
mov rax, qword [rbp + 0x70]
mov rcx, qword [rbp + 0x68]
cmp rax, rcx
jl 0x14005e01e
mov rcx, qword [rbp + 0x70]
mov rdx, qword [rbp + 0x68]
add rdx, 0xffffffffffffffff
sub rsp, 0x20
call fcn.140012270
add rsp, 0x20
jmp 0x14005eb85
mov eax, dword [0x1401daa20]
mov edx, dword [0x1401daa24]
xor edx, 0x4cda383c
mov ecx, eax
and ecx, edx
xor eax, edx
or ecx, eax
mov edx, 0xca42adb1
xor edx, 0x5a4b856f
mov eax, ecx
and eax, edx
or ecx, 0x900928de
add eax, ecx
mov ecx, 0xcb6b0287
xor edx, edx
div ecx
mov ecx, 0x4f3539bb
xor edx, edx
div ecx
cmp eax, 0xe8e2a5a3
je 0x14005eb90
mov r8, qword [rbp + 0x70]
mov rcx, qword [rbp + 0xc0]
mov eax, dword [0x1401daa28]
mov edx, dword [0x1401daa2c]
mov r9d, 0x432419da
xor r9d, 0x68994749
sub eax, r9d
add eax, edx
add eax, 0x2bbd5e93
mov r9d, 0x913724f1
xor edx, edx
div r9d
mov r9d, 0xbd79fc60
xor r9d, 0x8710027d
xor edx, edx
div r9d
mov r9d, 0x239b3c94
xor r9d, 0x9b037800
xor edx, edx
div r9d
mov rdx, qword [rbp + 0x80]
mov rcx, qword [rcx + 8]
add rcx, 8
shl r8, 5
add rcx, r8
add rcx, 0x18
mov qword [rcx], rdx
cmp eax, 0xcaf28961
je 0x14005e06c
jmp 0x14005eb85
mov ecx, dword [0x1401daa30]
mov edx, dword [0x1401daa34]
xor edx, 0x77f57996
mov eax, ecx
or eax, eax
mov r8d, 0xda0a68a3
xor r8d, 0x25f5975c
xor eax, r8d
mov r8d, edx
or r8d, r8d
xor r8d, 0xffffffff
or eax, r8d
xor eax, 0xffffffff
xor ecx, 0xffffffff
xor edx, 0xffffffff
and ecx, edx
xor eax, 0xffffffff
mov edx, 0x2cfe6e0a
xor edx, 0xd30191f5
xor ecx, edx
and eax, ecx
mov ecx, 0x7fc6ef84
xor ecx, 0x892e3180
xor edx, edx
div ecx
or eax, 0x385e3588
mov ecx, eax
add ecx, 1
mov edx, 0x27d5efe2
xor edx, 0xd82a101d
xor eax, edx
or eax, 0x874ada07
add eax, ecx
cmp eax, 0xc84ae671
je 0x14005eb99
mov ecx, dword [0x1401daa38]
xor ecx, dword [0x1401daa3c]
mov eax, ecx
and eax, eax
xor eax, 0xffffffff
xor eax, 0xffffffff
mov edx, 0xffffffff
xor edx, 0x7bab8f30
or eax, edx
mov edx, 0xffffffff
xor edx, 0x7bab8f30
mov r8d, 0xffffffff
xor r8d, 0x7bab8f30
or edx, r8d
mov r8d, 0x52e71ad7
xor r8d, 0xad18e528
xor ecx, r8d
mov r8d, 0xc2bb016d
xor r8d, 0x3d44fe92
xor edx, r8d
or ecx, edx
xor eax, 0xffffffff
xor ecx, 0xffffffff
or eax, ecx
mov ecx, 0x8fe21379
xor ecx, 0x381c95ed
xor edx, edx
div ecx
mov rdx, qword [rbp + 0x68]
xor eax, 0xc8330eac
mov ecx, 0x4adb028d
xor ecx, 0x4ce31bdc
cmp rdx, 0
sete dl
mov byte [rbp + 0x67], dl
cmp eax, ecx
je 0x14005eb99
mov rax, qword [rbp + 0x68]
mov cl, byte [rbp + 0x67]
test cl, 1
mov qword [rbp + 0x58], rax
jne 0x14005e234
jmp 0x14005e2f7
mov ecx, 0x20
sub rsp, 0x20
call fcn.140043c00
add rsp, 0x20
mov rcx, rax
mov rax, qword [rbp + 0xc8]
mov qword [rbp + 0x50], rcx
cmp byte [rax], 0
jne 0x14005eb85
mov rax, qword [rbp + 0x50]
mov rcx, qword [rbp + 0xc0]
movabs rdx, 0x9abc274c332fb29c
movabs r8, 0x9abc274c332fb29c
xor rdx, r8
mov qword [rcx + 0x10], rdx
cmp rax, 0
jge 0x14005e2d1
mov rcx, qword [rbp + 0x50]
movabs rdx, 0x68dd50b9291ecce3
movabs rax, 0x68dd50b9291ecce3
xor rdx, rax
movabs r8, 0x74cc3a787ee475e1
movabs rax, 0xb33c587811b8a1e
xor r8, rax
sub rsp, 0x20
call fcn.14000c4b0
add rsp, 0x20
jmp 0x14005eb85
mov rcx, qword [rbp + 0xc0]
mov rdx, qword [rbp + 0x50]
sub rsp, 0x20
call fcn.14001793b
mov rax, qword [rbp + 0xc0]
add rsp, 0x20
mov rax, qword [rax]
mov qword [rbp + 0x58], rax
mov rax, qword [rbp + 0xc0]
mov rcx, qword [rbp + 0x58]
mov qword [rbp + 0x30], rcx
mov rdx, rax
add rdx, 8
mov qword [rbp + 0x38], rdx
mov rdx, rax
add rdx, 0x10
mov qword [rbp + 0x40], rdx
mov rax, qword [rax + 0x10]
mov qword [rbp + 0x48], rax
movabs rdx, 0xda16bdcd3c12c7d9
movabs rax, 0xda16bdcd3c12c7db
xor rdx, rax
lea r8, [rbp + 0xf8]
sub rsp, 0x20
call fcn.140044e80
add rsp, 0x20
test al, 1
jne 0x14005e4e8
mov eax, dword [0x1401daa40]
and eax, dword [0x1401daa44]
mov ecx, 0xf224c57f
xor edx, edx
div ecx
mov ecx, 0xca46c785
xor ecx, 0x5a2786f9
add eax, ecx
sub eax, 0x79ac7280
sub eax, 0x9061417c
mov ecx, 0x5ee1cbeb
xor ecx, 0x990530e3
add eax, ecx
mov ecx, 0xc5df493c
xor ecx, 0x7b235d21
add eax, ecx
mov ecx, 0x9ad40f01
xor ecx, 0x5d30f409
sub eax, ecx
mov ecx, 0x7376f222
xor ecx, 0x4657a19e
cmp eax, ecx
je 0x14005eba2
mov r8, qword [rbp + 0x98]
mov rcx, qword [rbp + 0x48]
mov eax, dword [0x1401daa48]
xor eax, 0x3d0a76ff
imul eax, dword [0x1401daa4c]
sub eax, 0xf178b64
mov edx, 0xc687ad68
xor edx, 0x6e10f574
add eax, edx
mov edx, 0x7fa31df1
xor edx, 0x70b49695
add eax, edx
mov edx, 0xa834e634
xor edx, 0x13a0f7b1
or eax, edx
mov edx, 0x1e76c9c4
xor edx, 0x2242dfe0
imul eax, edx
mov dword [rbp + 0x28], eax
mov edx, 3
sub rsp, 0x20
call fcn.140044e80
add rsp, 0x20
mov cl, al
mov eax, dword [rbp + 0x28]
mov byte [rbp + 0x2f], cl
cmp eax, 0xc3de06f3
je 0x14005eba2
mov al, byte [rbp + 0x2f]
test al, 1
jne 0x14005e4e8
jmp 0x14005e44c
mov rdx, qword [rbp + 0x98]
mov rcx, qword [rbp + 0xf8]
xor eax, eax
cmp rcx, qword [rdx]
mov byte [rbp + 0x27], al
jl 0x14005e50a
mov r8, qword [rbp + 0x48]
mov r9, qword [rbp + 0x30]
mov rcx, r9
sub rcx, r8
mov qword [rbp + 0x18], rcx
mov rdx, rcx
not rdx
mov r10, rdx
xor r10, r9
mov rax, r9
and rax, r10
add rax, rax
sub r9, rax
mov rax, rcx
add rax, r9
xor rdx, rcx
and rdx, r8
xor rdx, rcx
mov rcx, rax
and rcx, rdx
test rax, rax
sets al
test rcx, rcx
setns cl
add al, cl
inc al
test al, 1
jne 0x14005e4e8
mov rax, qword [rbp + 0x18]
movabs rcx, 0x6d378aa2f2993bc3
movabs rdx, 0x6d378aa2f2993bc0
xor rcx, rdx
cmp rax, rcx
setg al
mov byte [rbp + 0x27], al
jmp 0x14005e50a
sub rsp, 0x20
call fcn.140007bb8
mov rax, qword [rbp + 0xc8]
add rsp, 0x20
cmp byte [rax], 0
je 0x14005e97d
jmp 0x14005eb85
mov rax, qword [rbp + 0xc8]
mov cl, byte [rbp + 0x27]
mov al, byte [rax]
test al, al
setne al
mov byte [rbp + 0x17], al
or al, cl
test al, 1
jne 0x14005e96d
mov eax, dword [0x1401daa50]
mov edx, dword [0x1401daa54]
xor edx, 0x3dd25085
mov ecx, eax
xor ecx, 0xffffffff
mov r8d, edx
xor r8d, 0xffffffff
or ecx, r8d
mov r8d, 0x88c4fc6
xor r8d, 0xf773b039
xor eax, r8d
mov r8d, 0x24859be5
xor r8d, 0xdb7a641a
xor edx, r8d
or eax, edx
mov edx, 0x5b7a651a
xor edx, 0xa4859ae5
xor ecx, edx
xor eax, 0xffffffff
or ecx, eax
mov eax, 0x2fa9ed61
xor eax, 0x260f4c9b
add ecx, eax
mov eax, ecx
and eax, 0x42f29fdd
or ecx, 0x42f29fdd
add eax, ecx
imul eax, eax, 0xac8c5ac1
cmp eax, 0xe16d01f6
ja 0x14005ebab
mov rcx, qword [rbp + 0xc0]
mov eax, dword [0x1401daa58]
mov edx, dword [0x1401daa5c]
or eax, eax
xor eax, 0xffffffff
or edx, edx
xor edx, 0xffffffff
or eax, edx
xor eax, 0xffffffff
mov edx, eax
xor edx, 0xbe24afb2
mov r8d, 0x76c23fe4
xor r8d, 0x893dc01b
xor edx, r8d
mov r8d, 0x571d7c5e
xor r8d, 0xe939d3ec
or eax, r8d
and eax, edx
sub eax, 0xac6a1e55
mov r8d, 0x4f178881
xor r8d, 0xa0491d71
mov edx, eax
xor edx, r8d
xor edx, 0xffffffff
or eax, 0xef5e95f0
and eax, edx
mov dword [rbp + 0x10], eax
sub rsp, 0x20
call fcn.14005d380
mov rcx, qword [rbp + 0xc8]
mov eax, dword [rbp + 0x10]
add rsp, 0x20
cmp byte [rcx], 0
sete cl
mov byte [rbp + 0x16], cl
cmp eax, 0xea034808
je 0x14005ebab
mov al, byte [rbp + 0x16]
test al, 1
jne 0x14005e654
jmp 0x14005eb85
mov rax, qword [rbp + 0xb0]
mov rcx, qword [rbp + 0x88]
mov rdx, qword [rbp + 0x38]
mov r8, qword [rbp + 0xc0]
mov r9, qword [rbp + 0xa0]
mov r9, qword [r9]
mov qword [rbp - 0x18], r9
mov r8, qword [r8]
mov qword [rbp - 8], r8
mov rdx, qword [rdx]
mov qword [rbp - 0x10], rdx
mov rdx, qword [rcx]
mov qword [rax], rdx
mov rcx, qword [rcx + 8]
mov qword [rax + 8], rcx
sub rsp, 0x20
call fcn.140043a70
mov rcx, qword [rbp - 8]
add rsp, 0x20
mov qword [rbp], rax
movabs rdx, 0xb8ea06538e05dcba
movabs rax, 0xb8ea06538e05dcba
xor rdx, rax
mov rax, 0xffffffffffffffff
cmp rcx, rdx
mov qword [rbp + 8], rax
je 0x14005e93f
mov rcx, qword [rbp - 0x18]
mov rax, qword [rbp - 8]
add rax, 0xffffffffffffffff
mov qword [rbp - 0x28], rax
xor rax, 0xffffffffffffffff
xor rcx, 0xffffffffffffffff
movabs rdx, 0x8ef502e9049f3cc3
movabs r8, 0x572b19ebfcfac05a
xor rdx, r8
movabs r8, 0x81387076c466b0c5
movabs r9, 0x7ec78f893b994f3a
xor r8, r9
xor rdx, r8
or rax, rcx
movabs rcx, 0xb90724d851a4b5d0
movabs r8, 0x60d93fdaa9c14949
xor rcx, r8
or rcx, rdx
xor rax, 0xffffffffffffffff
and rax, rcx
mov qword [rbp - 0x20], rax
mov rdx, qword [rbp - 8]
mov rcx, qword [rbp - 0x20]
mov qword [rbp - 0x30], rcx
test rcx, rcx
setns al
sub rcx, rdx
setl cl
and al, cl
test al, 1
jne 0x14005e78f
mov rdx, qword [rbp - 0x28]
mov rcx, qword [rbp - 0x30]
sub rsp, 0x20
call fcn.140012270
add rsp, 0x20
mov rax, 0xffffffffffffffff
mov qword [rbp + 8], rax
jmp 0x14005e93f
mov rcx, qword [rbp - 0x30]
mov rdx, qword [rbp]
mov rax, qword [rbp - 0x10]
mov r8, rcx
shl r8, 5
mov rax, qword [rax + r8 + 8]
mov qword [rbp - 0x48], rax
test rax, rax
sete al
mov r9b, byte [rdx]
test r9b, r9b
setne dl
or dl, al
mov r8d, 0x4f8ba502
xor r8d, 0x4f8ba501
mov eax, 0x96637a67
xor eax, 0x96637a61
cmp r9b, 0
cmovne eax, r8d
test dl, 1
mov qword [rbp - 0x40], rcx
mov dword [rbp - 0x34], eax
jne 0x14005e8ae
mov rax, qword [rbp - 0x48]
mov rcx, qword [rbp - 0x18]
cmp rax, rcx
jne 0x14005e86b
mov r8, qword [rbp - 0x30]
mov rdx, qword [rbp + 0x90]
mov rax, qword [rbp + 0xb0]
mov rcx, qword [rbp - 0x10]
add rcx, 8
shl r8, 5
add rcx, r8
add rcx, 8
mov r8, qword [rcx]
mov qword [rbp + 0x100], r8
mov rcx, qword [rcx + 8]
mov qword [rbp + 0x108], rcx
mov rcx, qword [rax]
mov qword [rdx], rcx
mov rax, qword [rax + 8]
mov qword [rdx + 8], rax
lea rcx, [rbp + 0x100]
sub rsp, 0x20
call fcn.14005f140
add rsp, 0x20
mov cl, al
mov rax, qword [rbp - 0x30]
test cl, 1
mov qword [rbp + 8], rax
jne 0x14005e93f
mov rdx, qword [rbp - 0x28]
mov rcx, qword [rbp - 0x30]
sub rsp, 0x20
call fcn.140044fc0
add rsp, 0x20
mov rdx, rax
mov rax, qword [rbp]
mov r8b, byte [rax]
mov r9b, 0x3e
xor r9b, 0x3e
xor ecx, ecx
mov rax, 0xffffffffffffffff
cmp r8b, r9b
mov qword [rbp - 0x40], rdx
mov dword [rbp - 0x34], ecx
mov qword [rbp + 8], rax
jne 0x14005e93f
mov rax, qword [rbp - 0x40]
mov ecx, dword [rbp - 0x34]
mov dword [rbp - 0x5c], ecx
mov qword [rbp - 0x58], rax
mov rdx, 0xffffffffffffffff
mov qword [rbp - 0x50], rdx
test ecx, ecx
mov qword [rbp - 0x20], rax
je 0x14005e748
jmp 0x14005e8d8
mov rax, qword [rbp - 0x50]
mov ecx, dword [rbp - 0x5c]
sub ecx, 6
mov qword [rbp + 8], rax
jne 0x14005e93f
jmp 0x14005e8f1
mov rax, qword [rbp - 0x58]
mov rdx, rax
xor rdx, 0xffffffffffffffff
movabs rcx, 0x6626baf22caadb24
movabs r8, 0x99d9450dd35524db
xor rcx, r8
xor rdx, rcx
movabs rcx, 0xb097ee650f034e94
movabs r8, 0x4f68119af0fcb16b
xor rcx, r8
and rcx, rdx
shl rcx, 1
sub rcx, 0xffffffffffffffff
sub rax, rcx
mov qword [rbp + 8], rax
mov rcx, qword [rbp - 0x18]
mov rdx, qword [rbp + 0xc8]
mov rax, qword [rbp + 8]
mov dl, byte [rdx]
mov r8b, 0xbf
xor r8b, 0xbf
cmp dl, r8b
mov qword [rbp - 0x70], rcx
mov qword [rbp - 0x68], rax
je 0x14005e993
jmp 0x14005eb85
mov al, byte [rbp + 0x17]
test al, 1
jne 0x14005eb85
jmp 0x14005e97d
mov rax, qword [rbp + 0x70]
mov rcx, qword [rbp + 0xa0]
mov rcx, qword [rcx]
mov qword [rbp - 0x70], rcx
mov qword [rbp - 0x68], rax
mov r9, qword [rbp + 0x80]
mov r8, qword [rbp + 0xb8]
mov rdx, qword [rbp + 0xc0]
mov rcx, qword [rbp + 0x88]
mov r10, qword [rbp - 0x70]
mov r11, qword [rbp - 0x68]
mov rax, r11
and rax, rax
xor rax, 0xffffffffffffffff
and rax, 0xffffffffffffffff
movabs rsi, 0xd0e0e2569b88e73b
movabs rdi, 0x2f1f1da9647718c4
xor rsi, rdi
xor rax, rsi
mov rsi, 0xffffffffffffffff
xor rsi, 0xffffffffffffffff
mov rdi, 0xffffffffffffffff
xor rdi, 0xffffffffffffffff
or rsi, rdi
and r11, rsi
movabs rsi, 0xaee38714ed967380
movabs rdi, 0x511c78eb12698c7f
xor rsi, rdi
xor r11, rsi
and rax, r11
xor rax, 0xffffffffffffffff
mov r11, qword [rcx]
mov qword [r8], r11
mov rcx, qword [rcx + 8]
mov qword [r8 + 8], rcx
sub rsp, 0x30
mov qword [rsp + 0x20], r10
mov qword [rsp + 0x28], rax
call fcn.14005d110
mov rax, qword [rbp + 0xc8]
add rsp, 0x30
cmp byte [rax], 0
jne 0x14005eb85
mov eax, dword [0x1401daa60]
xor edx, edx
div dword [0x1401daa64]
and eax, 0x1e4899f
mov ecx, 0x9b4e2ab2
xor ecx, 0x7bdb6689
or eax, ecx
mov ecx, 0x14e614cd
xor edx, edx
div ecx
mov ecx, 0x7eb52530
xor ecx, 0x44e75dd0
cmp eax, ecx
jae 0x14005ebb4
mov eax, dword [0x1401daa68]
mov ecx, dword [0x1401daa6c]
xor ecx, 0xcb6ba29e
xor edx, edx
div ecx
mov r8d, eax
mov eax, r8d
xor eax, 0xffffffff
and eax, 0x3cdc4d02
mov edx, 0xffffffff
xor edx, 0x3cdc4d02
and r8d, edx
mov ecx, 0xffffffff
xor ecx, 0xc0e570be
and ecx, 0x3cdc4d02
and edx, 0xc0e570be
or eax, r8d
or ecx, edx
xor eax, ecx
imul eax, eax, 0x340260b3
mov ecx, 0xa8050113
xor edx, edx
div ecx
mov rdx, qword [rbp + 0x40]
mov ecx, 0xd77de483
xor ecx, 0x2f29d990
mov r8, qword [rdx]
movabs r9, 0x897459631e7f5380
movabs rdx, 0x897459631e7f5380
xor r9, rdx
sub r9, r8
xor edx, edx
sub rdx, 1
add r9, rdx
movabs rdx, 0x2bbee76f470d0b4
movabs r10, 0x2bbee76f470d0b4
xor rdx, r10
sub rdx, r9
mov qword [rbp - 0x80], rdx
xor r8, 0xffffffffffffffff
and rdx, r8
cmp rdx, 0
setl dl
mov byte [rbp - 0x71], dl
cmp eax, ecx
ja 0x14005ebb4
mov al, byte [rbp - 0x71]
test al, 1
jne 0x14005eb68
jmp 0x14005eb7a
sub rsp, 0x20
call fcn.140007bb8
add rsp, 0x20
jmp 0x14005eb85
mov rax, qword [rbp + 0x40]
mov rcx, qword [rbp - 0x80]
mov qword [rax], rcx
lea rsp, [rbp + 0x110]
pop rdi
pop rsi
pop rbp
ret
invalid
out dx, eax
and dword [rax - 0xa2316d7], ecx
invalid
rol dword [rbp + rsi*2 - 0x43], 1
jmp 0x14005e3bd
invalid
hlt