Function at 0x140003d74
Capabilities:
Access peb ldr_data
Encode data using xor
Resolve function by parsing pe exports

Disassembly:
push rbp
push rbx
push rsi
push rdi
push r12
push r13
push r14
push r15
mov rbp, rsp
sub rsp, 0x68
mov rsi, qword gs:[0x60]
mov rax, qword [rsi + 0x18]
add rax, 0x20
mov rdi, qword [rax]
cmp rdi, rax
je 0x140004088
mov rax, qword gs:[0x58]
mov r14, qword [rax]
mov ebx, 0x620
mov r15d, 0x608
add rbx, r14
mov dword [rbp - 0x28], 0xbe007c
mov dword [rbp - 0x24], 0x5100a1
mov dword [rbp - 0x20], 0xd7002c
mov dword [rbp - 0x1c], 0xd90014
mov dword [rbp - 0x18], 0xbf0019
mov dword [rbp - 0x14], 0x5300bf
mov edx, 0x69
mov eax, dword [r15 + r14]
test al, 1
jne 0x140003e50
or eax, 1
mov dword [r15 + r14], eax
mov byte [rbx + 0x1a], 1
lea rax, [rbx + 0x18]
lea rcx, [rbp - 0x10]
cmp rbx, rcx
ja 0x140003e2e
lea rcx, [rbp - 0x28]
cmp rax, rcx
jb 0x140003e2e
movups xmm0, xmmword [rbp - 0x28]
movups xmmword [rbx], xmm0
movsd xmm1, qword [rbp - 0x18]
movsd qword [rbx + 0x10], xmm1
mov word [rbx + 0x18], dx
jmp 0x140003e43
movups xmm0, xmmword [rbp - 0x28]
movups xmmword [rbx], xmm0
movsd xmm1, qword [rbp - 0x18]
movsd qword [rbx + 0x10], xmm1
mov word [rbx + 0x18], dx
lea rcx, [0x140005eb4]
call fcn.14000452c
nop
cmp byte [rbx + 0x1a], 0
je 0x140003e89
xor r8d, r8d
mov cl, r8b
and cl, 7
shl cl, 3
movabs rdx, 0xeb279b691ff3fb37
shr rdx, cl
mov eax, 0xff
and dx, ax
xor word [rbx + r8*2], dx
inc r8
cmp r8, 0xd
jb 0x140003e59
mov byte [rbx + 0x1a], 0
mov rdx, rbx
mov rcx, qword [rdi + 0x50]
call qword [sym.imp.api_ms_win_crt_string_l1_1_0.dll_wcscmp]
test eax, eax
je 0x140003eb3
mov rdi, qword [rdi]
mov rax, qword [rsi + 0x18]
add rax, 0x20
cmp rdi, rax
jne 0x140003dbf
jmp 0x140004088
mov rbx, qword [rdi + 0x20]
test rbx, rbx
je 0x140004088
movsxd rax, dword [rbx + 0x3c]
mov r15d, dword [rax + rbx + 0x88]
add r15, rbx
mov eax, dword [r15 + 0x20]
add rax, rbx
mov qword [rbp + 0x50], rax
mov ecx, dword [r15 + 0x1c]
add rcx, rbx
mov qword [rbp + 0x58], rcx
mov edx, dword [r15 + 0x24]
add rdx, rbx
mov qword [rbp + 0x60], rdx
xor r12d, r12d
cmp dword [r15 + 0x14], r12d
jbe 0x140004088
mov esi, 0x610
mov dword [rbp - 0x38], 0x95eb7c88
mov dword [rbp - 0x34], 0x9acc2cf1
mov dword [rbp - 0x30], 0xa0ed7dab
mov word [rbp - 0x2c], 0x30f0
mov r10d, 0x604
add rsi, r14
mov r9d, dword [rax + r12*4]
add r9, rbx
mov qword [rbp + 0x48], r9
movzx eax, word [rdx + r12*2]
mov r13d, dword [rcx + rax*4]
add r13, rbx
mov eax, dword [r10 + r14]
test al, 1
jne 0x140003f7a
or eax, 1
mov dword [r10 + r14], eax
mov word [rsi + 0xe], 0x1af
movsd xmm0, qword [rbp - 0x38]
movsd qword [rsi], xmm0
mov eax, dword [rbp - 0x30]
mov dword [rsi + 8], eax
movzx eax, word [rbp - 0x2c]
mov word [rsi + 0xc], ax
lea rcx, [0x140005eb0]
call fcn.14000452c
nop
mov r9, qword [rbp + 0x48]
cmp byte [rsi + 0xf], 0
je 0x140003faa
xor r8d, r8d
mov cl, r8b
and cl, 7
shl cl, 3
movabs rdx, 0xdbaf4383c59f19cf
shr rdx, cl
xor byte [rsi + r8], dl
inc r8
cmp r8, 0xf
jb 0x140003f83
mov byte [rsi + 0xf], 0
mov rdx, rsi
mov rcx, r9
call qword [sym.imp.api_ms_win_crt_string_l1_1_0.dll_strcmp]
test eax, eax
jne 0x140003fc6
mov qword [0x1400091b8], r13
jmp 0x140004066
mov dword [rbp - 0x48], 0xe14244bf
mov dword [rbp - 0x44], 0x83070c7b
mov dword [rbp - 0x40], 0xc45a5992
mov edx, 0x600
mov eax, dword [rdx + r14]
mov ecx, 0x640
test al, 1
jne 0x14000401c
or eax, 1
mov dword [rdx + r14], eax
lea rdi, [r14 + rcx]
mov word [rdi + 0xc], 0x137
movsd xmm0, qword [rbp - 0x48]
movsd qword [rdi], xmm0
mov eax, dword [rbp - 0x40]
mov dword [rdi + 8], eax
lea rcx, [0x140005eac]
call fcn.14000452c
nop
jmp 0x140004020
lea rdi, [r14 + rcx]
cmp byte [rdi + 0xd], 0
je 0x14000404e
xor edx, edx
mov cl, dl
and cl, 7
shl cl, 3
movabs r8, 0xf165653785232bf3
shr r8, cl
xor byte [rdi + rdx], r8b
inc rdx
cmp rdx, 0xd
jb 0x140004028
mov byte [rdi + 0xd], 0
mov rdx, rdi
mov rcx, qword [rbp + 0x48]
call qword [sym.imp.api_ms_win_crt_string_l1_1_0.dll_strcmp]
test eax, eax
jne 0x140004066
mov qword [0x1400091b0], r13
inc r12
mov eax, dword [r15 + 0x14]
cmp r12, rax
mov rax, qword [rbp + 0x50]
mov rcx, qword [rbp + 0x58]
mov rdx, qword [rbp + 0x60]
mov r10d, 0x604
jb 0x140003f26
add rsp, 0x68
pop r15
pop r14
pop r13
pop r12
pop rdi
pop rsi
pop rbx
pop rbp
ret