Function at 0x434430
Capabilities:
Encode data using xor

Disassembly:
push r14
push rsi
push rdi
push rbp
push rbx
sub rsp, 0x40
mov eax, dword [rcx + 0x30]
test eax, eax
jne 0x4344b5
mov edi, edx
mov rsi, rcx
cmp qword [rcx + 0x128], 0
je 0x4344c0
cmp byte [rsi + 0xb], 0
jne 0x434472
mov rax, qword [rsi + 0x50]
cmp qword [rax], 0
je 0x43446a
cmp byte [rsi + 9], 4
jne 0x434509
mov rax, qword [rsi + 0x60]
mov qword [rsi + 0x68], rax
mov rax, qword [rsi + 0x120]
mov rcx, qword [rax]
test rcx, rcx
je 0x4344a7
nop word cs:[rax + rax]
nop
mov ebp, dword [rcx + 0x34]
mov edx, ebp
xor edx, 8
and edx, ebp
mov word [rcx + 0x34], dx
mov rcx, qword [rcx + 0x38]
test rcx, rcx
jne 0x434490
mov rcx, qword [rax + 8]
mov qword [rax + 0x10], rcx
mov byte [rsi + 0x15], 4
xor eax, eax
add rsp, 0x40
pop rbx
pop rbp
pop rdi
pop rsi
pop r14
ret
movzx eax, byte [rsi + 0x16]
cmp al, 4
jae 0x434500
cmp byte [rsi + 0x11], 0
jne 0x434532
mov rcx, qword [rsi + 0x48]
mov rax, qword [rcx]
mov edx, 4
call qword [rax + 0x38]
cmp eax, 5
jne 0x43452e
mov rcx, qword [rsi + 0xf0]
call qword [rsi + 0xe8]
test eax, eax
jne 0x4344c0
jmp 0x43453b
cmp al, 5
je 0x4344c8
jmp 0x434450
mov rcx, qword [rsi + 0x48]
mov rdx, qword [rcx]
test rdx, rdx
je 0x434545
call qword [rdx + 0x60]
mov ebp, eax
not eax
or eax, 0xfffffdff
mov bl, 1
cmp eax, 0xffffffff
jne 0x43462b
jmp 0x434547
test eax, eax
jne 0x4344b5
mov byte [rsi + 0x16], 4
jmp 0x434450
mov eax, 5
jmp 0x4344b5
xor ebp, ebp
movabs r14, 0xd763a120f905d5d9
mov qword [rsp + 0x28], r14
mov eax, dword [rsi + 0x34]
bswap eax
mov dword [rsp + 0x30], eax
mov rax, qword [rsi + 0x60]
test rax, rax
je 0x434585
mov ecx, dword [rsi + 0xb8]
add rax, 0xffffffffffffffff
mov rdx, rax
shr rdx, 0x20
je 0x434589
cqo
idiv rcx
mov rbx, rax
jmp 0x43458f
xor ebx, ebx
jmp 0x434597
xor edx, edx
div ecx
mov ebx, eax
add rbx, 1
imul rbx, rcx
mov rcx, qword [rsi + 0x50]
mov rax, qword [rcx]
lea rdx, [rsp + 0x38]
mov r8d, 8
mov r9, rbx
call qword [rax + 0x10]
test eax, eax
je 0x4345c3
cmp eax, 0x20a
je 0x4345ce
test eax, eax
je 0x4345ce
jmp 0x4344b5
cmp qword [rsp + 0x38], r14
je 0x4346bd
cmp byte [rsi + 0xc], 0
sete cl
mov eax, ebp
not eax
or eax, 0xfffffbff
cmp eax, 0xffffffff
sete dl
cmp dl, cl
je 0x434608
not eax
test eax, eax
jne 0x434608
movzx edx, byte [rsi + 0xe]
test edx, edx
je 0x434608
mov rcx, qword [rsi + 0x50]
mov rax, qword [rcx]
call qword [rax + 0x28]
test eax, eax
jne 0x4344b5
mov rcx, qword [rsi + 0x50]
mov r9, qword [rsi + 0x68]
mov rax, qword [rcx]
lea rdx, [rsp + 0x28]
mov r8d, 0xc
call qword [rax + 0x18]
test eax, eax
jne 0x4344b5
xor ebx, ebx
mov eax, ebp
xor eax, 0xfffffbff
test eax, ebp
je 0x434675
mov rax, qword [rsi + 0x60]
mov qword [rsi + 0x68], rax
test edi, edi
setne al
sete cl
xor cl, bl
jne 0x434472
xor bl, 1
or al, bl
je 0x434472
mov dword [rsi + 0x34], 0
mov rcx, rsi
call fcn.004376c0
test eax, eax
jne 0x4344b5
jmp 0x434472
movzx ebp, byte [rsi + 0xe]
xor ecx, ecx
cmp ebp, 3
sete cl
shl ecx, 4
mov edx, ecx
not edx
mov eax, ebp
not eax
or edx, eax
and eax, 0xc2f69608
and ebp, 0xfffffff7
or ebp, eax
or ecx, 0xc2f69608
xor ecx, ebp
not edx
or edx, ecx
je 0x434636
mov rcx, qword [rsi + 0x50]
mov rax, qword [rcx]
call qword [rax + 0x28]
test eax, eax
jne 0x4344b5
jmp 0x434636
mov rcx, qword [rsi + 0x50]
mov rax, qword [rcx]
lea rdx, [0x005fc333]
mov r8d, 1
mov r9, rbx
call qword [rax + 0x18]
cmp eax, 0x20a
jne 0x4345ba
jmp 0x4345ce