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

Disassembly:
push rsi
push rdi
push rbp
push rbx
sub rsp, 0x38
movabs rsi, 0x5b10494e584c4a55
mov qword [rsp + 0x28], rsi
mov dword [rsp + 0x2f], 0x422d2c5b
xor eax, eax
lea ecx, [rax + 0x38]
xor byte [rsp + rax + 0x28], cl
inc rax
cmp rax, 0xb
jne 0x1400033a7
lea rcx, [rsp + 0x28]
call fcn.1400032b0
mov qword [0x140006198], rax
test rax, rax
je 0x140003d19
mov qword [rsp + 0x28], rsi
mov dword [rsp + 0x2f], 0x422d2c5b
xor eax, eax
lea ecx, [rax + 0x38]
xor byte [rsp + rax + 0x28], cl
inc rax
cmp rax, 0xb
jne 0x1400033e0
movsxd rdx, dword [0x140006188]
inc rdx
mov rax, qword gs:[0x60]
mov rcx, qword [rax + 0x18]
add rcx, 0x10
mov rcx, qword [rcx]
mov rax, qword [rcx + 0x30]
movsxd r8, dword [rax + 0x3c]
mov r8d, dword [rax + r8 + 0x88]
test r8, r8
je 0x14000340b
mov r9d, dword [rax + r8 + 0x18]
test r9, r9
je 0x14000340b
mov r10d, dword [rax + r8 + 0x20]
add r10, rax
lea rsi, [rax + 1]
dec r9
mov r11d, r9d
mov edi, dword [r10 + r11*4]
mov bl, byte [rax + rdi]
test bl, bl
je 0x14000346e
add rdi, rsi
mov ebp, 0xb3f088d5
movsx ebx, bl
xor ebx, ebp
imul ebp, ebx, 0x1000193
mov bl, byte [rdi]
inc rdi
test bl, bl
jne 0x140003452
cmp ebp, 0xc58f7415
je 0x140003475
test r11, r11
jne 0x140003439
jmp 0x14000340b
shl rdx, 4
mov ecx, dword [rax + r8 + 0x1c]
mov r8d, dword [rax + r8 + 0x24]
add rcx, rax
add r8, rax
movzx r8d, word [r8 + r11*2]
mov r8d, dword [rcx + r8*4]
add r8, rax
mov rcx, qword [0x140006190]
call r8
mov qword [0x140006190], rax
test rax, rax
je 0x1400034e6
mov rcx, qword [0x140006198]
movsxd rdx, dword [0x140006188]
lea r8d, [rdx + 1]
shl rdx, 4
mov qword [rax + rdx + 8], rcx
mov rax, qword [0x140006190]
mov dword [rax + rdx + 4], 0
cmp qword [rax + rdx + 8], 0
setne byte [rax + rdx]
mov dword [0x140006188], r8d
movabs rax, 0x5b100f0f64084a4f
mov qword [rsp + 0x28], rax
mov dword [rsp + 0x2f], 0x422d2c5b
xor eax, eax
lea ecx, [rax + 0x38]
xor byte [rsp + rax + 0x28], cl
inc rax
cmp rax, 0xb
jne 0x1400034ff
movsxd rdx, dword [0x140006188]
inc rdx
mov rax, qword gs:[0x60]
mov rcx, qword [rax + 0x18]
add rcx, 0x10
mov rcx, qword [rcx]
mov rax, qword [rcx + 0x30]
movsxd r8, dword [rax + 0x3c]
mov r8d, dword [rax + r8 + 0x88]
test r8, r8
je 0x14000352a
mov r9d, dword [rax + r8 + 0x18]
test r9, r9
je 0x14000352a
mov r10d, dword [rax + r8 + 0x20]
add r10, rax
lea rsi, [rax + 1]
dec r9
mov r11d, r9d
mov edi, dword [r10 + r11*4]
mov bl, byte [rax + rdi]
test bl, bl
je 0x14000358d
add rdi, rsi
mov ebp, 0xb3f088d5
movsx ebx, bl
xor ebx, ebp
imul ebp, ebx, 0x1000193
mov bl, byte [rdi]
inc rdi
test bl, bl
jne 0x140003571
cmp ebp, 0xc58f7415
je 0x140003594
test r11, r11
jne 0x140003558
jmp 0x14000352a
shl rdx, 4
mov ecx, dword [rax + r8 + 0x1c]
mov r8d, dword [rax + r8 + 0x24]
add rcx, rax
add r8, rax
movzx r8d, word [r8 + r11*2]
mov r8d, dword [rcx + r8*4]
add r8, rax
mov rcx, qword [0x140006190]
call r8
mov qword [0x140006190], rax
test rax, rax
je 0x14000360f
lea rcx, [rsp + 0x28]
call fcn.1400032b0
mov rcx, qword [0x140006190]
movsxd rdx, dword [0x140006188]
lea r8d, [rdx + 1]
shl rdx, 4
mov qword [rcx + rdx + 8], rax
mov dword [rcx + rdx + 4], 1
mov rax, qword [0x140006190]
cmp qword [rax + rdx + 8], 0
setne byte [rax + rdx]
mov dword [0x140006188], r8d
movabs rax, 0x442f2e256e564e5c
mov qword [rsp + 0x2d], rax
movabs rax, 0x564e5c4c57524951
mov qword [rsp + 0x28], rax
xor eax, eax
lea ecx, [rax + 0x38]
xor byte [rsp + rax + 0x28], cl
inc rax
cmp rax, 0xd
jne 0x14000362f
movsxd rdx, dword [0x140006188]
inc rdx
mov rax, qword gs:[0x60]
mov rcx, qword [rax + 0x18]
add rcx, 0x10
mov rcx, qword [rcx]
mov rax, qword [rcx + 0x30]
movsxd r8, dword [rax + 0x3c]
mov r8d, dword [rax + r8 + 0x88]
test r8, r8
je 0x14000365a
mov r9d, dword [rax + r8 + 0x18]
test r9, r9
je 0x14000365a
mov r10d, dword [rax + r8 + 0x20]
add r10, rax
lea rsi, [rax + 1]
dec r9
mov r11d, r9d
mov edi, dword [r10 + r11*4]
mov bl, byte [rax + rdi]
test bl, bl
je 0x1400036bd
add rdi, rsi
mov ebp, 0xb3f088d5
movsx ebx, bl
xor ebx, ebp
imul ebp, ebx, 0x1000193
mov bl, byte [rdi]
inc rdi
test bl, bl
jne 0x1400036a1
cmp ebp, 0xc58f7415
je 0x1400036c4
test r11, r11
jne 0x140003688
jmp 0x14000365a
shl rdx, 4
mov ecx, dword [rax + r8 + 0x1c]
mov r8d, dword [rax + r8 + 0x24]
add rcx, rax
add r8, rax
movzx r8d, word [r8 + r11*2]
mov r8d, dword [rcx + r8*4]
add r8, rax
mov rcx, qword [0x140006190]
call r8
mov qword [0x140006190], rax
test rax, rax
je 0x14000373f
lea rcx, [rsp + 0x28]
call fcn.1400032b0
mov rcx, qword [0x140006190]
movsxd rdx, dword [0x140006188]
lea r8d, [rdx + 1]
shl rdx, 4
mov qword [rcx + rdx + 8], rax
mov dword [rcx + rdx + 4], 2
mov rax, qword [0x140006190]
cmp qword [rax + rdx + 8], 0
setne byte [rax + rdx]
mov dword [0x140006188], r8d
movabs rax, 0x442f2e256e0d0d51
mov qword [rsp + 0x2d], rax
movabs rax, 0xd0d515955485c53
mov qword [rsp + 0x28], rax
xor eax, eax
lea ecx, [rax + 0x38]
xor byte [rsp + rax + 0x28], cl
inc rax
cmp rax, 0xd
jne 0x14000375f
movsxd rdx, dword [0x140006188]
inc rdx
mov rax, qword gs:[0x60]
mov rcx, qword [rax + 0x18]
add rcx, 0x10
mov rcx, qword [rcx]
mov rax, qword [rcx + 0x30]
movsxd r8, dword [rax + 0x3c]
mov r8d, dword [rax + r8 + 0x88]
test r8, r8
je 0x14000378a
mov r9d, dword [rax + r8 + 0x18]
test r9, r9
je 0x14000378a
mov r10d, dword [rax + r8 + 0x20]
add r10, rax
lea rsi, [rax + 1]
dec r9
mov r11d, r9d
mov edi, dword [r10 + r11*4]
mov bl, byte [rax + rdi]
test bl, bl
je 0x1400037ed
add rdi, rsi
mov ebp, 0xb3f088d5
movsx ebx, bl
xor ebx, ebp
imul ebp, ebx, 0x1000193
mov bl, byte [rdi]
inc rdi
test bl, bl
jne 0x1400037d1
cmp ebp, 0xc58f7415
je 0x1400037f4
test r11, r11
jne 0x1400037b8
jmp 0x14000378a
shl rdx, 4
mov ecx, dword [rax + r8 + 0x1c]
mov r8d, dword [rax + r8 + 0x24]
add rcx, rax
add r8, rax
movzx r8d, word [r8 + r11*2]
mov r8d, dword [rcx + r8*4]
add r8, rax
mov rcx, qword [0x140006190]
call r8
mov qword [0x140006190], rax
test rax, rax
je 0x14000386f
lea rcx, [rsp + 0x28]
call fcn.1400032b0
mov rcx, qword [0x140006190]
movsxd rdx, dword [0x140006188]
lea r8d, [rdx + 1]
shl rdx, 4
mov qword [rcx + rdx + 8], rax
mov dword [rcx + rdx + 4], 3
mov rax, qword [0x140006190]
cmp qword [rax + rdx + 8], 0
setne byte [rax + rdx]
mov dword [0x140006188], r8d
movabs rax, 0x110c0e50575f516b
mov qword [rsp + 0x28], rax
mov dword [rsp + 0x30], 0x432e2d24
xor eax, eax
lea ecx, [rax + 0x38]
xor byte [rsp + rax + 0x28], cl
inc rax
cmp rax, 0xc
jne 0x140003888
movsxd rdx, dword [0x140006188]
inc rdx
mov rax, qword gs:[0x60]
mov rcx, qword [rax + 0x18]
add rcx, 0x10
mov rcx, qword [rcx]
mov rax, qword [rcx + 0x30]
movsxd r8, dword [rax + 0x3c]
mov r8d, dword [rax + r8 + 0x88]
test r8, r8
je 0x1400038b3
mov r9d, dword [rax + r8 + 0x18]
test r9, r9
je 0x1400038b3
mov r10d, dword [rax + r8 + 0x20]
add r10, rax
lea rsi, [rax + 1]
dec r9
mov r11d, r9d
mov edi, dword [r10 + r11*4]
mov bl, byte [rax + rdi]
test bl, bl
je 0x140003916
add rdi, rsi
mov ebp, 0xb3f088d5
movsx ebx, bl
xor ebx, ebp
imul ebp, ebx, 0x1000193
mov bl, byte [rdi]
inc rdi
test bl, bl
jne 0x1400038fa
cmp ebp, 0xc58f7415
je 0x14000391d
test r11, r11
jne 0x1400038e1
jmp 0x1400038b3
shl rdx, 4
mov ecx, dword [rax + r8 + 0x1c]
mov r8d, dword [rax + r8 + 0x24]
add rcx, rax
add r8, rax
movzx r8d, word [r8 + r11*2]
mov r8d, dword [rcx + r8*4]
add r8, rax
mov rcx, qword [0x140006190]
call r8
mov qword [0x140006190], rax
test rax, rax
je 0x140003998
lea rcx, [rsp + 0x28]
call fcn.1400032b0
mov rcx, qword [0x140006190]
movsxd rdx, dword [0x140006188]
lea r8d, [rdx + 1]
shl rdx, 4
mov qword [rcx + rdx + 8], rax
mov dword [rcx + rdx + 4], 4
mov rax, qword [0x140006190]
cmp qword [rax + rdx + 8], 0
setne byte [rax + rdx]
mov dword [0x140006188], r8d
movabs rax, 0x442f2e256e0d0d54
mov qword [rsp + 0x2d], rax
movabs rax, 0xd0d544c5a4c5d79
mov qword [rsp + 0x28], rax
xor eax, eax
lea ecx, [rax + 0x38]
xor byte [rsp + rax + 0x28], cl
inc rax
cmp rax, 0xd
jne 0x1400039b8
movsxd rdx, dword [0x140006188]
inc rdx
mov rax, qword gs:[0x60]
mov rcx, qword [rax + 0x18]
add rcx, 0x10
mov rcx, qword [rcx]
mov rax, qword [rcx + 0x30]
movsxd r8, dword [rax + 0x3c]
mov r8d, dword [rax + r8 + 0x88]
test r8, r8
je 0x1400039e3
mov r9d, dword [rax + r8 + 0x18]
test r9, r9
je 0x1400039e3
mov r10d, dword [rax + r8 + 0x20]
add r10, rax
lea rsi, [rax + 1]
dec r9
mov r11d, r9d
mov edi, dword [r10 + r11*4]
mov bl, byte [rax + rdi]
test bl, bl
je 0x140003a46
add rdi, rsi
mov ebp, 0xb3f088d5
movsx ebx, bl
xor ebx, ebp
imul ebp, ebx, 0x1000193
mov bl, byte [rdi]
inc rdi
test bl, bl
jne 0x140003a2a
cmp ebp, 0xc58f7415
je 0x140003a4d
test r11, r11
jne 0x140003a11
jmp 0x1400039e3
shl rdx, 4
mov ecx, dword [rax + r8 + 0x1c]
mov r8d, dword [rax + r8 + 0x24]
add rcx, rax
add r8, rax
movzx r8d, word [r8 + r11*2]
mov r8d, dword [rcx + r8*4]
add r8, rax
mov rcx, qword [0x140006190]
call r8
mov qword [0x140006190], rax
test rax, rax
je 0x140003ac8
lea rcx, [rsp + 0x28]
call fcn.1400032b0
mov rcx, qword [0x140006190]
movsxd rdx, dword [0x140006188]
lea r8d, [rdx + 1]
shl rdx, 4
mov qword [rcx + rdx + 8], rax
mov dword [rcx + rdx + 4], 5
mov rax, qword [0x140006190]
cmp qword [rax + rdx + 8], 0
setne byte [rax + rdx]
mov dword [0x140006188], r8d
movabs rax, 0x110c0e4e4e595c6b
mov qword [rsp + 0x28], rax
mov dword [rsp + 0x30], 0x432e2d24
xor eax, eax
lea ecx, [rax + 0x38]
xor byte [rsp + rax + 0x28], cl
inc rax
cmp rax, 0xc
jne 0x140003ae1
movsxd rdx, dword [0x140006188]
inc rdx
mov rax, qword gs:[0x60]
mov rcx, qword [rax + 0x18]
add rcx, 0x10
mov rcx, qword [rcx]
mov rax, qword [rcx + 0x30]
movsxd r8, dword [rax + 0x3c]
mov r8d, dword [rax + r8 + 0x88]
test r8, r8
je 0x140003b0c
mov r9d, dword [rax + r8 + 0x18]
test r9, r9
je 0x140003b0c
mov r10d, dword [rax + r8 + 0x20]
add r10, rax
lea rsi, [rax + 1]
dec r9
mov r11d, r9d
mov edi, dword [r10 + r11*4]
mov bl, byte [rax + rdi]
test bl, bl
je 0x140003b6f
add rdi, rsi
mov ebp, 0xb3f088d5
movsx ebx, bl
xor ebx, ebp
imul ebp, ebx, 0x1000193
mov bl, byte [rdi]
inc rdi
test bl, bl
jne 0x140003b53
cmp ebp, 0xc58f7415
je 0x140003b76
test r11, r11
jne 0x140003b3a
jmp 0x140003b0c
shl rdx, 4
mov ecx, dword [rax + r8 + 0x1c]
mov r8d, dword [rax + r8 + 0x24]
add rcx, rax
add r8, rax
movzx r8d, word [r8 + r11*2]
mov r8d, dword [rcx + r8*4]
add r8, rax
mov rcx, qword [0x140006190]
call r8
mov qword [0x140006190], rax
test rax, rax
je 0x140003bf1
lea rcx, [rsp + 0x28]
call fcn.1400032b0
mov rcx, qword [0x140006190]
movsxd rdx, dword [0x140006188]
lea r8d, [rdx + 1]
shl rdx, 4
mov qword [rcx + rdx + 8], rax
mov dword [rcx + rdx + 4], 6
mov rax, qword [0x140006190]
cmp qword [rax + rdx + 8], 0
setne byte [rax + rdx]
mov dword [0x140006188], r8d
movabs rax, 0x535a1350575e4d56
mov qword [rsp + 0x28], rax
mov word [rsp + 0x30], 0x412c
xor eax, eax
lea ecx, [rax + 0x38]
xor byte [rsp + rax + 0x28], cl
inc rax
cmp rax, 0xa
jne 0x140003c09
movsxd rdx, dword [0x140006188]
inc rdx
mov rax, qword gs:[0x60]
mov rcx, qword [rax + 0x18]
add rcx, 0x10
mov rcx, qword [rcx]
mov rax, qword [rcx + 0x30]
movsxd r8, dword [rax + 0x3c]
mov r8d, dword [rax + r8 + 0x88]
test r8, r8
je 0x140003c34
mov r9d, dword [rax + r8 + 0x18]
test r9, r9
je 0x140003c34
mov r10d, dword [rax + r8 + 0x20]
add r10, rax
lea rsi, [rax + 1]
dec r9
mov r11d, r9d
mov edi, dword [r10 + r11*4]
mov bl, byte [rax + rdi]
test bl, bl
je 0x140003c97
add rdi, rsi
mov ebp, 0xb3f088d5
movsx ebx, bl
xor ebx, ebp
imul ebp, ebx, 0x1000193
mov bl, byte [rdi]
inc rdi
test bl, bl
jne 0x140003c7b
cmp ebp, 0xc58f7415
je 0x140003c9e
test r11, r11
jne 0x140003c62
jmp 0x140003c34
shl rdx, 4
mov ecx, dword [rax + r8 + 0x1c]
mov r8d, dword [rax + r8 + 0x24]
add rcx, rax
add r8, rax
movzx r8d, word [r8 + r11*2]
mov r8d, dword [rcx + r8*4]
add r8, rax
mov rcx, qword [0x140006190]
call r8
mov qword [0x140006190], rax
test rax, rax
je 0x140003d19
lea rcx, [rsp + 0x28]
call fcn.1400032b0
mov rcx, qword [0x140006190]
movsxd rdx, dword [0x140006188]
lea r8d, [rdx + 1]
shl rdx, 4
mov qword [rcx + rdx + 8], rax
mov dword [rcx + rdx + 4], 7
mov rax, qword [0x140006190]
cmp qword [rax + rdx + 8], 0
setne byte [rax + rdx]
mov dword [0x140006188], r8d
add rsp, 0x38
pop rbx
pop rbp
pop rdi
pop rsi
ret