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

Disassembly:
mov qword [rsp + 0x10], rbx
mov qword [rsp + 0x18], rsi
mov qword [rsp + 0x20], rdi
push rbp
push r12
push r13
push r14
push r15
lea rbp, [rsp - 0x10]
sub rsp, 0x110
mov r13, rcx
mov byte [rsp + 0x21], 0
mov byte [rsp + 0x20], 0
lea rdx, [rbp - 0x10]
lea rcx, [rsp + 0x20]
call fcn.1402c20f0
mov r9, rax
mov byte [rax + 0x10], 0
xor ebx, ebx
lea r8, [rax + 0xc]
nop dword [rax]
lea esi, [rbx + rbx*2]
movzx ecx, byte [rsi + r9]
mov byte [r8], cl
movzx eax, bl
add al, al
lea edi, [rax + rbx]
movzx r11d, dil
add r11b, byte [r9 + 0x13]
xor r11b, cl
mov byte [r8], r11b
xor dl, dl
lea eax, [rsi + 1]
movzx r10d, byte [rax + r9]
nop dword [rax + rax]
movzx eax, r10b
movzx ecx, dl
sar al, cl
test al, 1
jne 0x14012e7d6
inc dl
cmp dl, 4
jne 0x14012e7c0
jmp 0x14012e7e5
movsx ecx, r11b
movzx eax, byte [r9 + 0x16]
btc ecx, eax
mov byte [r8], cl
mov cl, 5
lea eax, [rsi + 2]
mov r10d, eax
movzx edx, byte [rax + r9]
movzx eax, dl
sar al, cl
test al, 1
jne 0x14012e804
inc cl
cmp cl, 8
jne 0x14012e7f2
jmp 0x14012e813
movsx ecx, byte [r8]
movzx eax, byte [r9 + 0x15]
btc ecx, eax
mov byte [r8], cl
xor cl, cl
movzx edx, byte [r10 + r9]
nop word [rax + rax]
movzx eax, dl
sar al, cl
test al, 1
jne 0x14012e832
inc cl
cmp cl, 5
jne 0x14012e820
jmp 0x14012e841
movsx ecx, byte [r8]
movzx eax, byte [r9 + 0x14]
btc ecx, eax
mov byte [r8], cl
add dil, byte [r9 + 0x12]
xor byte [r8], dil
inc ebx
inc r8
cmp ebx, 4
jne 0x14012e790
lea rdx, [r9 + 0xc]
lea rcx, [rsp + 0x70]
call fcn.140092a40
mov r14, rax
cmp qword [rax + 0x18], 0xf
jbe 0x14012e871
mov r14, qword [rax]
lea rdx, [rbp - 0x70]
lea rcx, [rsp + 0x21]
call fcn.1402c20c0
mov r9, rax
mov byte [rax + 0xc], 0
xor ebx, ebx
lea r8, [rax + 9]
nop dword [rax]
lea esi, [rbx + rbx*2]
movzx edx, byte [rsi + r9]
mov byte [r8], dl
movzx eax, bl
add al, al
lea edi, [rax + rbx]
movzx r11d, dil
add r11b, byte [r9 + 0xf]
xor r11b, dl
mov byte [r8], r11b
xor dl, dl
lea eax, [rsi + 1]
movzx r10d, byte [rax + r9]
nop dword [rax + rax]
movzx eax, r10b
movzx ecx, dl
sar al, cl
test al, 1
jne 0x14012e8d6
inc dl
cmp dl, 4
jne 0x14012e8c0
jmp 0x14012e8e5
movsx ecx, r11b
movzx eax, byte [r9 + 0x12]
btc ecx, eax
mov byte [r8], cl
mov cl, 5
lea eax, [rsi + 2]
mov r10d, eax
movzx edx, byte [rax + r9]
movzx eax, dl
sar al, cl
test al, 1
jne 0x14012e904
inc cl
cmp cl, 8
jne 0x14012e8f2
jmp 0x14012e913
movsx ecx, byte [r8]
movzx eax, byte [r9 + 0x11]
btc ecx, eax
mov byte [r8], cl
xor cl, cl
movzx edx, byte [r10 + r9]
nop word [rax + rax]
movzx eax, dl
sar al, cl
test al, 1
jne 0x14012e932
inc cl
cmp cl, 5
jne 0x14012e920
jmp 0x14012e941
movsx ecx, byte [r8]
movzx eax, byte [r9 + 0x10]
btc ecx, eax
mov byte [r8], cl
add dil, byte [r9 + 0xe]
xor byte [r8], dil
inc ebx
inc r8
cmp ebx, 3
jne 0x14012e890
movzx edi, byte [r9 + 9]
movzx ebx, byte [r14 + 1]
lea rcx, [rsp + 0x70]
call fcn.140092d70
cmp dil, bl
jne 0x14012f45f
mov rax, qword gs:[0x60]
mov rax, qword [rax + 0x18]
mov rax, qword [rax + 0x10]
nop dword [rax]
nop dword [rax + rax]
mov rbx, qword [rax + 0x30]
movsxd rcx, dword [rbx + 0x3c]
mov r14d, dword [rcx + rbx + 0x88]
add r14, rbx
cmp r14, rbx
je 0x14012ea19
mov r11d, dword [r14 + 0x18]
test r11d, r11d
je 0x14012ea19
mov esi, dword [r14 + 0x20]
nop word [rax + rax]
dec r11d
lea rcx, [rsi + r11*4]
mov r9d, dword [rcx + rbx]
add r9, rbx
mov r10d, 0xb67aa04b
movzx r8d, byte [r9]
inc r9
test r8b, r8b
je 0x14012ea14
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 0x14012e9e0
cmp r10d, 0x9cbd3947
je 0x14012ea21
test r11d, r11d
jne 0x14012e9c0
mov rax, qword [rax]
jmp 0x14012e990
mov ecx, dword [r14 + 0x1c]
add rcx, rbx
mov eax, dword [r14 + 0x24]
add rax, rbx
movzx eax, word [rax + r11*2]
mov ecx, dword [rcx + rax*4]
add rcx, rbx
call rcx
mov r12d, eax
mov byte [rsp + 0x22], 0
lea rdx, [rsp + 0x50]
lea rcx, [rsp + 0x22]
call fcn.1402c2120
mov r11, rax
mov byte [rax + 8], 0
xor r10d, r10d
lea r9, [rax + 6]
nop dword [rax]
nop word [rax + rax]
lea r8d, [r10 + r10*2]
movzx edx, byte [r8 + r11]
mov byte [r9], dl
movzx eax, r10b
add al, al
lea edi, [rax + r10]
movzx ebx, dil
add bl, byte [r11 + 0xb]
xor bl, dl
mov byte [r9], bl
xor dl, dl
lea eax, [r8 + 1]
movzx r8d, byte [rax + r11]
nop
movzx eax, r8b
movzx ecx, dl
sar al, cl
test al, 1
jne 0x14012eab6
inc dl
cmp dl, 4
jne 0x14012eaa0
jmp 0x14012eac4
movsx ecx, bl
movzx eax, byte [r11 + 0xe]
btc ecx, eax
mov byte [r9], cl
mov dl, 5
lea eax, [r10 + 1]
lea eax, [r10 + rax*2]
movzx r8d, byte [rax + r11]
movzx eax, r8b
movzx ecx, dl
sar al, cl
test al, 1
jne 0x14012eae9
inc dl
cmp dl, 8
jne 0x14012ead3
jmp 0x14012eaf8
movsx ecx, byte [r9]
movzx eax, byte [r11 + 0xd]
btc ecx, eax
mov byte [r9], cl
xor dl, dl
lea eax, [r10 + 1]
lea eax, [r10 + rax*2]
movzx r8d, byte [rax + r11]
nop word [rax + rax]
movzx eax, r8b
movzx ecx, dl
sar al, cl
test al, 1
jne 0x14012eb26
inc dl
cmp dl, 5
jne 0x14012eb10
jmp 0x14012eb35
movsx ecx, byte [r9]
movzx eax, byte [r11 + 0xc]
btc ecx, eax
mov byte [r9], cl
add dil, byte [r11 + 0xa]
xor byte [r9], dil
inc r10d
inc r9
cmp r10d, 2
jne 0x14012ea70
mov eax, 0xaaaaaaab
mul r12d
shr edx, 1
lea eax, [rdx + rdx*2]
mov ecx, r12d
sub ecx, eax
mov r14d, ecx
cmp byte [r11 + rcx + 6], 0x5d
je 0x14012f45f
mov byte [rsp + 0x23], 0
lea rdx, [rsp + 0x30]
lea rcx, [rsp + 0x23]
call fcn.1402c2140
mov rdx, rax
mov byte [rax + 4], 0
movzx r9d, byte [rax + 7]
xor r9b, byte [rax]
mov byte [rax + 3], r9b
xor cl, cl
movzx r8d, byte [rax + 1]
nop dword [rax + rax]
movzx eax, r8b
sar al, cl
test al, 1
jne 0x14012ebb3
inc cl
cmp cl, 4
jne 0x14012eba0
jmp 0x14012ebc1
movsx ecx, r9b
movzx eax, byte [rdx + 0xa]
btc ecx, eax
mov byte [rdx + 3], cl
mov cl, 5
movzx r8d, byte [rdx + 2]
nop dword [rax + rax]
movzx eax, r8b
sar al, cl
test al, 1
jne 0x14012ebe3
inc cl
cmp cl, 8
jne 0x14012ebd0
jmp 0x14012ebf1
movsx ecx, byte [rdx + 3]
movzx eax, byte [rdx + 9]
btc ecx, eax
mov byte [rdx + 3], cl
xor cl, cl
movzx eax, r8b
sar al, cl
test al, 1
jne 0x14012ec06
inc cl
cmp cl, 5
jne 0x14012ebf3
jmp 0x14012ec14
movsx ecx, byte [rdx + 3]
movzx eax, byte [rdx + 8]
btc ecx, eax
mov byte [rdx + 3], cl
movzx eax, byte [rdx + 6]
xor byte [rdx + 3], al
mov r15, r12
mov rax, r12
and eax, 1
cmp byte [rax + rdx + 3], 0x20
je 0x14012f45f
mov byte [rsp + 0x24], 0
lea rdx, [rsp + 0x60]
lea rcx, [rsp + 0x24]
call fcn.1402c2160
mov r11, rax
mov byte [rax + 8], 0
xor r10d, r10d
lea r9, [rax + 6]
nop dword [rax]
nop word [rax + rax]
lea r8d, [r10 + r10*2]
movzx edx, byte [r8 + r11]
mov byte [r9], dl
movzx eax, r10b
add al, al
lea edi, [rax + r10]
movzx ebx, dil
add bl, byte [r11 + 0xb]
xor bl, dl
mov byte [r9], bl
xor dl, dl
lea eax, [r8 + 1]
movzx r8d, byte [rax + r11]
nop
movzx eax, r8b
movzx ecx, dl
sar al, cl
test al, 1
jne 0x14012eca6
inc dl
cmp dl, 4
jne 0x14012ec90
jmp 0x14012ecb4
movsx ecx, bl
movzx eax, byte [r11 + 0xe]
btc ecx, eax
mov byte [r9], cl
mov dl, 5
lea eax, [r10 + 1]
lea eax, [r10 + rax*2]
movzx r8d, byte [rax + r11]
movzx eax, r8b
movzx ecx, dl
sar al, cl
test al, 1
jne 0x14012ecd9
inc dl
cmp dl, 8
jne 0x14012ecc3
jmp 0x14012ece8
movsx ecx, byte [r9]
movzx eax, byte [r11 + 0xd]
btc ecx, eax
mov byte [r9], cl
xor dl, dl
lea eax, [r10 + 1]
lea eax, [r10 + rax*2]
movzx r8d, byte [rax + r11]
nop word [rax + rax]
movzx eax, r8b
movzx ecx, dl
sar al, cl
test al, 1
jne 0x14012ed16
inc dl
cmp dl, 5
jne 0x14012ed00
jmp 0x14012ed25
movsx ecx, byte [r9]
movzx eax, byte [r11 + 0xc]
btc ecx, eax
mov byte [r9], cl
add dil, byte [r11 + 0xa]
xor byte [r9], dil
inc r10d
inc r9
cmp r10d, 2
jne 0x14012ec60
cmp byte [r11 + r14 + 6], 0xa
je 0x14012f45f
mov byte [rsp + 0x25], 0
lea rdx, [rbp - 0x58]
lea rcx, [rsp + 0x25]
call fcn.1402c2180
mov r11, rax
mov byte [rax + 0xc], 0
xor r10d, r10d
lea r9, [rax + 9]
nop dword [rax]
lea r8d, [r10 + r10*2]
movzx edx, byte [r8 + r11]
mov byte [r9], dl
movzx eax, r10b
add al, al
lea edi, [rax + r10]
movzx ebx, dil
add bl, byte [r11 + 0xf]
xor bl, dl
mov byte [r9], bl
xor dl, dl
lea eax, [r8 + 1]
movzx r8d, byte [rax + r11]
nop
movzx eax, r8b
movzx ecx, dl
sar al, cl
test al, 1
jne 0x14012edb6
inc dl
cmp dl, 4
jne 0x14012eda0
jmp 0x14012edc4
movsx ecx, bl
movzx eax, byte [r11 + 0x12]
btc ecx, eax
mov byte [r9], cl
mov dl, 5
lea eax, [r10 + 1]
lea eax, [r10 + rax*2]
movzx r8d, byte [rax + r11]
movzx eax, r8b
movzx ecx, dl
sar al, cl
test al, 1
jne 0x14012ede9
inc dl
cmp dl, 8
jne 0x14012edd3
jmp 0x14012edf8
movsx ecx, byte [r9]
movzx eax, byte [r11 + 0x11]
btc ecx, eax
mov byte [r9], cl
xor dl, dl
lea eax, [r10 + 1]
lea eax, [r10 + rax*2]
movzx r8d, byte [rax + r11]
nop word [rax + rax]
movzx eax, r8b
movzx ecx, dl
sar al, cl
test al, 1
jne 0x14012ee26
inc dl
cmp dl, 5
jne 0x14012ee10
jmp 0x14012ee35
movsx ecx, byte [r9]
movzx eax, byte [r11 + 0x10]
btc ecx, eax
mov byte [r9], cl
add dil, byte [r11 + 0xe]
xor byte [r9], dil
inc r10d
inc r9
cmp r10d, 3
jne 0x14012ed70
and r15d, r10d
cmp byte [r15 + r11 + 9], 0x2e
je 0x14012f45f
cmp r12d, 0xe7c39675
ja 0x14012f45f
inc r12d
xor r12d, 0xe7c39675
cmp r12d, 0x1845b662
jne 0x14012f45f
mov byte [rsp + 0x26], 0
lea rdx, [rbp - 0x40]
lea rcx, [rsp + 0x26]
call fcn.1402c21b0
mov r11, rax
mov byte [rax + 0xc], 0
xor r10d, r10d
lea r9, [rax + 9]
lea r8d, [r10 + r10*2]
movzx edx, byte [r8 + r11]
mov byte [r9], dl
movzx eax, r10b
add al, al
lea edi, [rax + r10]
movzx ebx, dil
add bl, byte [r11 + 0xf]
xor bl, dl
mov byte [r9], bl
xor dl, dl
lea eax, [r8 + 1]
movzx r8d, byte [rax + r11]
nop
movzx eax, r8b
movzx ecx, dl
sar al, cl
test al, 1
jne 0x14012eee6
inc dl
cmp dl, 4
jne 0x14012eed0
jmp 0x14012eef4
movsx ecx, bl
movzx eax, byte [r11 + 0x12]
btc ecx, eax
mov byte [r9], cl
mov dl, 5
lea eax, [r10 + 1]
lea eax, [r10 + rax*2]
movzx r8d, byte [rax + r11]
movzx eax, r8b
movzx ecx, dl
sar al, cl
test al, 1
jne 0x14012ef19
inc dl
cmp dl, 8
jne 0x14012ef03
jmp 0x14012ef28
movsx ecx, byte [r9]
movzx eax, byte [r11 + 0x11]
btc ecx, eax
mov byte [r9], cl
xor dl, dl
lea eax, [r10 + 1]
lea eax, [r10 + rax*2]
movzx r8d, byte [rax + r11]
nop word [rax + rax]
movzx eax, r8b
movzx ecx, dl
sar al, cl
test al, 1
jne 0x14012ef56
inc dl
cmp dl, 5
jne 0x14012ef40
jmp 0x14012ef65
movsx ecx, byte [r9]
movzx eax, byte [r11 + 0x10]
btc ecx, eax
mov byte [r9], cl
add dil, byte [r11 + 0xe]
xor byte [r9], dil
inc r10d
inc r9
cmp r10d, 3
jne 0x14012eea0
cmp byte [r11 + 9], r10b
jne 0x14012f05b
mov rax, qword gs:[0x60]
mov rax, qword [rax + 0x18]
mov rax, qword [rax + 0x10]
nop word [rax + rax]
mov rbx, qword [rax + 0x30]
movsxd rcx, dword [rbx + 0x3c]
mov esi, dword [rcx + rbx + 0x88]
add rsi, rbx
cmp rsi, rbx
je 0x14012f029
mov r11d, dword [rsi + 0x18]
test r11d, r11d
je 0x14012f029
mov r14d, dword [rsi + 0x20]
nop dword [rax]
nop dword [rax + rax]
dec r11d
lea rcx, [rbx + r11*4]
mov r9d, dword [rcx + r14]
add r9, rbx
mov r10d, 0x732a1bee
movzx r8d, byte [r9]
inc r9
test r8b, r8b
je 0x14012f024
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 0x14012eff0
cmp r10d, 0xf54da9ee
je 0x14012f031
test r11d, r11d
jne 0x14012efd0
mov rax, qword [rax]
jmp 0x14012efa0
mov ecx, dword [rsi + 0x1c]
add rcx, rbx
mov eax, dword [rsi + 0x24]
add rax, rbx
movzx eax, word [rax + r11*2]
mov r8d, dword [rcx + rax*4]
add r8, rbx
mov edx, 0x923c2db6
mov ecx, 0x4f36856b
call r8
jmp 0x14012f45f
mov byte [rsp + 0x27], 0
lea rdx, [rbp - 0x28]
lea rcx, [rsp + 0x27]
call fcn.1402c21d0
mov r11, rax
mov byte [rax + 0xc], 0
xor r10d, r10d
lea r9, [rax + 9]
nop dword [rax]
lea r8d, [r10 + r10*2]
movzx edx, byte [r8 + r11]
mov byte [r9], dl
movzx eax, r10b
add al, al
lea edi, [rax + r10]
movzx ebx, dil
add bl, byte [r11 + 0xf]
xor bl, dl
mov byte [r9], bl
xor dl, dl
lea eax, [r8 + 1]
movzx r8d, byte [rax + r11]
nop
movzx eax, r8b
movzx ecx, dl
sar al, cl
test al, 1
jne 0x14012f0c6
inc dl
cmp dl, 4
jne 0x14012f0b0
jmp 0x14012f0d4
movsx ecx, bl
movzx eax, byte [r11 + 0x12]
btc ecx, eax
mov byte [r9], cl
mov dl, 5
lea eax, [r10 + 1]
lea eax, [r10 + rax*2]
movzx r8d, byte [rax + r11]
movzx eax, r8b
movzx ecx, dl
sar al, cl
test al, 1
jne 0x14012f0f9
inc dl
cmp dl, 8
jne 0x14012f0e3
jmp 0x14012f108
movsx ecx, byte [r9]
movzx eax, byte [r11 + 0x11]
btc ecx, eax
mov byte [r9], cl
xor dl, dl
lea eax, [r10 + 1]
lea eax, [r10 + rax*2]
movzx r8d, byte [rax + r11]
nop word [rax + rax]
movzx eax, r8b
movzx ecx, dl
sar al, cl
test al, 1
jne 0x14012f136
inc dl
cmp dl, 5
jne 0x14012f120
jmp 0x14012f145
movsx ecx, byte [r9]
movzx eax, byte [r11 + 0x10]
btc ecx, eax
mov byte [r9], cl
add dil, byte [r11 + 0xe]
xor byte [r9], dil
inc r10d
inc r9
cmp r10d, 3
jne 0x14012f080
cmp byte [r11 + 0xb], 4
jne 0x14012f45f
movss xmm1, dword [0x1403e9cf4]
movaps xmm0, xmm1
divss xmm0, dword [0x1403e9cf0]
mulss xmm0, xmm1
addss xmm1, xmm0
movss dword [0x1403e9cf4], xmm1
mov byte [rsp + 0x28], 0
lea rdx, [rsp + 0x40]
lea rcx, [rsp + 0x28]
call fcn.1402c2200
mov r9, rax
mov r8d, dword [rax + 4]
movzx ecx, byte [rax + 0xa]
mov edx, r8d
shr edx, cl
test dl, 1
je 0x14012f1c2
movzx ecx, byte [rax]
inc cl
mov edx, r8d
shr edx, cl
test dl, 1
jne 0x14012f20e
movzx ecx, byte [rax]
lea eax, [rcx + 2]
movzx edx, al
bt r8d, ecx
setae cl
bt r8d, edx
setae al
test al, cl
je 0x14012f20e
movzx ecx, byte [r9 + 8]
mov eax, r8d
shr eax, cl
test al, 1
jne 0x14012f20e
movzx ecx, byte [r9 + 9]
shr r8d, cl
test r8b, 1
jne 0x14012f20e
movss xmm0, dword [0x1403e9cf0]
comiss xmm0, dword [0x1403e9cf4]
jbe 0x14012f45f
mov rax, qword gs:[0x60]
mov rax, qword [rax + 0x18]
mov rax, qword [rax + 0x10]
nop
mov rbx, qword [rax + 0x30]
movsxd rcx, dword [rbx + 0x3c]
mov esi, dword [rcx + rbx + 0x88]
add rsi, rbx
cmp rsi, rbx
je 0x14012f2a9
mov r11d, dword [rsi + 0x18]
test r11d, r11d
je 0x14012f2a9
mov edi, dword [rsi + 0x20]
nop dword [rax]
nop word [rax + rax]
dec r11d
lea rdx, [rbx + r11*4]
mov r9d, dword [rdx + rdi]
add r9, rbx
mov r10d, 0xae960243
movzx r8d, byte [r9]
inc r9
test r8b, r8b
je 0x14012f2a4
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 0x14012f270
cmp r10d, 0x395f96ef
je 0x14012f2b1
test r11d, r11d
jne 0x14012f250
mov rax, qword [rax]
jmp 0x14012f220
mov edx, dword [rsi + 0x1c]
add rdx, rbx
mov ecx, dword [rsi + 0x24]
add rcx, rbx
movzx ecx, word [rcx + r11*2]
mov eax, dword [rdx + rcx*4]
add rax, rbx
call rax
mov r14, rax
test rax, rax
je 0x14012f45f
mov rcx, qword gs:[0x60]
mov rcx, qword [rcx + 0x18]
mov rcx, qword [rcx + 0x10]
nop word [rax + rax]
mov rbx, qword [rcx + 0x30]
movsxd rdx, dword [rbx + 0x3c]
mov esi, dword [rdx + rbx + 0x88]
add rsi, rbx
cmp rsi, rbx
je 0x14012f379
mov r11d, dword [rsi + 0x18]
test r11d, r11d
je 0x14012f379
mov edi, dword [rsi + 0x20]
nop dword [rax]
nop word [rax + rax]
dec r11d
lea rdx, [rbx + r11*4]
mov r9d, dword [rdx + rdi]
add r9, rbx
mov r10d, 0xb11e9385
movzx r8d, byte [r9]
inc r9
test r8b, r8b
je 0x14012f374
movsx eax, r8b
sub r8b, 0x41
mov edx, eax
or edx, 0x20
cmp r8b, 0x19
cmova edx, eax
xor edx, r10d
imul r10d, edx, 0x1000193
movzx r8d, byte [r9]
lea r9, [r9 + 1]
test r8b, r8b
jne 0x14012f340
cmp r10d, 0xf7879165
je 0x14012f381
test r11d, r11d
jne 0x14012f320
mov rcx, qword [rcx]
jmp 0x14012f2f0
mov edx, dword [rsi + 0x1c]
add rdx, rbx
mov ecx, dword [rsi + 0x24]
add rcx, rbx
movzx ecx, word [rcx + r11*2]
mov eax, dword [rdx + rcx*4]
add rax, rbx
mov rcx, r14
call rax
mov rax, qword gs:[0x60]
mov rax, qword [rax + 0x18]
mov rax, qword [rax + 0x10]
nop
mov rbx, qword [rax + 0x30]
movsxd rcx, dword [rbx + 0x3c]
mov edi, dword [rcx + rbx + 0x88]
add rdi, rbx
cmp rdi, rbx
je 0x14012f439
mov r11d, dword [rdi + 0x18]
test r11d, r11d
je 0x14012f439
mov esi, dword [rdi + 0x20]
nop dword [rax]
nop word [rax + rax]
dec r11d
lea rdx, [rbx + r11*4]
mov r9d, dword [rdx + rsi]
add r9, rbx
mov r10d, 0x7f0515f6
movzx r8d, byte [r9]
inc r9
test r8b, r8b
je 0x14012f434
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 0x14012f400
cmp r10d, 0x7528e5e4
je 0x14012f441
test r11d, r11d
jne 0x14012f3e0
mov rax, qword [rax]
jmp 0x14012f3b0
mov edx, dword [rdi + 0x1c]
add rdx, rbx
mov ecx, dword [rdi + 0x24]
add rcx, rbx
movzx ecx, word [rcx + r11*2]
mov eax, dword [rdx + rcx*4]
add rax, rbx
mov ecx, 0xa07a3427
call rax
mov rcx, qword [r13 + 0xd18]
test rcx, rcx
je 0x14012f470
call fcn.1401e9040
mov rcx, qword [r13 + 0xd20]
test rcx, rcx
je 0x14012f481
call fcn.1401e9140
mov rcx, qword [r13 + 0xd28]
test rcx, rcx
je 0x14012f492
call fcn.1401e91d0
mov rax, qword [0x1403ee180]
mov rcx, qword [rax + 0x60]
test rcx, rcx
je 0x14012f4b6
call fcn.1401e9270
mov rax, qword [0x1403ee180]
mov qword [rax + 0x60], 0
lea rbx, [r13 + 0x838]
cmp qword [rbx], 0
je 0x14012f512
lea rsi, [rbx + 0x40]
cmp rbx, rsi
je 0x14012f512
nop dword [rax]
mov rdi, qword [rbx]
test rdi, rdi
je 0x14012f502
mov rcx, qword [rdi + 0x10]
test rcx, rcx
je 0x14012f4eb
mov edx, reloc.WS2_32.dll_recv
call fcn.140362770
mov rcx, qword [rdi + 0x18]
call fcn.1400bf450
nop
mov edx, reloc.WS2_32.dll_WSASetLastError
mov rcx, rdi
call fcn.140362770
mov qword [rbx], 0
add rbx, 8
cmp rbx, rsi
jne 0x14012f4d0
mov rcx, qword [r13 + 0x10]
test rcx, rcx
je 0x14012f529
mov rax, qword [rcx]
call qword [rax + reloc.WS2_32.dll_recv]
mov qword [r13 + 0x10], 0
mov rcx, qword [r13 + 8]
test rcx, rcx
je 0x14012f540
mov rax, qword [rcx]
call qword [rax + reloc.WS2_32.dll_recv]
mov qword [r13 + 8], 0
mov rcx, qword [r13 + 0x18]
test rcx, rcx
je 0x14012f557
mov rax, qword [rcx]
call qword [rax + reloc.WS2_32.dll_recv]
mov qword [r13 + 0x18], 0
lea rcx, [r13 + 0xb20]
call fcn.1400ca910
lea rcx, [r13 + 0x9e0]
call fcn.1400c9410
lea rcx, [r13 + 0x8a0]
call fcn.1400c85e0
nop
mov rcx, qword [r13 + 0x830]
test rcx, rcx
je 0x14012f58d
call fcn.140362770
mov rcx, qword [r13 + 0x818]
call fcn.1400be670
nop
mov rcx, qword [r13 + 0x7f0]
test rcx, rcx
je 0x14012f5ab
call fcn.140362770
mov rcx, qword [r13 + 0x7d8]
call fcn.1400be670
nop
mov rcx, qword [r13 + 0x758]
test rcx, rcx
je 0x14012f5ce
mov edx, reloc.WS2_32.dll_recv
call fcn.140362770
mov rcx, qword [r13 + 0x760]
call fcn.1400bf450
nop
mov rcx, qword [r13 + 0x740]
test rcx, rcx
je 0x14012f5ec
call fcn.140362770
mov rcx, qword [r13 + 0x728]
call fcn.1400be670
nop
mov rbx, qword [r13 + 0x6c8]
test rbx, rbx
je 0x14012f62a
mov rcx, qword [rbx + 0x38]
test rcx, rcx
je 0x14012f613
call fcn.140362770
mov rcx, qword [rbx + 0x20]
call fcn.1400be670
nop
mov edx, 0x40
mov rcx, rbx
call fcn.140362770
mov rbx, qword [r13 + 0x6c0]
test rbx, rbx
je 0x14012f660
mov rcx, qword [rbx + 0x10]
test rcx, rcx
je 0x14012f649
mov edx, reloc.WS2_32.dll_recv
call fcn.140362770
mov rcx, qword [rbx + 0x18]
call fcn.1400bf450
nop
mov edx, reloc.WS2_32.dll_WSASetLastError
mov rcx, rbx
call fcn.140362770
mov rbx, qword [r13 + 0x650]
test rbx, rbx
je 0x14012f691
mov rcx, qword [rbx + 0x38]
test rcx, rcx
je 0x14012f67a
call fcn.140362770
mov rcx, qword [rbx + 0x20]
call fcn.1400be670
nop
mov edx, 0x40
mov rcx, rbx
call fcn.140362770
mov rbx, qword [r13 + 0x648]
test rbx, rbx
je 0x14012f6c7
mov rcx, qword [rbx + 0x10]
test rcx, rcx
je 0x14012f6b0
mov edx, reloc.WS2_32.dll_recv
call fcn.140362770
mov rcx, qword [rbx + 0x18]
call fcn.1400bf450
nop
mov edx, reloc.WS2_32.dll_WSASetLastError
mov rcx, rbx
call fcn.140362770
lea rcx, [r13 + 0x410]
call fcn.1400c7900
lea rcx, [r13 + 0x328]
call fcn.1400c6b80
lea rcx, [r13 + 0xc0]
call fcn.1400c6420
nop
mov rcx, qword [r13 + 0x60]
test rcx, rcx
je 0x14012f6ff
mov edx, reloc.WS2_32.dll_recv
call fcn.140362770
mov rcx, qword [r13 + 0x68]
call fcn.1400bf450
nop
lea r11, [rsp + 0x110]
mov rbx, qword [r11 + 0x38]
mov rsi, qword [r11 + 0x40]
mov rdi, qword [r11 + 0x48]
mov rsp, r11
pop r15
pop r14
pop r13
pop r12
pop rbp
ret