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

Disassembly:
mov qword [rsp + 0x18], rbx
mov qword [rsp + 8], rcx
push rbp
push rsi
push rdi
push r12
push r13
push r14
push r15
lea rbp, [rsp - 0x260]
sub rsp, 0x360
mov rsi, rdx
movabs rax, 0x397a9e19b9d82f9d
mov qword [rsp + 0x70], rax
movabs rcx, 0x35fae148278a2caa
mov qword [rsp + 0x78], rcx
movabs rax, 0x39269e26b9e72fc1
mov qword [rsp + 0x60], rax
mov qword [rsp + 0x68], rcx
movdqa xmm0, xmmword [rsp + 0x70]
pxor xmm0, xmmword [rsp + 0x60]
movdqa xmmword [rsp + 0x60], xmm0
xor edx, edx
mov r8d, 0x20a
lea rcx, [rbp + 0x40]
call fcn.14007c620
lea rax, [rbp + 0x40]
mov qword [rbp + 0x250], rax
lea rax, [rsp + 0x60]
mov rbx, 0xffffffffffffffff
mov rdi, rbx
inc rdi
cmp word [rax + rdi*2], 0
jne 0x14003b076
add rdi, rdi
mov r8, rdi
lea rdx, [rsp + 0x60]
lea rcx, [rbp + 0x40]
call fcn.14007bf70
mov rcx, qword [rbp + 0x250]
add rcx, rdi
mov qword [rbp + 0x250], rcx
mov rdi, rbx
nop dword [rax + rax]
inc rdi
cmp word [rsi + rdi*2], 0
jne 0x14003b0b0
add rdi, rdi
mov r8, rdi
mov rdx, rsi
call fcn.14007bf70
add qword [rbp + 0x250], rdi
xor esi, esi
mov qword [rbp + 0x2a8], rsi
lea rax, [rbp + 0x40]
nop dword [rax]
inc rbx
cmp word [rax + rbx*2], 0
jne 0x14003b0e0
add bx, bx
mov word [rsp + 0x62], bx
mov word [rsp + 0x60], bx
lea rax, [rbp + 0x40]
mov qword [rsp + 0x68], rax
movaps xmm0, xmmword [rsp + 0x60]
movdqa xmmword [rsp + 0x70], xmm0
mov dword [rbp - 0x68], 0x30
mov qword [rbp - 0x60], rsi
lea rax, [rsp + 0x70]
mov qword [rbp - 0x58], rax
mov dword [rbp - 0x50], 0x40
xorps xmm2, xmm2
movups xmm0, xmmword [rbp - 0x68]
movups xmmword [rbp - 0x20], xmm0
movups xmm1, xmmword [rbp - 0x58]
movups xmmword [rbp - 0x10], xmm1
movups xmmword [rbp], xmm2
mov qword [rbp + 0x2b8], rsi
mov r15d, esi
mov edi, 0x6f2df779
mov rax, qword gs:[0x60]
mov rax, qword [rax + 0x18]
mov rax, qword [rax + 0x10]
nop dword [rax]
movups xmm0, xmmword [rax + 0x58]
movups xmmword [rsp + 0x60], xmm0
movd ecx, xmm0
sub cx, 8
test r15d, r15d
je 0x14003b1c3
mov r9, qword [rsp + 0x68]
movzx ecx, cx
shr rcx, 1
lea r11, [r9 + rcx*2]
mov r10d, 0x811c9dc5
cmp r9, r11
je 0x14003b1ba
movsx ecx, byte [r9]
mov edx, ecx
sub cl, 0x41
mov r8d, edx
or r8d, 0x20
cmp cl, 0x19
cmova r8d, edx
xor r8d, r10d
imul r10d, r8d, 0x1000193
add r9, 2
cmp r9, r11
jne 0x14003b190
cmp r10d, r15d
jne 0x14003b308
mov rbx, qword [rax + 0x30]
test rbx, rbx
je 0x14003b314
movsxd rcx, dword [rbx + 0x3c]
mov rdx, qword [rcx + rbx + 0x88]
mov r13, rdx
shr r13, 0x20
mov esi, edx
add rsi, rbx
cmp rsi, rbx
je 0x14003b308
mov r11d, dword [rsi + 0x18]
test r11d, r11d
je 0x14003b308
mov r12d, dword [rsi + 0x20]
dec r11d
lea rcx, [rbx + r11*4]
mov r9d, dword [rcx + r12]
add r9, rbx
mov r10d, 0x811c9dc5
movzx r8d, byte [r9]
inc r9
test r8b, r8b
je 0x14003b24d
movsx ecx, r8b
sub r8b, 0x41
mov edx, ecx
or edx, 0x20
cmp r8b, 0x19
cmova edx, ecx
xor edx, r10d
imul r10d, edx, 0x1000193
movzx r8d, byte [r9]
lea r9, [r9 + 1]
test r8b, r8b
jne 0x14003b222
cmp r10d, edi
je 0x14003b25f
test r11d, r11d
jne 0x14003b202
mov rax, qword [rax]
jmp 0x14003b160
mov ecx, dword [rsi + 0x1c]
add rcx, rbx
mov eax, dword [rsi + 0x24]
add rax, rbx
movzx eax, word [rax + r11*2]
mov r10d, dword [rcx + rax*4]
add r10, rbx
cmp r10, rsi
jbe 0x14003b310
lea rax, [rsi + r13]
cmp r10, rax
jae 0x14003b310
mov edi, 0x811c9dc5
mov r15d, edi
movzx edx, byte [r10]
cmp dl, 0x2e
je 0x14003b2c7
nop
movsx eax, dl
sub dl, 0x41
mov ecx, eax
or ecx, 0x20
cmp dl, 0x19
cmova ecx, eax
xor ecx, r15d
imul r15d, ecx, 0x1000193
inc r10
movzx edx, byte [r10]
cmp dl, 0x2e
jne 0x14003b2a0
inc r10
movzx edx, byte [r10]
test dl, dl
je 0x14003b2f7
movsx eax, dl
sub dl, 0x41
mov ecx, eax
or ecx, 0x20
cmp dl, 0x19
cmova ecx, eax
xor ecx, edi
imul edi, ecx, 0x1000193
lea r10, [r10 + 1]
movzx edx, byte [r10]
test dl, dl
jne 0x14003b2d2
mov rax, qword gs:[0x60]
mov rax, qword [rax + 0x18]
mov rax, qword [rax + 0x10]
mov rax, qword [rax]
jmp 0x14003b160
xor esi, esi
jmp 0x14003b319
xor esi, esi
mov r10d, esi
mov dword [rsp + 0x50], esi
mov qword [rsp + 0x48], rsi
mov dword [rsp + 0x40], 0x60
mov dword [rsp + 0x38], 1
mov dword [rsp + 0x30], 7
mov dword [rsp + 0x28], 0x80
mov qword [rsp + 0x20], rsi
lea r9, [rbp + 0x10]
lea r8, [rbp - 0x20]
mov edx, 0x80100000
lea rcx, [rbp + 0x2b8]
call r10
test eax, eax
js 0x14003b372
mov rbx, qword [rbp + 0x2b8]
mov qword [rbp + 0x2a8], rbx
jmp 0x14003b379
mov rbx, qword [rbp + 0x2a8]
test eax, eax
js 0x14003ba17
mov r15d, esi
mov edi, 0x4245c933
mov rax, qword gs:[0x60]
mov rax, qword [rax + 0x18]
mov rax, qword [rax + 0x10]
nop word [rax + rax]
movups xmm0, xmmword [rax + 0x58]
movups xmmword [rsp + 0x70], xmm0
movd ecx, xmm0
sub cx, 8
test r15d, r15d
je 0x14003b403
mov r9, qword [rsp + 0x78]
movzx ecx, cx
shr rcx, 1
lea r11, [r9 + rcx*2]
mov r10d, 0x811c9dc5
cmp r9, r11
je 0x14003b3fa
movsx ecx, byte [r9]
mov edx, ecx
sub cl, 0x41
mov r8d, edx
or r8d, 0x20
cmp cl, 0x19
cmova r8d, edx
xor r8d, r10d
imul r10d, r8d, 0x1000193
add r9, 2
cmp r9, r11
jne 0x14003b3d0
cmp r10d, r15d
jne 0x14003b548
mov rbx, qword [rax + 0x30]
test rbx, rbx
je 0x14003b554
movsxd rcx, dword [rbx + 0x3c]
mov rdx, qword [rcx + rbx + 0x88]
mov r13, rdx
shr r13, 0x20
mov esi, edx
add rsi, rbx
cmp rsi, rbx
je 0x14003b548
mov r11d, dword [rsi + 0x18]
test r11d, r11d
je 0x14003b548
mov r12d, dword [rsi + 0x20]
dec r11d
lea rcx, [r12 + r11*4]
mov r8d, dword [rcx + rbx]
add r8, rbx
mov r10d, 0x811c9dc5
movzx r9d, byte [r8]
inc r8
test r9b, r9b
je 0x14003b48d
movsx ecx, r9b
sub r9b, 0x41
mov edx, ecx
or edx, 0x20
cmp r9b, 0x19
cmova edx, ecx
xor edx, r10d
imul r10d, edx, 0x1000193
movzx r9d, byte [r8]
lea r8, [r8 + 1]
test r9b, r9b
jne 0x14003b462
cmp r10d, edi
je 0x14003b49f
test r11d, r11d
jne 0x14003b442
mov rax, qword [rax]
jmp 0x14003b3a0
mov ecx, dword [rsi + 0x1c]
add rcx, rbx
mov eax, dword [rsi + 0x24]
add rax, rbx
movzx eax, word [rax + r11*2]
mov r10d, dword [rcx + rax*4]
add r10, rbx
cmp r10, rsi
jbe 0x14003b550
lea rax, [rsi + r13]
cmp r10, rax
jae 0x14003b550
mov edi, 0x811c9dc5
mov r15d, edi
movzx edx, byte [r10]
cmp dl, 0x2e
je 0x14003b507
nop
movsx eax, dl
sub dl, 0x41
mov ecx, eax
or ecx, 0x20
cmp dl, 0x19
cmova ecx, eax
xor ecx, r15d
imul r15d, ecx, 0x1000193
inc r10
movzx edx, byte [r10]
cmp dl, 0x2e
jne 0x14003b4e0
inc r10
movzx edx, byte [r10]
test dl, dl
je 0x14003b537
movsx eax, dl
sub dl, 0x41
mov ecx, eax
or ecx, 0x20
cmp dl, 0x19
cmova ecx, eax
xor ecx, edi
imul edi, ecx, 0x1000193
lea r10, [r10 + 1]
movzx edx, byte [r10]
test dl, dl
jne 0x14003b512
mov rax, qword gs:[0x60]
mov rax, qword [rax + 0x18]
mov rax, qword [rax + 0x10]
mov rax, qword [rax]
jmp 0x14003b3a0
xor esi, esi
jmp 0x14003b559
xor esi, esi
mov r10d, esi
mov dword [rsp + 0x20], 5
mov r9d, 0x18
lea r8, [rbp - 0x38]
lea rdx, [rbp + 0x20]
mov rbx, qword [rbp + 0x2a8]
mov rcx, rbx
call r10
mov rcx, rsi
test eax, eax
cmovns rcx, qword [rbp - 0x30]
mov qword [rsp + 0x60], rcx
js 0x14003ba17
test rcx, rcx
je 0x14003ba17
xorps xmm0, xmm0
movdqu xmmword [rbp - 0x80], xmm0
mov qword [rbp - 0x70], rsi
mov rdx, rcx
lea rcx, [rbp - 0x80]
call fcn.14001cad0
nop
xor eax, eax
mov qword [rbp + 0x2b8], rax
mov r15d, esi
mov edi, 0x5256b4fd
mov rax, qword gs:[0x60]
mov rax, qword [rax + 0x18]
mov rax, qword [rax + 0x10]
nop word [rax + rax]
movups xmm0, xmmword [rax + 0x58]
movups xmmword [rsp + 0x70], xmm0
movd ecx, xmm0
sub cx, 8
test r15d, r15d
je 0x14003b643
mov r9, qword [rsp + 0x78]
movzx ecx, cx
shr rcx, 1
lea r11, [r9 + rcx*2]
mov r10d, 0x811c9dc5
cmp r9, r11
je 0x14003b63a
movsx ecx, byte [r9]
mov edx, ecx
sub cl, 0x41
mov r8d, edx
or r8d, 0x20
cmp cl, 0x19
cmova r8d, edx
xor r8d, r10d
imul r10d, r8d, 0x1000193
add r9, 2
cmp r9, r11
jne 0x14003b610
cmp r10d, r15d
jne 0x14003b788
mov rbx, qword [rax + 0x30]
test rbx, rbx
je 0x14003b794
movsxd rcx, dword [rbx + 0x3c]
mov rdx, qword [rcx + rbx + 0x88]
mov r13, rdx
shr r13, 0x20
mov esi, edx
add rsi, rbx
cmp rsi, rbx
je 0x14003b788
mov r11d, dword [rsi + 0x18]
test r11d, r11d
je 0x14003b788
mov r12d, dword [rsi + 0x20]
dec r11d
lea rcx, [rbx + r11*4]
mov r8d, dword [rcx + r12]
add r8, rbx
mov r10d, 0x811c9dc5
movzx r9d, byte [r8]
inc r8
test r9b, r9b
je 0x14003b6cd
movsx ecx, r9b
sub r9b, 0x41
mov edx, ecx
or edx, 0x20
cmp r9b, 0x19
cmova edx, ecx
xor edx, r10d
imul r10d, edx, 0x1000193
movzx r9d, byte [r8]
lea r8, [r8 + 1]
test r9b, r9b
jne 0x14003b6a2
cmp r10d, edi
je 0x14003b6df
test r11d, r11d
jne 0x14003b682
mov rax, qword [rax]
jmp 0x14003b5e0
mov ecx, dword [rsi + 0x1c]
add rcx, rbx
mov eax, dword [rsi + 0x24]
add rax, rbx
movzx eax, word [rax + r11*2]
mov r10d, dword [rcx + rax*4]
add r10, rbx
cmp r10, rsi
jbe 0x14003b790
lea rax, [rsi + r13]
cmp r10, rax
jae 0x14003b790
mov edi, 0x811c9dc5
mov r15d, edi
movzx edx, byte [r10]
cmp dl, 0x2e
je 0x14003b747
nop
movsx eax, dl
sub dl, 0x41
mov ecx, eax
or ecx, 0x20
cmp dl, 0x19
cmova ecx, eax
xor ecx, r15d
imul r15d, ecx, 0x1000193
inc r10
movzx edx, byte [r10]
cmp dl, 0x2e
jne 0x14003b720
inc r10
movzx edx, byte [r10]
test dl, dl
je 0x14003b777
movsx eax, dl
sub dl, 0x41
mov ecx, eax
or ecx, 0x20
cmp dl, 0x19
cmova ecx, eax
xor ecx, edi
imul edi, ecx, 0x1000193
lea r10, [r10 + 1]
movzx edx, byte [r10]
test dl, dl
jne 0x14003b752
mov rax, qword gs:[0x60]
mov rax, qword [rax + 0x18]
mov rax, qword [rax + 0x10]
mov rax, qword [rax]
jmp 0x14003b5e0
xor esi, esi
jmp 0x14003b799
xor esi, esi
mov r10d, esi
mov qword [rsp + 0x40], rsi
lea rax, [rbp + 0x2b8]
mov qword [rsp + 0x38], rax
mov rax, qword [rsp + 0x60]
mov dword [rsp + 0x30], eax
mov rdi, qword [rbp - 0x80]
mov qword [rsp + 0x28], rdi
lea rax, [rbp + 0x30]
mov qword [rsp + 0x20], rax
xor r9d, r9d
xor r8d, r8d
xor edx, edx
mov rbx, qword [rbp + 0x2a8]
mov rcx, rbx
call r10
nop
test eax, eax
js 0x14003b9e2
mov rcx, qword [rbp + 0x2a0]
mov qword [rcx], rdi
mov rax, qword [rbp - 0x78]
mov qword [rcx + 8], rax
mov rax, qword [rbp - 0x70]
mov qword [rcx + 0x10], rax
test rbx, rbx
je 0x14003bc24
mov r14d, esi
mov edi, 0xe049c205
mov rax, qword gs:[0x60]
mov rax, qword [rax + 0x18]
mov rax, qword [rax + 0x10]
nop
movups xmm0, xmmword [rax + 0x58]
movups xmmword [rsp + 0x70], xmm0
movd ecx, xmm0
sub cx, 8
test r14d, r14d
je 0x14003b883
mov r9, qword [rsp + 0x78]
movzx ecx, cx
shr rcx, 1
lea r11, [r9 + rcx*2]
mov r10d, 0x811c9dc5
cmp r9, r11
je 0x14003b87a
movsx ecx, byte [r9]
mov edx, ecx
sub cl, 0x41
mov r8d, edx
or r8d, 0x20
cmp cl, 0x19
cmova r8d, edx
xor r8d, r10d
imul r10d, r8d, 0x1000193
add r9, 2
cmp r9, r11
jne 0x14003b850
cmp r10d, r14d
jne 0x14003b9da
mov rbx, qword [rax + 0x30]
test rbx, rbx
je 0x14003bc12
movsxd rcx, dword [rbx + 0x3c]
mov rdx, qword [rcx + rbx + 0x88]
mov r13, rdx
shr r13, 0x20
mov esi, edx
add rsi, rbx
cmp rsi, rbx
je 0x14003b9da
mov r11d, dword [rsi + 0x18]
test r11d, r11d
je 0x14003b9da
mov r12d, dword [rsi + 0x20]
dec r11d
lea rcx, [rbx + r11*4]
mov r9d, dword [rcx + r12]
add r9, rbx
mov r10d, 0x811c9dc5
movzx r8d, byte [r9]
inc r9
test r8b, r8b
je 0x14003b90d
movsx ecx, r8b
sub r8b, 0x41
mov edx, ecx
or edx, 0x20
cmp r8b, 0x19
cmova edx, ecx
xor edx, r10d
imul r10d, edx, 0x1000193
movzx r8d, byte [r9]
lea r9, [r9 + 1]
test r8b, r8b
jne 0x14003b8e2
cmp r10d, edi
je 0x14003b91f
test r11d, r11d
jne 0x14003b8c2
mov rax, qword [rax]
jmp 0x14003b820
mov ecx, dword [rsi + 0x1c]
add rcx, rbx
mov eax, dword [rsi + 0x24]
add rax, rbx
movzx eax, word [rax + r11*2]
mov edx, dword [rcx + rax*4]
add rdx, rbx
cmp rdx, rsi
jbe 0x14003bc14
lea rax, [rsi + r13]
cmp rdx, rax
jae 0x14003bc14
mov edi, 0x811c9dc5
mov r14d, edi
movzx r8d, byte [rdx]
cmp r8b, 0x2e
je 0x14003b98b
nop
movsx eax, r8b
sub r8b, 0x41
mov ecx, eax
or ecx, 0x20
cmp r8b, 0x19
cmova ecx, eax
xor ecx, r14d
imul r14d, ecx, 0x1000193
inc rdx
movzx r8d, byte [rdx]
cmp r8b, 0x2e
jne 0x14003b960
inc rdx
movzx r8d, byte [rdx]
test r8b, r8b
je 0x14003b9c9
nop word [rax + rax]
movsx eax, r8b
sub r8b, 0x41
mov ecx, eax
or ecx, 0x20
cmp r8b, 0x19
cmova ecx, eax
xor ecx, edi
imul edi, ecx, 0x1000193
lea rdx, [rdx + 1]
movzx r8d, byte [rdx]
test r8b, r8b
jne 0x14003b9a0
mov rax, qword gs:[0x60]
mov rax, qword [rax + 0x18]
mov rax, qword [rax + 0x10]
mov rax, qword [rax]
jmp 0x14003b820
test rdi, rdi
je 0x14003ba17
mov rax, qword [rbp - 0x70]
sub rax, rdi
mov rcx, rdi
cmp rax, 0x1000
jb 0x14003ba0e
mov rdi, qword [rdi - 8]
sub rcx, rdi
lea rax, [rcx - 8]
cmp rax, 0x1f
ja 0x14003bc42
mov rcx, rdi
call fcn.14000d9d0
nop
mov rcx, qword [rbp + 0x2a0]
mov qword [rcx], rsi
mov qword [rcx + 8], rsi
mov qword [rcx + 0x10], rsi
test rbx, rbx
je 0x14003bc24
mov r14d, esi
mov edi, 0xe049c205
mov rax, qword gs:[0x60]
mov rax, qword [rax + 0x18]
mov rax, qword [rax + 0x10]
nop dword [rax + rax]
movups xmm0, xmmword [rax + 0x58]
movups xmmword [rsp + 0x70], xmm0
movd ecx, xmm0
sub cx, 8
test r14d, r14d
je 0x14003bab3
mov r9, qword [rsp + 0x78]
movzx ecx, cx
shr rcx, 1
lea r11, [r9 + rcx*2]
mov r10d, 0x811c9dc5
cmp r9, r11
je 0x14003baaa
movsx ecx, byte [r9]
mov edx, ecx
sub cl, 0x41
mov r8d, edx
or r8d, 0x20
cmp cl, 0x19
cmova r8d, edx
xor r8d, r10d
imul r10d, r8d, 0x1000193
add r9, 2
cmp r9, r11
jne 0x14003ba80
cmp r10d, r14d
jne 0x14003bc0a
mov rbx, qword [rax + 0x30]
test rbx, rbx
je 0x14003bc12
movsxd rcx, dword [rbx + 0x3c]
mov rdx, qword [rcx + rbx + 0x88]
mov r13, rdx
shr r13, 0x20
mov esi, edx
add rsi, rbx
cmp rsi, rbx
je 0x14003bc0a
mov r11d, dword [rsi + 0x18]
test r11d, r11d
je 0x14003bc0a
mov r12d, dword [rsi + 0x20]
dec r11d
lea rcx, [rbx + r11*4]
mov r9d, dword [rcx + r12]
add r9, rbx
mov r10d, 0x811c9dc5
movzx r8d, byte [r9]
inc r9
test r8b, r8b
je 0x14003bb3d
movsx ecx, r8b
sub r8b, 0x41
mov edx, ecx
or edx, 0x20
cmp r8b, 0x19
cmova edx, ecx
xor edx, r10d
imul r10d, edx, 0x1000193
movzx r8d, byte [r9]
lea r9, [r9 + 1]
test r8b, r8b
jne 0x14003bb12
cmp r10d, edi
je 0x14003bb4f
test r11d, r11d
jne 0x14003baf2
mov rax, qword [rax]
jmp 0x14003ba50
mov ecx, dword [rsi + 0x1c]
add rcx, rbx
mov eax, dword [rsi + 0x24]
add rax, rbx
movzx eax, word [rax + r11*2]
mov edx, dword [rcx + rax*4]
add rdx, rbx
cmp rdx, rsi
jbe 0x14003bc14
lea rax, [rsi + r13]
cmp rdx, rax
jae 0x14003bc14
mov edi, 0x811c9dc5
mov r14d, edi
movzx r8d, byte [rdx]
cmp r8b, 0x2e
je 0x14003bbbb
nop
movsx eax, r8b
sub r8b, 0x41
mov ecx, eax
or ecx, 0x20
cmp r8b, 0x19
cmova ecx, eax
xor ecx, r14d
imul r14d, ecx, 0x1000193
inc rdx
movzx r8d, byte [rdx]
cmp r8b, 0x2e
jne 0x14003bb90
inc rdx
movzx r8d, byte [rdx]
test r8b, r8b
je 0x14003bbf9
nop word [rax + rax]
movsx eax, r8b
sub r8b, 0x41
mov ecx, eax
or ecx, 0x20
cmp r8b, 0x19
cmova ecx, eax
xor ecx, edi
imul edi, ecx, 0x1000193
lea rdx, [rdx + 1]
movzx r8d, byte [rdx]
test r8b, r8b
jne 0x14003bbd0
mov rax, qword gs:[0x60]
mov rax, qword [rax + 0x18]
mov rax, qword [rax + 0x10]
mov rax, qword [rax]
jmp 0x14003ba50
xor edx, edx
mov rcx, qword [rbp + 0x2a8]
call rdx
mov rcx, qword [rbp + 0x2a0]
mov rax, rcx
mov rbx, qword [rsp + 0x3b0]
add rsp, 0x360
pop r15
pop r14
pop r13
pop r12
pop rdi
pop rsi
pop rbp
ret
call fcn.140080484
nop
int3