Function at 0x140057df0
Capabilities:
Encode data using xor

Disassembly:
push rbp
sub rsp, 0x50
lea rbp, [rsp + 0x50]
mov qword [rbp - 8], rcx
mov eax, dword [0x140218be0]
mov edx, dword [0x140218be4]
mov ecx, 0x5e721f28
xor ecx, 0x49474756
xor edx, ecx
mov ecx, eax
add ecx, 1
xor eax, 0xffffffff
or eax, edx
add eax, ecx
mov ecx, 0xb249e5e5
xor ecx, 0x5a45fbb2
xor eax, ecx
mov edx, eax
xor edx, 0xffffffff
and edx, 0x2e8c2adb
mov r8d, 0x47c0671c
xor r8d, 0x694c4dc7
mov ecx, 0xbbca8253
xor ecx, 0x44357dac
xor r8d, ecx
mov ecx, eax
and ecx, r8d
imul ecx, edx
mov r8d, 0x5d5c21d9
xor r8d, 0x73d00b02
mov edx, eax
and edx, r8d
or eax, 0x2e8c2adb
imul eax, edx
add eax, ecx
mov ecx, 0x94a3bd7
xor ecx, 0x8c6b3989
mov edx, 0x8cdc29ca
xor edx, 0x7323d635
xor ecx, edx
xor edx, edx
sub edx, 1
sub ecx, edx
sub eax, ecx
mov ecx, 0xce4a8b9e
xor ecx, 0x4cbeba67
cmp eax, ecx
jae 0x140058246
mov eax, dword [0x140218be8]
mov ecx, dword [0x140218bec]
xor ecx, 0x46a9d7b
and eax, ecx
add eax, 0x877d2423
and eax, 0x7ed2ea3
mov dword [rbp - 0x10], eax
mov eax, 0x20
mov qword [rbp - 0x30], rax
call fcn.140215890
sub rsp, rax
mov rax, qword [rbp - 0x30]
mov rcx, rsp
mov qword [rbp - 0x28], rcx
call fcn.140215890
sub rsp, rax
mov rax, rsp
mov qword [rbp - 0x20], rax
sub rsp, 0x20
call fcn.14004e61c
add rsp, 0x20
mov qword [rbp - 0x18], rax
xor eax, eax
mov ecx, eax
sub rsp, 0x20
call fcn.140057590
mov rcx, qword [rbp - 0x18]
mov eax, dword [rbp - 0x10]
add rsp, 0x20
mov cl, byte [rcx]
mov dl, 0x42
xor dl, 0x42
cmp cl, dl
sete cl
mov byte [rbp - 9], cl
cmp eax, 0x3ca730e1
je 0x140057eae
mov cl, byte [rbp - 9]
xor eax, eax
test cl, 1
mov qword [rbp - 0x38], rax
jne 0x140057f54
jmp 0x140058157
mov ecx, 0x18
mov edx, 8
sub rsp, 0x20
call fcn.140015160
mov rcx, qword [rbp - 0x28]
mov rdx, qword [rbp - 8]
add rsp, 0x20
mov qword [rbp - 0x40], rax
sub rsp, 0x20
call fcn.140057c60
mov rcx, qword [rbp - 0x18]
mov rax, qword [rbp - 0x40]
add rsp, 0x20
mov cl, byte [rcx]
mov dl, 0x14
xor dl, 0x14
cmp cl, dl
mov qword [rbp - 0x38], rax
jne 0x140058157
mov eax, dword [0x140218bf0]
or eax, dword [0x140218bf4]
mov ecx, 0x4f2c3a64
xor ecx, 0x4af2649f
and eax, ecx
imul eax, eax, 0x60c47974
imul eax, eax, 0x7dc79cc7
cmp eax, 0x48a7583e
jae 0x14005824f
mov rdx, qword [rbp - 0x20]
mov rcx, qword [rbp - 0x40]
mov rax, qword [rbp - 0x28]
mov r9d, dword [0x140218bf8]
mov r10d, dword [0x140218bfc]
mov r11d, 0x61c2439d
xor r11d, 0x61c2439c
mov r8d, r9d
add r8d, r11d
mov r11d, 0x552cc91a
xor r11d, 0xaad336e5
xor r9d, r11d
or r9d, r10d
add r9d, r8d
mov r10d, r9d
xor r10d, 0xffffffff
and r10d, 0x987ff2d0
mov r11d, 0xd4d6b609
xor r11d, 0x4ca944d9
mov r8d, 0x2e38c1c7
xor r8d, 0xd1c73e38
xor r11d, r8d
mov r8d, r9d
and r8d, r11d
imul r8d, r10d
mov r10d, r9d
and r10d, 0x987ff2d0
mov r11d, 0x45d7c58c
xor r11d, 0xdda8375c
or r9d, r11d
imul r9d, r10d
add r9d, r8d
mov r8d, r9d
xor r8d, 0xffffffff
mov r11d, 0x35b59666
xor r11d, 0xca4a6999
mov r10d, r9d
xor r10d, r11d
and r8d, r10d
mov r10d, 0x586386e8
or r10d, 0x586386e8
xor r10d, 0xffffffff
xor r8d, 0xffffffff
xor r10d, 0xffffffff
and r8d, r10d
or r9d, 0x586386e8
xor r9d, 0xffffffff
xor r8d, 0xffffffff
xor r9d, 0xffffffff
and r8d, r9d
mov r10d, r8d
xor r10d, 0xffffffff
and r10d, 0xa8b2fa4a
mov r11d, 0x8384970
xor r11d, 0xa08ab33a
mov r9d, 0x489f20
xor r9d, 0xffb760df
xor r11d, r9d
mov r9d, r8d
and r9d, r11d
imul r9d, r10d
mov r10d, r8d
and r10d, 0xa8b2fa4a
or r8d, 0xa8b2fa4a
imul r8d, r10d
add r8d, r9d
mov dword [rbp - 0x44], r8d
mov r8d, 0xa202d6fc
xor r8d, 0x8fd82c4d
mov dword [rbp - 0x48], r8d
mov r8, qword [rax]
mov qword [rdx], r8
mov r8, qword [rax + 8]
mov qword [rdx + 8], r8
mov rax, qword [rax + 0x10]
mov qword [rdx + 0x10], rax
sub rsp, 0x20
call fcn.140057820
mov ecx, dword [rbp - 0x48]
mov eax, dword [rbp - 0x44]
add rsp, 0x20
cmp eax, ecx
jb 0x140057fcf
mov rax, qword [rbp - 0x40]
mov qword [rbp - 0x38], rax
jmp 0x140058157
mov rax, qword [rbp - 0x38]
mov qword [rbp - 0x50], rax
mov edx, dword [0x140218c00]
xor edx, 0x53296c62
mov ecx, dword [0x140218c04]
xor ecx, 0x45fae118
mov eax, edx
add eax, 1
xor edx, 0xffffffff
or edx, ecx
add edx, eax
or edx, 0x169cdc0f
sub edx, 0x999a365
mov eax, 0xbdf180a7
xor eax, 0x6505df4d
mov ecx, edx
xor ecx, eax
mov eax, 0xffffffff
xor eax, 0xd8f45fea
and edx, eax
mov eax, 0x4ad23466
xor eax, 0x4ad23464
imul eax, edx
sub eax, ecx
cmp eax, 0xa41e3c6a
je 0x140058258
mov eax, dword [0x140218c08]
or eax, dword [0x140218c0c]
or eax, 0x33b714ab
mov ecx, 0x52d39d21
xor ecx, 0x190607b9
mov edx, 0x8b6ea164
xor edx, 0x74915e9b
xor ecx, edx
add eax, ecx
add eax, 1
mov r8d, 0xffffffff
xor r8d, 0x6488951c
mov edx, eax
and edx, r8d
mov ecx, eax
or ecx, r8d
xor ecx, 0xffffffff
imul ecx, edx
mov r8d, 0x6d7f06d3
xor r8d, 0x9f793cf
mov edx, eax
and edx, r8d
or eax, 0x6488951c
imul eax, edx
add eax, ecx
mov ecx, 0xede26efb
xor ecx, 0xe6da47f2
cmp eax, ecx
je 0x1400581c3
mov rax, qword [rbp - 0x50]
mov rsp, rbp
pop rbp
ret
push rsi
invalid
retf
mov dl, 0x6b
imul ecx, dword [rcx + rbp*8], 0xffffff62
nop word cs:[rax + rax]