Function at 0x140004dc0
Capabilities:
Access peb ldr_data
Encode data using xor

Disassembly:
mov qword [rsp + 8], rcx
push rbp
push rbx
push rsi
push rdi
push r12
push r13
push r14
push r15
lea rbp, [rsp - 0x1f]
sub rsp, 0xd8
xor r13d, r13d
mov dword [rsp + 0x20], 0x3f793e28
mov dword [rsp + 0x24], 0x676b3049
mov dword [rsp + 0x28], 0x6e71693c
mov dword [rsp + 0x2c], 0x72674362
mov dword [rsp + 0x30], 0x72284f57
lea r15d, [r13 + 1]
mov word [rsp + 0x34], 0x35
mov dword [rsp + 0x38], 0x65006b
mov dword [rbp - 0x7d], 0x6e0072
mov dword [rbp - 0x79], 0x6c0065
mov dword [rbp - 0x75], 0x320033
mov dword [rbp - 0x71], 0x64002e
mov dword [rbp - 0x6d], 0x6c006c
mov word [rbp - 0x69], r13w
mov edx, 0x3d090c
mov eax, r13d
lea rcx, [rbp - 0x59]
mov byte [rcx], al
add eax, r15d
add rcx, r15
cmp eax, 0x6a
jb 0x140004da6
sub rdx, r15
jne 0x140004d9f
cmp byte [rbp - 0x29], 0x30
jne 0x140004e83
add byte [rax], al
mov rax, qword gs:[0x60]
mov rcx, qword [rax + 0x18]
mov rbx, qword [rcx + 0x10]
mov rdx, rbx
mov rcx, qword [rdx + 0x60]
mov r9d, r13d
mov rax, rcx
cmp word [rcx], r13w
je 0x140004df3
lea rax, [rax + 2]
add r9d, r15d
cmp word [rax], r13w
jne 0x140004de6
lea rax, [rsp + 0x38]
mov r8d, r13d
lea rax, [rax + 2]
add r8d, r15d
cmp word [rax], r13w
jne 0x140004dfb
cmp r9d, r8d
jne 0x140004e6c
lea r11, [rsp + 0x38]
mov r10d, r13d
sub r11, rcx
movzx r8d, word [rcx]
mov rax, rcx
mov r9d, r13d
test r8w, r8w
je 0x140004e7d
lea rax, [rax + 2]
add r9d, r15d
cmp word [rax], r13w
jne 0x140004e28
cmp r10d, r9d
jae 0x140004e7d
movzx r9d, word [r11 + rcx]
lea eax, [r8 - 0x41]
cmp ax, 0x19
ja 0x140004e4e
add r8w, 0x20
lea eax, [r9 - 0x41]
cmp ax, 0x19
ja 0x140004e5d
add r9w, 0x20
cmp r8w, r9w
jne 0x140004e6c
add r10d, r15d
add rcx, 2
jmp 0x140004e18
mov rdx, qword [rdx]
cmp rdx, rbx
jne 0x140004dd6
mov rbx, r13
jmp 0x140004e87
mov rbx, qword [rdx + 0x30]
jmp 0x140004e87
mov rbx, qword [rbp + 0x67]
mov edx, 0xe3142
mov rcx, rbx
call fcn.14000527b
mov edx, 0xd5786
mov rcx, rbx
mov rdi, rax
call fcn.14000527b
mov edx, 0x348bfa
mov rcx, rbx
mov qword [rbp - 0x61], rax
call fcn.14000527b
mov r12d, 0x3000
mov r9d, 4
mov edx, 0x1ec00
xor ecx, ecx
mov r8d, r12d
mov qword [rbp + 0x7f], rax
call rdi
movsx r8d, byte [rbp - 0x59]
mov r14, rax
movsx r9, byte [rbp - 0x59]
mov eax, 0x92f11385
mov r10d, r13d
imul r8d
movsx eax, byte [rbp - 0x36]
add edx, r8d
sar edx, 7
mov ecx, edx
shr ecx, 0x1f
add edx, ecx
imul ecx, r8d, 0xfffffeaa
mov r8d, 0x66666667
imul edx, eax
imul eax, edx, 0xe
movsxd rbx, eax
mov eax, r8d
imul ecx
sar edx, 1
mov eax, edx
shr eax, 0x1f
add edx, eax
mov eax, r8d
imul edx
sar edx, 1
mov eax, edx
shr eax, 0x1f
add edx, eax
mov eax, r8d
imul edx
sar edx, 1
mov eax, edx
shr eax, 0x1f
add edx, eax
mov eax, r8d
imul edx
mov eax, r8d
sar edx, 1
mov ecx, edx
shr ecx, 0x1f
add edx, ecx
imul edx
mov eax, r8d
sar edx, 1
mov ecx, edx
shr ecx, 0x1f
add edx, ecx
imul edx
mov ecx, edx
sar ecx, 1
mov eax, ecx
shr eax, 0x1f
add ecx, eax
mov eax, 0xbfa02fe9
imul ecx
add edx, ecx
sar edx, 8
mov eax, edx
shr eax, 0x1f
add edx, eax
movsxd r11, edx
imul rax, r9, 0xd7c
movsx rsi, byte [rbp - 0x58]
sub r11, rax
movabs rax, resource.1
add r11, r14
add r9, rax
movsxd rcx, r10d
movabs rax, 0x2e8ba2e8ba2e8ba3
add r10d, r15d
mul rcx
shr rdx, 2
imul rax, rdx, 0x16
sub rcx, rax
add rcx, rbx
mov al, byte [rsp + rcx + 0x20]
xor al, byte [r9]
add r9, rsi
mov byte [r11], al
add r11, r15
cmp r10d, 0x1ec00
jb 0x140004f9b
movsxd rax, dword [r14 + 0x3c]
movsx r9d, byte [rbp - 0x51]
mov r8d, r12d
mov edx, dword [rax + r14 + 0x50]
shl r9d, 3
xor ecx, ecx
call rdi
mov rbx, rax
test rax, rax
je 0x140005262
movsxd rdi, dword [r14 + 0x3c]
mov r12, rax
mov r8d, r13d
add rdi, r14
sub r12, qword [rdi + 0x30]
mov r9d, dword [rdi + 0x54]
movzx r10d, word [rdi + 0x14]
mov qword [rbp + 0x6f], r12
mov qword [rdi + 0x30], rax
test r9, r9
je 0x14000503d
mov rdx, r14
mov rcx, rax
sub rdx, rax
mov al, byte [rdx + rcx]
add r8d, r15d
mov byte [rcx], al
movsxd rax, r8d
add rcx, r15
cmp rax, r9
jb 0x14000502a
mov rax, qword [rdi + 0xb0]
mov rcx, qword [rdi + 0x90]
mov r15, r13
mov esi, r13d
mov qword [rbp + 0x77], rax
cmp r13w, word [rdi + 6]
jae 0x140005262
lea r9, [r10 + 0x24]
mov r12d, esi
add r9, rdi
mov r10d, dword [r9]
cmp eax, r10d
jb 0x140005082
mov r8d, dword [r9 - 4]
add r8d, r10d
cmp eax, r8d
jae 0x140005082
lea r15, [r9 - 0xc]
cmp ecx, r10d
jb 0x140005097
mov r8d, dword [r9 - 4]
add r8d, r10d
cmp ecx, r8d
jae 0x140005097
lea r12, [r9 - 0xc]
mov r11d, dword [r9 + 8]
mov r13d, dword [r9 + 4]
lea r8, [rbx + r10]
add r11, r14
xor r10d, r10d
test r13, r13
je 0x1400050c6
sub r11, r8
mov dl, byte [r11 + r8]
inc r10d
mov byte [r8], dl
movsxd rdx, r10d
inc r8
cmp rdx, r13
jb 0x1400050b1
movzx edx, word [rdi + 6]
inc esi
add r9, 0x28
cmp esi, edx
jl 0x14000506a
test r12, r12
mov r12, qword [rbp + 0x6f]
je 0x140005262
mov r13d, dword [rbp + 0x7b]
xor edx, edx
test r13, r13
je 0x14000519b
mov r9d, dword [r15 + 0x14]
add r9, rdx
add rdx, 8
mov r8d, dword [r9 + r14 + 4]
sub r8, 8
shr r8, 1
je 0x140005192
mov eax, dword [r15 + 0x14]
add rax, rdx
add rdx, 2
movzx r10d, word [rax + r14]
mov eax, 0xf000
test ax, r10w
je 0x140005189
mov ecx, dword [r9 + r14]
and qword [rbp + 0x67], 0
and r10d, 0xfff
lea rax, [rbx + r10]
xor r11d, r11d
lea r10, [rbp + 0x67]
add rcx, rax
lea rax, [rbp + 0x67]
mov rsi, rcx
sub rsi, rax
mov al, byte [rsi + r10]
inc r11d
mov byte [r10], al
movsxd rax, r11d
inc r10
cmp rax, 8
jb 0x140005150
add qword [rbp + 0x67], r12
lea r11, [rbp + 0x67]
xor r10d, r10d
sub r11, rcx
mov al, byte [r11 + rcx]
inc r10d
mov byte [rcx], al
movsxd rax, r10d
inc rcx
cmp rax, 8
jb 0x140005174
dec r8
jne 0x14000510d
cmp rdx, r13
jb 0x1400050f0
mov r15d, dword [rdi + 0x90]
add r15, rbx
je 0x140005262
add r15, 0xc
cmp dword [r15], 0
je 0x140005212
mov r13, qword [rbp + 0x7f]
mov ecx, dword [r15]
add rcx, rbx
call qword [rbp - 0x61]
mov r12, rax
test rax, rax
je 0x140005262
mov esi, dword [r15 + 4]
add rsi, rbx
jmp 0x140005202
mov rax, qword [rsi]
movabs rcx, 0x8000000000000000
test rcx, rax
mov rcx, r12
je 0x1400051f1
movzx edx, ax
jmp 0x1400051f8
lea rdx, [rax + 2]
add rdx, rbx
call r13
mov qword [rsi], rax
add rsi, 8
cmp qword [rsi], 0
jne 0x1400051d7
add r15, 0x14
cmp dword [r15], 0
jne 0x1400051b9
movsxd rax, dword [r14 + 0x3c]
cmp dword [rax + r14 + 0xd0], 0
je 0x140005246
mov eax, dword [rdi + 0xd0]
mov rsi, qword [rax + rbx + 0x18]
jmp 0x14000523e
xor r8d, r8d
mov rcx, r14
lea edx, [r8 + 1]
call rax
lea rsi, [rsi + 8]
mov rax, qword [rsi]
test rax, rax
jne 0x14000522e
mov eax, dword [rdi + 0x28]
xor r8d, r8d
mov rcx, rbx
lea edx, [r8 + 1]
add rax, rbx
call rax
neg eax
sbb rax, rax
and rax, rbx
jmp 0x140005264
xor eax, eax
add rsp, 0xd8
pop r15
pop r14
pop r13
pop r12
pop rdi
pop rsi
pop rbx
pop rbp
ret