Function at 0x14005b4a0
Capabilities:
Encode data using xor

Disassembly:
push rbp
push rsi
sub rsp, 0x108
lea rbp, [rsp + 0x80]
mov qword [rbp + 0x80], rcx
mov eax, dword [str.h_tr]
xor eax, 0xfa1e1e4b
mov ecx, dword [0x140252b64]
mov edx, 0x4b715727
xor edx, 0x9d3de0fe
xor ecx, edx
imul eax, ecx
add eax, 0xf162851d
mov edx, 0xffffffff
xor edx, 0xd87c54d0
mov ecx, eax
and ecx, edx
mov edx, eax
xor edx, 0xd87c54d0
add eax, edx
sub eax, ecx
mov ecx, 0x298cb16b
xor edx, edx
div ecx
cmp eax, 0x7d7f2c96
ja 0x14005bdd9
mov eax, dword [0x140252b68]
mov ecx, dword [0x140252b6c]
xor edx, edx
div ecx
or eax, 0x2c436de1
xor eax, 0xb4dcbd5a
add eax, 0x5dda7e12
mov dword [rbp + 0x78], eax
mov eax, 0xf8be7eef
mov dword [rbp + 0x74], eax
mov eax, 0x10
mov qword [rbp + 0x38], rax
call fcn.14024f5c0
sub rsp, rax
mov rax, qword [rbp + 0x38]
mov rcx, rsp
mov qword [rbp + 0x50], rcx
call fcn.14024f5c0
sub rsp, rax
mov rax, qword [rbp + 0x38]
mov rcx, rsp
mov qword [rbp + 0x58], rcx
call fcn.14024f5c0
sub rsp, rax
mov rax, qword [rbp + 0x38]
mov rcx, rsp
mov qword [rbp + 0x40], rcx
call fcn.14024f5c0
sub rsp, rax
mov rax, rsp
mov qword [rbp + 0x48], rax
sub rsp, 0x20
call fcn.14004e8b3
mov rcx, qword [rbp + 0x50]
mov r8, qword [rbp + 0x58]
add rsp, 0x20
mov rdx, rax
mov rax, qword [rbp + 0x80]
mov qword [rbp + 0x60], rdx
mov qword [rcx], 0
mov rdx, rcx
add rdx, 8
mov qword [rbp + 0x68], rdx
mov qword [rcx + 8], 0
mov rcx, qword [rax]
movabs rdx, 0x35a3d05636a3c9ff
movabs rax, 0x35a3d05636a3c9fd
xor rdx, rax
sub rsp, 0x20
call fcn.14004f720
mov ecx, dword [rbp + 0x74]
add rsp, 0x20
mov dl, al
mov eax, dword [rbp + 0x78]
mov byte [rbp + 0x7f], dl
cmp eax, ecx
je 0x14005b50d
mov al, byte [rbp + 0x7f]
test al, 1
jne 0x14005b60f
jmp 0x14005b621
sub rsp, 0x20
call fcn.140007e9d
add rsp, 0x20
jmp 0x14005bdcf
mov rax, qword [rbp + 0x58]
mov rax, qword [rax]
mov qword [rbp + 0x30], rax
movabs rcx, 0x12407928645156cc
movabs rdx, 0x12407928645156cc
xor rcx, rdx
cmp rax, rcx
jge 0x14005b670
mov rcx, qword [rbp + 0x30]
xor eax, eax
mov edx, eax
movabs r8, 0x7fffffffffffffff
sub rsp, 0x20
call fcn.14000cee2
add rsp, 0x20
jmp 0x14005bdcf
mov rcx, qword [rbp + 0x50]
mov rdx, qword [rbp + 0x30]
sub rsp, 0x20
call fcn.140025691
mov r10, qword [rbp + 0x80]
mov r8, qword [rbp + 0x50]
mov rcx, qword [rbp + 0x68]
mov rax, qword [rbp + 0x40]
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 0x14005bdac
mov rcx, qword [rbp + 8]
mov rdx, qword [rbp + 0x50]
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 0x14005b75e
mov rcx, qword [rbp + 8]
mov rax, qword [rbp]
movabs r8, 0xaf563bc450f9b742
movabs rdx, 0x50a9c43baf0648bd
xor r8, rdx
mov rdx, rax
and rdx, r8
movabs r8, 0x232735e83525f781
movabs r9, 0xdcd8ca17cada087e
xor r8, r9
or rax, r8
add rdx, rax
sub rsp, 0x20
call fcn.140013507
add rsp, 0x20
jmp 0x14005bdcf
mov rax, qword [rbp + 0x60]
mov rdx, qword [rbp + 8]
mov rcx, qword [rbp + 0x68]
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 0x14005bcce
mov rcx, qword [rbp - 0x10]
mov rax, qword [rbp + 0x80]
mov rax, qword [rax]
movabs rdx, 0xe09eb4fe2224e90d
movabs r8, 0xe09eb4fe2224e90d
xor rdx, r8
movabs r8, 0x3a0694373d517316
movabs r9, 0xc5f96bc8c2ae8ce9
xor r8, r9
sub rdx, r8
sub rax, rdx
and rax, rcx
mov qword [rbp - 0x18], rax
mov rdx, qword [rbp + 0x80]
mov rcx, qword [rbp - 0x18]
mov qword [rbp - 0x28], rcx
test rcx, rcx
setns al
mov rdx, qword [rdx]
mov qword [rbp - 0x20], rdx
sub rcx, rdx
setl cl
and al, cl
test al, 1
jne 0x14005b83d
mov rcx, qword [rbp - 0x28]
mov rdx, qword [rbp - 0x20]
movabs rax, 0xe61f6ed3a2d8512f
movabs r8, 0x19e0912c5d27aed0
xor rax, r8
add rdx, rax
sub rsp, 0x20
call fcn.140013507
add rsp, 0x20
jmp 0x14005bdcf
mov rcx, qword [rbp - 0x28]
mov rax, qword [rbp + 0x18]
mov rax, qword [rax]
add rax, 8
shl rcx, 5
add rax, rcx
cmp qword [rax], 0
je 0x14005ba54
mov eax, dword [0x140252b70]
and eax, dword [0x140252b74]
mov ecx, 0x4756fe77
xor ecx, 0x200affa8
xor eax, ecx
mov ecx, 0xc10c2e17
xor ecx, 0x32e7c9eb
imul eax, ecx
mov edx, eax
xor edx, 0xffffffff
and edx, 0xf743adfa
mov r8d, 0xffffffff
xor r8d, 0xf743adfa
mov ecx, eax
and ecx, r8d
imul ecx, edx
mov r8d, 0x31cc5588
xor r8d, 0xc68ff872
mov edx, eax
and edx, r8d
or eax, 0xf743adfa
imul eax, edx
add eax, ecx
cmp eax, 0x5f1ebb6a
jbe 0x14005bde2
mov rcx, qword [rbp - 0x28]
mov rdx, qword [rbp - 0x20]
mov eax, dword [0x140252b78]
mov r9d, dword [0x140252b7c]
xor r8d, r8d
sub r8d, eax
xor eax, eax
sub eax, r9d
add r8d, eax
xor eax, eax
sub eax, r8d
xor eax, 0xffffffff
mov r8d, 0xf379492f
xor r8d, 0x867d6547
mov r9d, 0xef791ae0
xor r9d, 0x1086e51f
xor r8d, r9d
mov r9d, 0xffffffff
xor r9d, 0xdc6f3271
or eax, r8d
mov r8d, 0x10adfec2
xor r8d, 0xccc2ccb3
or r8d, r9d
xor eax, 0xffffffff
and eax, r8d
mov r9d, 0xff3443f6
xor r9d, 0xcbbc09
mov r8d, eax
xor r8d, r9d
mov r9d, 0x6334afe7
xor r9d, 0xea75dbef
mov r10d, 0x5297ae95
xor r10d, 0xad68516a
xor r9d, r10d
or r8d, r9d
and eax, 0x89417408
xor eax, 0xffffffff
and r8d, eax
xor r8d, 0xffffffff
mov eax, r8d
xor eax, 0xffffffff
mov r9d, 0xd84c1492
xor r9d, 0xca6417f6
mov r10d, 0xc1b60bd3
xor r10d, 0x3e49f42c
xor r9d, r10d
and eax, r9d
or r8d, 0x12280364
xor r8d, 0xffffffff
xor eax, 0xffffffff
xor r8d, 0xffffffff
and eax, r8d
mov dword [rbp - 0x3c], eax
xor eax, eax
sub rax, rdx
movabs rdx, 0xaf1f92ed67406e10
movabs r8, 0xaf1f92ed67406e10
xor rdx, r8
movabs r8, 0xc141a9b8c8ecc4d8
movabs r9, 0x3ebe564737133b27
xor r8, r9
sub rdx, r8
add rax, rdx
movabs rdx, 0x7f61ef9b2f4996fb
movabs r8, 0x7f61ef9b2f4996fb
xor rdx, r8
sub rdx, rax
sub rsp, 0x20
call fcn.14004fa4c
mov rcx, qword [rbp + 0x60]
add rsp, 0x20
mov rdx, rax
mov eax, dword [rbp - 0x3c]
mov qword [rbp - 0x38], rdx
cmp byte [rcx], 0
sete cl
mov byte [rbp - 0x29], cl
cmp eax, 0x2664fc3
je 0x14005bde2
mov rax, qword [rbp - 0x38]
mov cl, byte [rbp - 0x29]
test cl, 1
mov qword [rbp - 0x18], rax
jne 0x14005b7dd
jmp 0x14005bdcf
mov rax, qword [rbp + 8]
mov rcx, qword [rbp + 0x50]
mov rcx, qword [rcx]
mov qword [rbp - 0x48], rcx
cmp rax, rcx
jl 0x14005ba94
mov rcx, qword [rbp + 8]
mov rax, qword [rbp - 0x48]
mov rdx, rax
and rdx, 0xffffffffffffffff
or rax, 0xffffffffffffffff
add rdx, rax
sub rsp, 0x20
call fcn.140013507
add rsp, 0x20
jmp 0x14005bdcf
mov rax, qword [rbp + 8]
mov rcx, qword [rbp + 0x68]
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.1400102b5
mov rcx, qword [rbp + 0x50]
mov rax, qword [rbp + 8]
add rsp, 0x20
mov rcx, qword [rcx]
mov qword [rbp - 0x50], rcx
cmp rax, rcx
jl 0x14005bb30
mov rcx, qword [rbp + 8]
mov rdx, qword [rbp - 0x50]
movabs rax, 0x71f7e63a2c97e957
movabs r8, 0x71f7e63a2c97e957
xor rax, r8
movabs r8, 0x99217418ed324460
movabs r9, 0x66de8be712cdbb9f
xor r8, r9
sub rax, r8
sub rdx, rax
sub rsp, 0x20
call fcn.140013507
add rsp, 0x20
jmp 0x14005bdcf
mov rsi, qword [rbp - 0x60]
mov rax, qword [rbp + 8]
mov rcx, qword [rbp + 0x68]
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.140140445
mov r11, qword [rbp - 0x58]
mov rcx, qword [rbp + 0x20]
mov rdx, qword [rbp + 0x80]
mov r8, qword [rbp + 0x40]
mov r9, qword [rbp - 0x68]
mov r10, qword [rbp - 0x10]
mov rax, qword [rbp - 0x28]
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.14005b309
mov rax, qword [rbp + 0x60]
add rsp, 0x30
cmp byte [rax], 0
jne 0x14005bdcf
mov ecx, dword [0x140252b80]
or ecx, dword [0x140252b84]
mov eax, 0xae06c514
xor eax, 0xae0e25ec
sub ecx, eax
add ecx, 0x828c1973
add ecx, 0x8e0f8
mov eax, ecx
and eax, 0x169a0545
mov edx, 0x7c7e66ff
xor edx, 0x6ae463ba
or ecx, edx
add eax, ecx
mov ecx, 0xb3d04ff3
xor ecx, 0x91267e7f
xor edx, edx
div ecx
cmp eax, 0x716d3722
jae 0x14005bdeb
mov rcx, qword [rbp - 0x58]
mov eax, dword [0x140252b88]
mov edx, 0xb7780c1c
xor edx, 0x1d016529
xor eax, edx
add eax, dword [0x140252b8c]
xor eax, 0xf1709bf9
mov edx, eax
and edx, 0xc020cdb
mov r8d, 0x1813d30
xor r8d, 0xfe7ec2cf
xor edx, r8d
add eax, 0xc020cdb
add eax, 1
add eax, edx
sub eax, 0xc87c9389
cmp rcx, 0
sete cl
mov byte [rbp - 0x69], cl
cmp eax, 0xfe12cf0d
jae 0x14005bbff
mov al, byte [rbp - 0x69]
test al, 1
jne 0x14005bcec
jmp 0x14005bc6d
mov rax, qword [rbp - 0x58]
mov rcx, qword [rax]
movabs rdx, 0x4000000000000000
mov rax, rcx
and rax, rdx
xor rax, 0xffffffffffffffff
xor rcx, 0xffffffffffffffff
mov rdx, 0xffffffffffffffff
movabs r8, 0x4000000000000000
xor rdx, r8
or rcx, rdx
xor rax, 0xffffffffffffffff
xor rcx, 0xffffffffffffffff
or rax, rcx
cmp rax, 0
jne 0x14005bcec
mov rcx, qword [rbp - 0x58]
sub rsp, 0x20
call fcn.14000e9f6
add rsp, 0x20
jmp 0x14005bcec
mov rcx, qword [rbp + 8]
mov dl, byte [rbp - 1]
xor eax, eax
test dl, 1
mov qword [rbp - 0x78], rcx
mov byte [rbp - 0x6a], al
jne 0x14005bd93
jmp 0x14005bcec
mov rax, qword [rbp + 8]
xor ecx, ecx
mov edx, ecx
sub rdx, rax
xor ecx, ecx
sub rcx, 1
add rdx, rcx
movabs rcx, 0xdc93bd537973d121
movabs r8, 0xdc93bd537973d121
xor rcx, r8
sub rcx, rdx
mov r8, rax
xor r8, 0xffffffffffffffff
and r8, 0xffffffffffffffff
mov rdx, 0xffffffffffffffff
xor rdx, 0xffffffffffffffff
and rax, rdx
or r8, rax
mov rdx, rcx
xor rdx, 0xffffffffffffffff
mov rax, r8
xor rax, 0xffffffffffffffff
or rdx, rax
mov rax, rcx
and rax, r8
xor rax, 0xffffffffffffffff
and rdx, rax
movabs rax, 0xd3918bdaab6a4d7f
movabs r8, 0x2c6e74255495b280
xor rax, r8
xor rdx, rax
mov al, 1
cmp rdx, 0
mov qword [rbp - 0x78], rcx
mov byte [rbp - 0x6a], al
jge 0x14005bd93
sub rsp, 0x20
call fcn.140007e9d
add rsp, 0x20
jmp 0x14005bdcf
mov rax, qword [rbp - 0x78]
mov cl, byte [rbp - 0x6a]
test cl, 1
mov qword [rbp + 0x28], rax
jne 0x14005b6d0
jmp 0x14005bdcf
mov rcx, qword [rbp + 0x48]
mov rax, qword [rbp + 0x50]
mov rdx, qword [rax]
mov qword [rcx], rdx
mov rax, qword [rax + 8]
mov qword [rcx + 8], rax
sub rsp, 0x20
call fcn.140055151
add rsp, 0x20
lea rsp, [rbp + 0x88]
pop rsi
pop rbp
ret
shr dword [rdi + 0x77], cl
invalid
jae 0x14005be2a
cmpsd dword [rsi], dword [rdi]
invalid
invalid
mov qword [rbp + 0xc0], rax
call fcn.14024f5c0
sub rsp, rax
mov rax, qword [rbp + 0xc0]
mov rcx, rsp
mov qword [rbp + 0xc8], rcx
call fcn.14024f5c0
sub rsp, rax
mov rax, rsp
mov qword [rbp + 0xd0], rax
sub rsp, 0x20
call fcn.14004e8b3
mov rcx, qword [rbp + 0xd8]
add rsp, 0x20
mov qword [rbp + 0xe0], rax
cmp qword [rcx], 0
jne 0x14005bf21
movabs rcx, 0xee7b69e0084428a8
movabs rax, 0xee7b69e008442888
xor rcx, rax
sub rsp, 0x20
call fcn.14004ea9c
add rsp, 0x20
mov rcx, rax
mov rax, qword [rbp + 0xe0]
mov qword [rbp + 0xa8], rcx
cmp byte [rax], 0
jne 0x14005cd38
mov rax, qword [rbp + 0xa8]
mov rcx, qword [rbp + 0xd8]
mov qword [rcx + 0x10], 0
cmp rax, 0
jge 0x14005bf06
mov rcx, qword [rbp + 0xa8]
xor eax, eax
mov edx, eax
movabs r8, 0x7fffffffffffffff
sub rsp, 0x20
call fcn.14000cee2
add rsp, 0x20
jmp 0x14005cd38
mov rdx, qword [rbp + 0xa8]
mov rcx, qword [rbp + 0xd8]
sub rsp, 0x20
call fcn.140025691
add rsp, 0x20
mov eax, dword [0x140252b90]
mov edx, dword [0x140252b94]
mov ecx, 0xfeb10cd7
xor ecx, 0xfeb10cd7
sub ecx, edx
sub eax, ecx
mov ecx, 0x1442f3ae
xor edx, edx
div ecx
add eax, 0x2f4c56a2
sub eax, 0x3dbfa01b
cmp eax, 0xa80fc60a
je 0x14005cd41
mov rax, qword [rbp + 0xb8]
mov rcx, qword [rbp + 0xd8]
mov edx, dword [0x140252b98]
mov r9d, dword [0x140252b9c]
xor r9d, 0xcd079209
mov r8d, 0x3d89303
xor r8d, 0x3d89303
sub r8d, r9d
add edx, r8d
xor edx, 0x1afeb13a
or edx, 0x9f6c602e
mov r9d, 0x3812749c
xor r9d, 0xc7ed8b63
mov r8d, edx
xor r8d, r9d
mov r9d, 0xf456141b
xor r9d, 0xe3680999
and r9d, r8d
mov r10d, 0x1df7a2e8
xor r10d, 0xac9bf6a
mov r8d, 0xd65fe18e
xor r8d, 0x29a01e71
xor r10d, r8d
mov r8d, edx
and r8d, r10d
imul r8d, r9d
mov r10d, 0x2cf4af39
xor r10d, 0x3bcab2bb
mov r9d, edx
and r9d, r10d
or edx, 0x173e1d82
imul edx, r9d
add edx, r8d
mov dword [rbp + 0x94], edx
mov qword [rbp + 0x120], 0
mov rdx, qword [rcx]
mov qword [rbp + 0x108], rdx
mov rdx, qword [rcx + 8]
mov qword [rbp + 0x110], rdx
mov rcx, qword [rcx + 0x10]
mov qword [rbp + 0x118], rcx
mov rcx, qword [rax]
mov qword [rbp + 0xf8], rcx
mov rax, qword [rax + 8]
mov qword [rbp + 0x100], rax
lea rcx, [rbp + 0x108]
lea rdx, [rbp + 0xf8]
lea r8, [rbp + 0x120]
sub rsp, 0x20
call fcn.14005ad30
mov rcx, qword [rbp + 0xe0]
add rsp, 0x20
mov rdx, rax
mov eax, dword [rbp + 0x94]
mov qword [rbp + 0x98], rdx
cmp byte [rcx], 0
sete cl
mov byte [rbp + 0xa7], cl
cmp eax, 0x42c800c4
je 0x14005bf5a
mov al, byte [rbp + 0xa7]
test al, 1
jne 0x14005c0ae
jmp 0x14005cd38
mov rax, qword [rbp + 0x98]
mov rcx, qword [rbp + 0xd8]
mov rcx, qword [rcx]
mov qword [rbp + 0x88], rcx
cmp rax, 0xffffffffffffffff
jle 0x14005c14a
mov rax, qword [rbp + 0x98]
mov rcx, qword [rbp + 0x88]
cmp rax, rcx
jl 0x14005c110
mov rcx, qword [rbp + 0x98]
mov rdx, qword [rbp + 0x88]
xor eax, eax
sub rax, 0xffffffffffffffff
sub rdx, rax
sub rsp, 0x20
call fcn.140013507
add rsp, 0x20
jmp 0x14005cd38
mov rdx, qword [rbp + 0xb0]
mov rax, qword [rbp + 0x98]
mov rcx, qword [rbp + 0xd8]
mov rcx, qword [rcx + 8]
add rcx, 8
shl rax, 5
add rcx, rax
add rcx, 0x18
sub rsp, 0x20
call fcn.1401403fe
add rsp, 0x20
jmp 0x14005cd38
mov eax, dword [0x140252ba0]
mov ecx, dword [0x140252ba4]
xor ecx, 0x2a969082
and eax, ecx
add eax, 0x659d07fd
mov r8d, 0xffffffff
xor r8d, 0x6838a3e2
mov edx, eax
and edx, r8d
mov ecx, eax
or ecx, r8d
mov r8d, 0x9014da6a
xor r8d, 0x6feb2595
xor ecx, r8d
imul ecx, edx
mov r8d, 0x16cb5232
xor r8d, 0x7ef3f1d0
mov edx, eax
and edx, r8d
or eax, 0x6838a3e2
imul eax, edx
add eax, ecx
xor eax, 0xe7c3b9da
mov ecx, 0xaf76d341
xor ecx, 0x266f43c0
cmp eax, ecx
je 0x14005cd4a
mov rcx, qword [rbp + 0x88]
mov edx, dword [0x140252ba8]
mov eax, dword [0x140252bac]
xor eax, 0xde7f8b12
or edx, eax
mov eax, edx
xor eax, 0x44ae1721
xor eax, 0xffffffff
or edx, 0x44ae1721
and edx, eax
mov eax, edx
xor eax, 0xffffffff
mov r8d, edx
xor r8d, 0xffffffff
or eax, r8d
and eax, 0x7e92dc85
xor eax, 0xffffffff
mov r8d, 0x7e92dc85
and r8d, 0x7e92dc85
mov r9d, 0x11890cd9
xor r9d, 0xee76f326
xor r8d, r9d
xor edx, 0xffffffff
xor r8d, 0xffffffff
or edx, r8d
and eax, edx
xor eax, 0xffffffff
and eax, 0xc537b0cf
movabs rdx, 0x216164f5cde8b329
movabs r8, 0x216164f5cde8b329
xor rdx, r8
cmp rcx, rdx
sete cl
mov byte [rbp + 0x87], cl
cmp eax, 0xfe5782a7
jae 0x14005c1c1
mov rax, qword [rbp + 0x88]
mov cl, byte [rbp + 0x87]
test cl, 1
mov qword [rbp + 0x78], rax
jne 0x14005c282
jmp 0x14005c4bb
mov ecx, 0x20
sub rsp, 0x20
call fcn.14004ea9c
add rsp, 0x20
mov rcx, rax
mov rax, qword [rbp + 0xe0]
mov qword [rbp + 0x70], rcx
cmp byte [rax], 0
jne 0x14005cd38
mov ecx, dword [0x140252bb0]
mov eax, dword [0x140252bb4]
xor eax, 0x2d26899e
sub ecx, eax
mov r8d, 0x6ba4dce8
xor r8d, 0x69847f4c
mov eax, 0xdb266a09
xor eax, 0x24d995f6
xor r8d, eax
mov edx, ecx
and edx, r8d
mov eax, ecx
or eax, r8d
xor eax, 0xffffffff
imul eax, edx
mov edx, ecx
and edx, 0x220a3a4
or ecx, 0x220a3a4
imul ecx, edx
add ecx, eax
mov edx, 0x5cd766ac
xor edx, 0xa3289953
mov eax, ecx
xor eax, edx
mov edx, 0x56269911
xor edx, 0x87e35bd1
mov r8d, 0xb379c248
xor r8d, 0x4c863db7
xor edx, r8d
and eax, edx
or ecx, 0xd1c5c2c0
xor ecx, 0xffffffff
or eax, ecx
xor eax, 0xffffffff
mov ecx, 0x76728391
xor ecx, 0x76728391
mov edx, 0xa6351f93
xor edx, 0x1db38d21
sub ecx, edx
add eax, ecx
cmp eax, 0x9d7b6577
je 0x14005cd53
mov rdx, qword [rbp + 0x70]
mov r8, qword [rbp + 0xd8]
mov ecx, dword [0x140252bb8]
mov r9d, dword [0x140252bbc]
xor r9d, 0x1010e860
xor ecx, 0xffffffff
xor r9d, 0xffffffff
mov eax, 0xd92d8979
xor eax, 0xc57b7e31
mov r10d, 0xb0280a12
xor r10d, 0x4fd7f5ed
xor eax, r10d
or ecx, r9d
or eax, 0x1c56f748
xor ecx, 0xffffffff
and ecx, eax
mov eax, ecx
or eax, eax
xor eax, 0xffffffff
mov r9d, 0x107c8ea0
xor r9d, 0xdd745e61
mov r10d, 0x528aaa53
xor r10d, 0xad7555ac
xor r9d, r10d
mov r10d, 0x7ca1e6d5
xor r10d, 0xb1a93614
mov r11d, 0xa9b3b028
xor r11d, 0x564c4fd7
xor r10d, r11d
and r9d, r10d
or eax, r9d
xor eax, 0xffffffff
xor ecx, 0xffffffff
mov r9d, 0xffffffff
xor r9d, 0xcd08d0c1
and ecx, r9d
or eax, ecx
xor eax, 0xffffffff
or eax, 0x462292e9
and eax, 0xbbc9c698
mov ecx, 0x380546f0
xor ecx, 0xf6f0e8f0
movabs r9, 0xf1ff20a6663378eb
movabs r10, 0xf1ff20a6663378eb
xor r9, r10
mov qword [r8 + 0x10], r9
movabs r8, 0xbf735e68f28ec8e5
movabs r9, 0xbf735e68f28ec8e5
xor r8, r9
cmp rdx, r8
setl dl
mov byte [rbp + 0x6f], dl
cmp eax, ecx
je 0x14005c35a
mov al, byte [rbp + 0x6f]
test al, 1
jne 0x14005c471
jmp 0x14005c495
mov rcx, qword [rbp + 0x70]
xor eax, eax
mov edx, eax
movabs r8, 0x7fffffffffffffff
sub rsp, 0x20
call fcn.14000cee2
add rsp, 0x20
jmp 0x14005cd38
mov rcx, qword [rbp + 0xd8]
mov rdx, qword [rbp + 0x70]
sub rsp, 0x20
call fcn.140025691
mov rax, qword [rbp + 0xd8]
add rsp, 0x20
mov rax, qword [rax]
mov qword [rbp + 0x78], rax
mov rax, qword [rbp + 0x78]
mov qword [rbp + 0x60], rax
mov ecx, dword [0x140252bc0]
sub ecx, dword [0x140252bc4]
add ecx, 0xfdff523e
sub ecx, 0xeb2f3ca5
mov eax, 0xc40e3546
xor eax, 0x39f16778
sub ecx, eax
xor ecx, 0x1bc5dc3
mov eax, ecx
xor eax, 0xffffffff
mov edx, 0xa94bdf3e
xor edx, 0x6b769ef5
mov r8d, 0x4f252dc3
xor r8d, 0xb0dad23c
xor edx, r8d
and eax, edx
or ecx, 0xc23d41cb
mov edx, 0xd59520e4
xor edx, 0x2a6adf1b
xor ecx, edx
xor eax, 0xffffffff
mov edx, 0xc7bb2332
xor edx, 0x3844dccd
xor ecx, edx
and eax, ecx
mov ecx, 0xb666b9ad
xor ecx, 0x25b19f1c
cmp eax, ecx
je 0x14005cd5c
mov r8, qword [rbp + 0xc8]
mov rcx, qword [rbp + 0x60]
mov r10d, dword [0x140252bc8]
mov r9d, dword [0x140252bcc]
xor r9d, 0xc5659ffb
mov edx, r10d
xor edx, 0xffffffff
mov eax, 0xac388790
xor eax, 0x695798a9
and eax, edx
mov r11d, 0xffffffff
xor r11d, 0xc56f1f39
and r10d, r11d
mov edx, r9d
xor edx, 0xffffffff
and edx, 0xc56f1f39
and r9d, r11d
or eax, r10d
or edx, r9d
xor eax, edx
mov edx, 0xe24e734f
xor edx, 0xaeaca7f2
and eax, edx
mov r9d, 0x1593414a
xor r9d, 0x4d6baa4e
xor edx, edx
div r9d
mov edx, eax
mov rax, qword [rbp + 0xd8]
mov r9d, 0xffffffff
xor r9d, 0xbc7543c
add edx, r9d
mov r9d, 0x33baf42d
xor r9d, 0x33baf42c
add edx, r9d
mov dword [rbp + 0x58], edx
mov edx, 0xc6be2c65
xor edx, 0x24736ca7
mov dword [rbp + 0x54], edx
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
mov edx, 2
sub rsp, 0x20
call fcn.14004f720
mov ecx, dword [rbp + 0x54]
add rsp, 0x20
mov dl, al
mov eax, dword [rbp + 0x58]
mov byte [rbp + 0x5f], dl
cmp eax, ecx
jb 0x14005c547
mov al, byte [rbp + 0x5f]
test al, 1
jne 0x14005c753
jmp 0x14005c64c
mov rcx, qword [rbp + 0x48]
mov edx, 3
lea r8, [rbp + 0x128]
sub rsp, 0x20
call fcn.14004f720
add rsp, 0x20
test al, 1
jne 0x14005c753
mov rax, qword [rbp + 0xc8]
mov rcx, qword [rax]
xor eax, eax
cmp rcx, qword [rbp + 0x128]
mov byte [rbp + 0x37], al
jl 0x14005c775
mov r8, qword [rbp + 0x48]
mov rcx, qword [rbp + 0x60]
mov rdx, rcx
sub rdx, r8
mov qword [rbp + 0x28], rdx
mov rax, rdx
xor rax, rcx
cmp rax, 0
setl al
mov rcx, rdx
or rcx, rcx
movabs r9, 0xc913dae98f818a11
movabs r10, 0x36ec2516707e75ee
xor r9, r10
xor rcx, r9
mov r9, r8
xor r9, 0xffffffffffffffff
mov r10, r8
xor r10, 0xffffffffffffffff
and r9, r10
movabs r10, 0x3382873157e935c8
movabs r11, 0xcc7d78cea816ca37
xor r10, r11
xor rcx, r10
xor r9, 0xffffffffffffffff
and rcx, r9
or rdx, r8
xor rdx, 0xffffffffffffffff
movabs r8, 0x758c8496c629226f
movabs r9, 0x8a737b6939d6dd90
xor r8, r9
xor rcx, r8
xor rdx, 0xffffffffffffffff
and rcx, rdx
cmp rcx, 0xffffffffffffffff
setg dl
mov cl, al
xor cl, dl
xor cl, 0xff
or al, dl
and al, cl
test al, 1
jne 0x14005c753
mov rax, qword [rbp + 0x28]
cmp rax, 3
setg al
mov byte [rbp + 0x37], al
jmp 0x14005c775
sub rsp, 0x20
call fcn.140007e9d
mov rax, qword [rbp + 0xe0]
add rsp, 0x20
cmp byte [rax], 0
je 0x14005cc43
jmp 0x14005cd38
mov rax, qword [rbp + 0xe0]
mov cl, byte [rbp + 0x37]
mov al, byte [rax]
test al, al
setne al
mov byte [rbp + 0x27], al
or al, cl
test al, 1
jne 0x14005cc33
mov rcx, qword [rbp + 0xd8]
sub rsp, 0x20
call fcn.14005b4a0
mov rax, qword [rbp + 0xe0]
add rsp, 0x20
cmp byte [rax], 0
jne 0x14005cd38
mov rax, qword [rbp + 0xd0]
mov rcx, qword [rbp + 0xb8]
mov rdx, qword [rbp + 0x38]
mov r8, qword [rbp + 0xd8]
mov r9, qword [rbp + 0x120]
mov qword [rbp - 8], r9
mov r8, qword [r8]
mov qword [rbp + 8], r8
mov rdx, qword [rdx]
mov qword [rbp], rdx
mov rdx, qword [rcx]
mov qword [rax], rdx
mov rcx, qword [rcx + 8]
mov qword [rax + 8], rcx
sub rsp, 0x20
call fcn.14004e8b3
mov rcx, qword [rbp + 8]
add rsp, 0x20
mov qword [rbp + 0x10], rax
mov rax, 0xffffffffffffffff
cmp rcx, 0
mov qword [rbp + 0x18], rax
je 0x14005cc05
mov rdx, qword [rbp - 8]
mov rcx, qword [rbp + 8]
add rcx, 0xffffffffffffffff
mov qword [rbp - 0x18], rcx
mov rax, rcx
xor rax, 0xffffffffffffffff
movabs r9, 0x51a47a3637df5b35
movabs r8, 0xae5b85c9c820a4ca
xor r9, r8
mov r8, rdx
xor r8, r9
or rax, r8
xor rcx, 0xffffffffffffffff
xor rdx, 0xffffffffffffffff
or rcx, rdx
xor rax, 0xffffffffffffffff
xor rcx, 0xffffffffffffffff
or rax, rcx
mov qword [rbp - 0x10], rax
mov rdx, qword [rbp + 8]
mov rcx, qword [rbp - 0x10]
mov qword [rbp - 0x20], rcx
test rcx, rcx
setns al
sub rcx, rdx
setl cl
and al, cl
test al, 1
jne 0x14005c8b4
mov rdx, qword [rbp - 0x18]
mov rcx, qword [rbp - 0x20]
sub rsp, 0x20
call fcn.140013507
add rsp, 0x20
xor eax, eax
mov qword [rbp + 0x18], rax
jmp 0x14005cc05
mov ecx, dword [str.Fl_b]
mov edx, dword [0x140252bd4]
mov eax, ecx
and eax, edx
xor ecx, edx
or eax, ecx
imul eax, eax, 0xde8be123
mov ecx, eax
xor ecx, 0x3ab8d9f3
xor ecx, 0xffffffff
and ecx, 0x3ab8d9f3
shl ecx, 1
sub ecx, 0x3ab8d9f3
sub eax, ecx
mov edx, 0xeb4a7b5f
xor edx, 0x14b584a0
mov ecx, eax
xor ecx, edx
mov edx, 0xfe502a8
xor edx, 0x6bb1cb13
and ecx, edx
mov edx, 0xffffffff
xor edx, 0x6454c9bb
and eax, edx
sub eax, ecx
cmp eax, 0xaf6d494f
ja 0x14005cd65
mov rcx, qword [rbp + 0x10]
mov rdx, qword [rbp]
mov r8, qword [rbp - 0x20]
xor eax, eax
shl r8, 5
mov rdx, qword [rdx + r8 + 8]
mov qword [rbp - 0x30], rdx
test rdx, rdx
sete dl
mov r8b, byte [rcx]
test r8b, r8b
setne cl
or cl, dl
mov byte [rbp - 0x25], cl
mov ecx, 6
mov edx, 3
cmp r8b, 0
cmovne ecx, edx
mov dword [rbp - 0x24], ecx
cmp eax, 0xd866fdb8
jae 0x14005c920
mov eax, dword [rbp - 0x24]
mov rcx, qword [rbp - 0x20]
mov dl, byte [rbp - 0x25]
test dl, 1
mov qword [rbp - 0x40], rcx
mov dword [rbp - 0x34], eax
jne 0x14005cbbb
jmp 0x14005c98d
mov eax, dword [0x140252be0]
mov edx, dword [0x140252be4]
mov ecx, eax
and ecx, edx
shl ecx, 1
add eax, edx
sub eax, ecx
mov edx, eax
xor edx, 0xffffffff
and edx, 0x75683367
mov r8d, 0xffffffff
xor r8d, 0x75683367
mov ecx, eax
and ecx, r8d
imul ecx, edx
mov edx, eax
and edx, 0x75683367
or eax, 0x75683367
imul eax, edx
add eax, ecx
add eax, 0x76388d8c
mov ecx, 0x7b8647f1
xor ecx, 0x8479b80e
xor eax, ecx
mov edx, 0x6ac22b3e
xor edx, 0xc530d50a
mov ecx, 0x755060f8
xor ecx, 0x8aaf9f07
xor edx, ecx
mov ecx, 0x606e9874
xor ecx, 0x7a03621f
mov r8d, 0x4bb1cfd3
xor r8d, 0xb44e302c
xor ecx, r8d
or eax, edx
or ecx, 0x1a6dfa6b
mov edx, 0xcc372db4
xor edx, 0x33c8d24b
xor eax, edx
and eax, ecx
cmp eax, 0x826f8652
je 0x14005cd6e
mov rcx, qword [rbp - 0x30]
mov eax, dword [0x140252be8]
xor eax, 0xdb111e60
mov r8d, dword [0x140252bec]
mov edx, 0x960591da
xor edx, 0xf8e84f7c
xor r8d, edx
xor edx, edx
div r8d
mov r8d, 0xed5a5d7d
xor r8d, 0x33f7cf4b
xor edx, edx
div r8d
mov rdx, qword [rbp - 8]
mov r8d, 0xc34abcd1
xor r8d, 0xd7b1ab43
add eax, r8d
sub eax, 0xb11550dd
sub eax, 0x14fb1792
mov r8d, eax
xor r8d, 0xffffffff
mov r9d, 0xe7d42449
xor r9d, 0xea19561a
and r9d, r8d
mov r10d, 0xffffffff
xor r10d, 0xdcd7253
mov r8d, eax
and r8d, r10d
imul r8d, r9d
mov r10d, 0xe079eff8
xor r10d, 0xedb49dab
mov r9d, eax
and r9d, r10d
or eax, 0xdcd7253
imul eax, r9d
add eax, r8d
cmp rcx, rdx
sete cl
mov byte [rbp - 0x41], cl
cmp eax, 0xfee01a52
jae 0x14005ca3d
mov al, byte [rbp - 0x41]
test al, 1
jne 0x14005cb07
jmp 0x14005cb7d
mov rdx, qword [rbp - 0x20]
mov rax, qword [rbp + 0xd0]
mov rcx, qword [rbp]
add rcx, 8
shl rdx, 5
add rcx, rdx
add rcx, 8
mov rdx, qword [rcx]
mov qword [rbp + 0x140], rdx
mov rcx, qword [rcx + 8]
mov qword [rbp + 0x148], rcx
mov rcx, qword [rax]
mov qword [rbp + 0x130], rcx
mov rax, qword [rax + 8]
mov qword [rbp + 0x138], rax
lea rcx, [rbp + 0x140]
lea rdx, [rbp + 0x130]
sub rsp, 0x20
call fcn.1400640b0
add rsp, 0x20
mov cl, al
mov rax, qword [rbp - 0x20]
test cl, 1
mov qword [rbp + 0x18], rax
jne 0x14005cc05
mov rdx, qword [rbp - 0x18]
mov rcx, qword [rbp - 0x20]
sub rsp, 0x20
call fcn.14004fa4c
add rsp, 0x20
mov rdx, rax
mov rax, qword [rbp + 0x10]
mov r8b, byte [rax]
mov r9b, 0x7c
xor r9b, 0x7c
xor ecx, ecx
xor eax, eax
cmp r8b, r9b
mov qword [rbp - 0x40], rdx
mov dword [rbp - 0x34], ecx
mov qword [rbp + 0x18], rax
jne 0x14005cc05
mov rax, qword [rbp - 0x40]
mov ecx, dword [rbp - 0x34]
mov dword [rbp - 0x5c], ecx
mov qword [rbp - 0x58], rax
xor edx, edx
mov qword [rbp - 0x50], rdx
test ecx, ecx
mov qword [rbp - 0x10], rax
je 0x14005c872
jmp 0x14005cbe0
mov rax, qword [rbp - 0x50]
mov ecx, dword [rbp - 0x5c]
sub ecx, 6
mov qword [rbp + 0x18], rax
jne 0x14005cc05
jmp 0x14005cbf9
mov rax, qword [rbp - 0x58]
xor rax, 0xffffffffffffffff
mov qword [rbp + 0x18], rax
mov rcx, qword [rbp - 8]
mov rdx, qword [rbp + 0xe0]
mov rax, qword [rbp + 0x18]
mov dl, byte [rdx]
mov r8b, 1
xor r8b, 1
cmp dl, r8b
mov qword [rbp - 0x70], rcx
mov qword [rbp - 0x68], rax
je 0x14005cc59
jmp 0x14005cd38
mov al, byte [rbp + 0x27]
test al, 1
jne 0x14005cd38
jmp 0x14005cc43
mov rax, qword [rbp + 0x98]
mov rcx, qword [rbp + 0x120]
mov qword [rbp - 0x70], rcx
mov qword [rbp - 0x68], rax
mov r9, qword [rbp + 0xb0]
mov rdx, qword [rbp + 0xd8]
mov rcx, qword [rbp + 0xb8]
mov r10, qword [rbp - 0x70]
mov rax, qword [rbp - 0x68]
xor rax, 0xffffffffffffffff
mov r8, qword [rcx]
mov qword [rbp + 0xe8], r8
mov rcx, qword [rcx + 8]
mov qword [rbp + 0xf0], rcx
lea r8, [rbp + 0xe8]
sub rsp, 0x30
mov qword [rsp + 0x20], r10
mov qword [rsp + 0x28], rax
call fcn.14005b309
mov rax, qword [rbp + 0xe0]
add rsp, 0x30
cmp byte [rax], 0
jne 0x14005cd38
mov rax, qword [rbp + 0x40]
mov rcx, qword [rax]
mov rdx, rcx
and rdx, 1
movabs rax, 0x7ea5f84fd454b537
movabs r8, 0x7ea5f84fd454b535
xor rax, r8
imul rdx, rax
mov rax, rcx
xor rax, 1
add rax, rdx
mov qword [rbp - 0x78], rax
movabs rdx, 0xdc6d042fb45e861a
movabs r8, 0x2392fbd04ba179e5
xor rdx, r8
xor rcx, rdx
and rax, rcx
cmp rax, 0
jge 0x14005cd2d
sub rsp, 0x20
call fcn.140007e9d
add rsp, 0x20
jmp 0x14005cd38
mov rax, qword [rbp + 0x40]
mov rcx, qword [rbp - 0x78]
mov qword [rax], rcx
lea rsp, [rbp + 0x150]
pop rbp
ret
stc
popfq
adc al, 0xe9
adc dl, dh
invalid
xchg ecx, eax
pop rsp
lea esp, [rsi - 0x17]
outsb dx, byte [rsi]
hlt
fistp qword [rsi + 0x27]
enter 0xfffffffffffffee9, 0xfffffffffffffff5
invalid
or al, 0
int1
push rsi
jmp 0x14005c547
invalid
cmp ebx, dword [rcx + 0x21]
scasb al, byte [rdi]
jmp 0x14005ca3d