Function at 0x140045500
Capabilities:
Encrypt data using rc4 prga

Disassembly:
mov qword [rsp + 8], rbx
push rdi
sub rsp, 0x20
mov rdi, rcx
mov rbx, r8
mov rcx, qword [rcx + 0x10]
mov rax, qword [rcx + 0x10]
test rax, rax
je 0x14004554e
cmp qword [rcx + 0x18], 0x10
jb 0x140045527
mov rcx, qword [rcx]
lea r9, str.ygx_kservice.msg.CMD_KSVR_MNG_NODEROPORTINFO_request.servername
mov r8d, 1
mov edx, eax
call fcn.1400ed210
mov rcx, qword [rdi + 0x10]
lea rdx, [rbx + 1]
mov byte [rbx], 0xa
call fcn.1400ceec0
mov rbx, rax
mov rcx, qword [rdi + 0x18]
mov rax, qword [rcx + 0x10]
test rax, rax
je 0x14004558c
cmp qword [rcx + 0x18], 0x10
jb 0x140045565
mov rcx, qword [rcx]
lea r9, str.ygx_kservice.msg.CMD_KSVR_MNG_NODEROPORTINFO_request.serverver
mov r8d, 1
mov edx, eax
call fcn.1400ed210
mov rcx, qword [rdi + 0x18]
lea rdx, [rbx + 1]
mov byte [rbx], reloc.WS2_32.dll_select
call fcn.1400ceec0
mov rbx, rax
mov ecx, dword [rdi + 0x40]
test ecx, ecx
je 0x1400455bb
mov byte [rbx], 0x18
inc rbx
cmp ecx, 0x80
jb 0x1400455b6
movzx eax, cl
shr ecx, 7
or al, 0x80
mov byte [rbx], al
inc rbx
cmp ecx, 0x80
jae 0x1400455a1
mov byte [rbx], cl
inc rbx
mov rcx, qword [rdi + 0x20]
mov rax, qword [rcx + 0x10]
test rax, rax
je 0x1400455f9
cmp qword [rcx + 0x18], 0x10
jb 0x1400455d2
mov rcx, qword [rcx]
lea r9, str.ygx_kservice.msg.CMD_KSVR_MNG_NODEROPORTINFO_request.mainboard
mov r8d, 1
mov edx, eax
call fcn.1400ed210
mov rcx, qword [rdi + 0x20]
lea rdx, [rbx + 1]
mov byte [rbx], 0x22
call fcn.1400ceec0
mov rbx, rax
mov rcx, qword [rdi + 0x28]
mov rax, qword [rcx + 0x10]
test rax, rax
je 0x140045637
cmp qword [rcx + 0x18], 0x10
jb 0x140045610
mov rcx, qword [rcx]
lea r9, str.ygx_kservice.msg.CMD_KSVR_MNG_NODEROPORTINFO_request.cputype
mov r8d, 1
mov edx, eax
call fcn.1400ed210
mov rcx, qword [rdi + 0x28]
lea rdx, [rbx + 1]
mov byte [rbx], 0x2a
call fcn.1400ceec0
mov rbx, rax
mov ecx, dword [rdi + 0x44]
test ecx, ecx
je 0x14004566a
mov byte [rbx], 0x30
inc rbx
cmp ecx, 0x80
jb 0x140045665
nop dword [rax]
movzx eax, cl
shr ecx, 7
or al, 0x80
mov byte [rbx], al
inc rbx
cmp ecx, 0x80
jae 0x140045650
mov byte [rbx], cl
inc rbx
mov rcx, qword [rdi + 0x30]
mov rax, qword [rcx + 0x10]
test rax, rax
je 0x1400456a8
cmp qword [rcx + 0x18], 0x10
jb 0x140045681
mov rcx, qword [rcx]
lea r9, str.ygx_kservice.msg.CMD_KSVR_MNG_NODEROPORTINFO_request.netcard
mov r8d, 1
mov edx, eax
call fcn.1400ed210
mov rcx, qword [rdi + 0x30]
lea rdx, [rbx + 1]
mov byte [rbx], 0x3a
call fcn.1400ceec0
mov rbx, rax
mov ecx, dword [rdi + 0x48]
test ecx, ecx
je 0x1400456da
mov byte [rbx], 0x40
inc rbx
cmp ecx, 0x80
jb 0x1400456d5
nop dword [rax]
movzx eax, cl
shr ecx, 7
or al, 0x80
mov byte [rbx], al
inc rbx
cmp ecx, 0x80
jae 0x1400456c0
mov byte [rbx], cl
inc rbx
mov rcx, qword [rdi + 0x38]
mov rax, qword [rcx + 0x10]
test rax, rax
je 0x140045718
cmp qword [rcx + 0x18], 0x10
jb 0x1400456f1
mov rcx, qword [rcx]
lea r9, str.ygx_kservice.msg.CMD_KSVR_MNG_NODEROPORTINFO_request.osver
mov r8d, 1
mov edx, eax
call fcn.1400ed210
mov rcx, qword [rdi + 0x38]
lea rdx, [rbx + 1]
mov byte [rbx], 0x4a
call fcn.1400ceec0
mov rbx, rax
mov ecx, dword [rdi + 0x4c]
test ecx, ecx
je 0x14004574a
mov byte [rbx], 0x50
inc rbx
cmp ecx, 0x80
jb 0x140045745
nop dword [rax]
movzx eax, cl
shr ecx, 7
or al, 0x80
mov byte [rbx], al
inc rbx
cmp ecx, 0x80
jae 0x140045730
mov byte [rbx], cl
inc rbx
test byte [rdi + 8], 1
je 0x140045773
cmp byte [0x14024a158], 0
je 0x140045773
mov rcx, qword [rdi + 8]
mov rdx, rbx
and rcx, 0xfffffffffffffffe
mov rbx, qword [rsp + 0x30]
add rsp, 0x20
pop rdi
jmp fcn.1400ea080
mov rax, rbx
mov rbx, qword [rsp + 0x30]
add rsp, 0x20
pop rdi
ret