Function at 0x140118d3c
Capabilities:
Access peb ldr_data
Encode data using xor
Hash data using fnv
Resolve function by fnv-1a hash
Resolve function by parsing pe exports

Disassembly:
mov rax, rsp
mov qword [rax + 8], rsi
mov qword [rax + 0x10], r12
mov qword [rax + 0x18], r13
mov qword [rax + 0x20], r14
push r15
sub rsp, 0x60
mov rax, qword [0x140200540]
xor rax, rsp
mov qword [rsp + 0x58], rax
mov r10, qword [0x140230460]
mov r15d, 0x811c9dc5
test r10, r10
jne 0x140118ede
xor esi, esi
mov r14d, 0x3285501
mov rax, qword gs:[0x60]
mov rcx, qword [rax + 0x18]
mov rax, qword [rcx + 0x10]
mov r13, qword [rax]
mov r10, r13
mov ecx, 8
movups xmm0, xmmword [r10 + 0x58]
movd eax, xmm0
sub ax, cx
test esi, esi
je 0x140118de3
psrldq xmm0, 8
movq rcx, xmm0
movzx eax, ax
shr rax, 1
lea r8, [rcx + rax*2]
mov edx, r15d
jmp 0x140118dd6
movsx eax, byte [rcx]
xor eax, edx
imul edx, eax, 0x1000193
add rcx, 2
cmp rcx, r8
jne 0x140118dc7
cmp edx, esi
jne 0x140118ebe
mov r8, qword [r10 + 0x30]
movsxd rax, dword [r8 + 0x3c]
mov rax, qword [rax + r8 + 0x88]
mov r9d, eax
add r9, r8
shr rax, 0x20
cmp r9, r8
je 0x140118ebe
mov r11d, dword [r9 + 0x18]
test r11d, r11d
je 0x140118ebe
mov edx, dword [r9 + 0x20]
dec r11d
mov ecx, r11d
mov qword [rsp + 0x40], rcx
lea rcx, [r8 + r11*4]
mov edx, dword [rcx + rdx]
add rdx, r8
mov r12d, r15d
jmp 0x140118e3e
movsx ecx, cl
xor ecx, r12d
imul r12d, ecx, 0x1000193
mov cl, byte [rdx]
inc rdx
test cl, cl
jne 0x140118e31
cmp r12d, r14d
je 0x140118e57
test r11d, r11d
mov edx, dword [r9 + 0x20]
jne 0x140118e17
jmp 0x140118ebe
mov edx, dword [r9 + 0x1c]
add rdx, r8
mov ecx, dword [r9 + 0x24]
add rcx, r8
mov r10, qword [rsp + 0x40]
movzx ecx, word [rcx + r10*2]
mov r10d, dword [rdx + rcx*4]
add r10, r8
cmp r10, r9
jbe 0x140118ed7
lea rcx, [rax + r9]
cmp r10, rcx
jae 0x140118ed7
mov esi, r15d
mov r14d, r15d
jmp 0x140118e9a
movsx eax, al
xor eax, esi
imul esi, eax, 0x1000193
inc r10
mov al, byte [r10]
cmp al, 0x2e
jne 0x140118e8c
jmp 0x140118eb0
movsx eax, al
xor eax, r14d
imul r14d, eax, 0x1000193
inc r10
mov al, byte [r10]
test al, al
jne 0x140118ea3
mov r10, qword [r13]
mov rax, qword [r10]
mov r10, rax
cmp rax, r13
je 0x140118ed4
cmp qword [rax + 0x30], 0
jne 0x140118d99
xor r10d, r10d
mov qword [0x140230460], r10
mov r14d, 8
mov edx, 0x2000
xor ecx, ecx
lea r9d, [r14 + 0x38]
mov r8d, 0x3000
call r10
mov qword [rsp + 0x40], rax
lea rsi, [rax + 0xffa]
mov qword [rsp + 0x20], rsi
mov r9, qword [0x140230458]
test r9, r9
jne 0x140119082
xor esi, esi
mov r12d, 0xa45cec64
mov rcx, qword gs:[0x60]
mov rdx, qword [rcx + 0x18]
mov rcx, qword [rdx + 0x10]
mov rax, qword [rcx]
mov qword [rsp + 0x28], rax
mov r9, rax
movups xmm0, xmmword [r9 + 0x58]
movd eax, xmm0
sub ax, r14w
test esi, esi
je 0x140118f83
psrldq xmm0, 8
movq rcx, xmm0
movzx eax, ax
shr rax, 1
lea r8, [rcx + rax*2]
mov edx, r15d
jmp 0x140118f76
movsx eax, byte [rcx]
xor eax, edx
imul edx, eax, 0x1000193
add rcx, 2
cmp rcx, r8
jne 0x140118f67
cmp edx, esi
jne 0x14011905b
mov r8, qword [r9 + 0x30]
movsxd rax, dword [r8 + 0x3c]
mov rax, qword [rax + r8 + 0x88]
mov r10d, eax
add r10, r8
shr rax, 0x20
cmp r10, r8
je 0x14011905b
mov r11d, dword [r10 + 0x18]
test r11d, r11d
je 0x14011905b
mov edx, dword [r10 + 0x20]
dec r11d
lea rcx, [r8 + r11*4]
mov edx, dword [rcx + rdx]
add rdx, r8
mov r14d, r15d
jmp 0x140118fd6
movsx ecx, cl
xor ecx, r14d
imul r14d, ecx, 0x1000193
mov cl, byte [rdx]
inc rdx
test cl, cl
jne 0x140118fc9
cmp r14d, r12d
je 0x140118fef
test r11d, r11d
mov edx, dword [r10 + 0x20]
jne 0x140118fb7
jmp 0x140119055
mov edx, dword [r10 + 0x1c]
add rdx, r8
mov ecx, dword [r10 + 0x24]
add rcx, r8
movzx ecx, word [rcx + r11*2]
mov r9d, dword [rdx + rcx*4]
add r9, r8
cmp r9, r10
jbe 0x140119076
lea rcx, [rax + r10]
cmp r9, rcx
jae 0x140119076
mov esi, r15d
mov r12d, r15d
jmp 0x14011902d
movsx eax, al
xor eax, esi
imul esi, eax, 0x1000193
inc r9
mov al, byte [r9]
cmp al, 0x2e
jne 0x14011901f
jmp 0x140119043
movsx eax, al
xor eax, r12d
imul r12d, eax, 0x1000193
inc r9
mov al, byte [r9]
test al, al
jne 0x140119036
mov rax, qword [rsp + 0x28]
mov r9, qword [rax]
mov r14d, 8
mov rax, qword [r9]
mov r9, rax
cmp rax, qword [rsp + 0x28]
je 0x140119073
cmp qword [rax + 0x30], 0
jne 0x140118f3d
xor r9d, r9d
mov qword [0x140230458], r9
mov rsi, qword [rsp + 0x20]
mov r8d, 6
lea rdx, section..data
mov rcx, rsi
call r9
mov rax, qword [rsp + 0x40]
add rax, 0x1000
mov qword [rsp + 0x48], rax
mov r9, qword [0x140230450]
test r9, r9
jne 0x140119218
xor esi, esi
mov r12d, 0xaae02ba9
mov rax, qword gs:[0x60]
mov rcx, qword [rax + 0x18]
mov rax, qword [rcx + 0x10]
mov rax, qword [rax]
mov qword [rsp + 0x28], rax
mov r9, rax
movups xmm0, xmmword [r9 + 0x58]
movd eax, xmm0
sub ax, 8
test esi, esi
je 0x14011911f
psrldq xmm0, 8
movq rcx, xmm0
movzx eax, ax
shr rax, 1
lea r8, [rcx + rax*2]
mov edx, r15d
jmp 0x140119112
movsx eax, byte [rcx]
xor eax, edx
imul edx, eax, 0x1000193
add rcx, 2
cmp rcx, r8
jne 0x140119103
cmp edx, esi
jne 0x1401191f1
mov r8, qword [r9 + 0x30]
movsxd rax, dword [r8 + 0x3c]
mov rax, qword [rax + r8 + 0x88]
mov r10d, eax
add r10, r8
shr rax, 0x20
cmp r10, r8
je 0x1401191f1
mov r11d, dword [r10 + 0x18]
test r11d, r11d
je 0x1401191f1
mov edx, dword [r10 + 0x20]
dec r11d
lea rcx, [r8 + r11*4]
mov edx, dword [rcx + rdx]
add rdx, r8
mov r14d, r15d
jmp 0x140119172
movsx ecx, cl
xor ecx, r14d
imul r14d, ecx, 0x1000193
mov cl, byte [rdx]
inc rdx
test cl, cl
jne 0x140119165
cmp r14d, r12d
je 0x14011918b
test r11d, r11d
mov edx, dword [r10 + 0x20]
jne 0x140119153
jmp 0x1401191f1
mov edx, dword [r10 + 0x1c]
add rdx, r8
mov ecx, dword [r10 + 0x24]
add rcx, r8
movzx ecx, word [rcx + r11*2]
mov r9d, dword [rdx + rcx*4]
add r9, r8
cmp r9, r10
jbe 0x14011920c
lea rcx, [r10 + rax]
cmp r9, rcx
jae 0x14011920c
mov esi, r15d
mov r12d, r15d
jmp 0x1401191c9
movsx eax, al
xor eax, esi
imul esi, eax, 0x1000193
inc r9
mov al, byte [r9]
cmp al, 0x2e
jne 0x1401191bb
jmp 0x1401191df
movsx eax, al
xor eax, r12d
imul r12d, eax, 0x1000193
inc r9
mov al, byte [r9]
test al, al
jne 0x1401191d2
mov rax, qword [rsp + 0x28]
mov r9, qword [rax]
mov rax, qword [r9]
mov r9, rax
cmp rax, qword [rsp + 0x28]
je 0x140119209
cmp qword [rax + 0x30], 0
jne 0x1401190d9
xor r9d, r9d
mov qword [0x140230450], r9
mov rsi, qword [rsp + 0x20]
mov r13d, 0xaae02ba9
mov r8d, reloc.WS2_32.dll_recv
lea rdx, [rsp + 0x48]
or rcx, 0xffffffffffffffff
call r9
nop
call rsi
mov edx, 8
jmp 0x14011924b
mov r9, qword [0x140230450]
test r9, r9
jne 0x1401193b8
xor esi, esi
mov rax, qword gs:[0x60]
mov rcx, qword [rax + 0x18]
mov rax, qword [rcx + 0x10]
mov rax, qword [rax]
mov qword [rsp + 0x28], rax
mov r8, rax
movups xmm0, xmmword [r8 + 0x58]
movd eax, xmm0
sub ax, dx
test esi, esi
je 0x1401192be
psrldq xmm0, 8
movq rcx, xmm0
movzx eax, ax
shr rax, 1
lea r9, [rcx + rax*2]
mov edx, r15d
jmp 0x1401192b1
movsx eax, byte [rcx]
xor eax, edx
imul edx, eax, 0x1000193
add rcx, 2
cmp rcx, r9
jne 0x1401192a2
cmp edx, esi
jne 0x140119390
mov r10, qword [r8 + 0x30]
movsxd rax, dword [r10 + 0x3c]
mov rax, qword [rax + r10 + 0x88]
mov r11d, eax
add r11, r10
shr rax, 0x20
cmp r11, r10
je 0x140119390
mov r9d, dword [r11 + 0x18]
test r9d, r9d
je 0x140119390
mov edx, dword [r11 + 0x20]
dec r9d
lea rcx, [r10 + r9*4]
mov edx, dword [rcx + rdx]
add rdx, r10
mov r14d, r15d
jmp 0x140119311
movsx ecx, cl
xor ecx, r14d
imul r14d, ecx, 0x1000193
mov cl, byte [rdx]
inc rdx
test cl, cl
jne 0x140119304
cmp r14d, r13d
je 0x14011932a
test r9d, r9d
mov edx, dword [r11 + 0x20]
jne 0x1401192f2
jmp 0x140119390
mov edx, dword [r11 + 0x24]
add rdx, r10
movzx r8d, word [rdx + r9*2]
mov edx, dword [r11 + 0x1c]
add rdx, r10
mov r9d, dword [rdx + r8*4]
add r9, r10
cmp r9, r11
jbe 0x1401193b1
lea rcx, [rax + r11]
cmp r9, rcx
jae 0x1401193b1
mov esi, r15d
mov r13d, r15d
jmp 0x140119368
movsx eax, al
xor eax, esi
imul esi, eax, 0x1000193
inc r9
mov al, byte [r9]
cmp al, 0x2e
jne 0x14011935a
jmp 0x14011937e
movsx eax, al
xor eax, r13d
imul r13d, eax, 0x1000193
inc r9
mov al, byte [r9]
test al, al
jne 0x140119371
mov rax, qword [rsp + 0x28]
mov r8, qword [rax]
mov rax, qword [r8]
mov r8, rax
cmp rax, qword [rsp + 0x28]
je 0x1401193ae
cmp qword [rax + 0x30], 0
je 0x1401193ae
mov edx, 8
jmp 0x140119279
xor r9d, r9d
mov qword [0x140230450], r9
mov r8d, reloc.WS2_32.dll_recv
lea rdx, [rsp + 0x48]
or rcx, 0xffffffffffffffff
call r9
call fcn.1401144f0
movsx esi, al
call fcn.1401144ec
movsx ecx, al
imul esi, ecx
mov dword [rsp + 0x30], esi
call fcn.1401144fc
movsx r14d, al
mov dword [rsp + 0x28], r14d
lea r9d, [r14 + rsi*8]
movsx eax, byte [reloc.WS2_32.dll_htons]
add eax, r9d
movsx ecx, byte [reloc.WS2_32.dll_htonl]
xor edx, edx
div ecx
movsx ecx, byte [reloc.WS2_32.dll_accept]
cmp eax, ecx
je 0x140119700
mov rax, qword [rsp + 0x20]
mov ecx, dword [rax]
sub ecx, dword [section..data]
jne 0x140119433
movzx ecx, word [rax + 4]
movzx eax, word [0x140200004]
sub ecx, eax
xor eax, eax
test ecx, ecx
setne al
xorps xmm2, xmm2
cvtsi2sd xmm2, rax
movsx eax, byte [reloc.WS2_32.dll_getsockopt]
movd xmm1, eax
cvtdq2pd xmm1, xmm1
movsx eax, byte [reloc.WS2_32.dll_closesocket]
movd xmm0, eax
cvtdq2pd xmm0, xmm0
addsd xmm0, xmm0
subsd xmm1, xmm0
mulsd xmm1, xmm2
movsd qword [rsp + 0x38], xmm1
movsx eax, byte [reloc.WS2_32.dll_htons]
add eax, r9d
movsx ecx, byte [reloc.WS2_32.dll_htonl]
xor edx, edx
div ecx
movsx ecx, byte [reloc.WS2_32.dll_accept]
cmp eax, ecx
je 0x1401194d7
call fcn.1401144f4
movsx edx, al
movsx eax, byte [0x140230389]
imul edx, eax
lea r8d, [rdx + rdx*2]
call fcn.140114500
movsx ecx, al
sub r8d, ecx
call fcn.1401144f8
movsx ecx, al
add r8d, ecx
movsx ecx, byte [reloc.WS2_32.dll_closesocket]
add ecx, r8d
je 0x1401194d7
mov r10d, 8
mov dword [rsp + 0x20], r10d
jmp 0x14011953a
lea edx, [rsi + rsi*4]
movsx eax, byte [reloc.WS2_32.dll_htons]
add eax, r14d
lea eax, [rax + rdx*2]
movsx ecx, byte [reloc.WS2_32.dll_htonl]
xor edx, edx
div ecx
movsx ecx, byte [reloc.WS2_32.dll_accept]
mov r10d, 8
cmp eax, ecx
je 0x14011953a
movsx eax, byte [reloc.WS2_32.dll_htons]
add eax, r14d
lea eax, [rax + rsi*4]
movsx ecx, byte [reloc.WS2_32.dll_htonl]
xor edx, edx
div ecx
movsx ecx, byte [reloc.WS2_32.dll_accept]
sub eax, ecx
xorps xmm0, xmm0
cvtsi2sd xmm0, rax
mulsd xmm0, qword [rsp + 0x38]
cvttsd2si eax, xmm0
mov dword [rsp + 0x20], eax
lea ecx, [rsi + r14]
movsx eax, byte [reloc.WS2_32.dll_htons]
lea ecx, [rcx + rsi*8]
add eax, ecx
movsx ecx, byte [reloc.WS2_32.dll_htonl]
xor edx, edx
div ecx
movsx ecx, byte [reloc.WS2_32.dll_accept]
sub eax, ecx
imul eax, dword [rsp + 0x20]
test eax, eax
je 0x140119700
mov rdx, qword [0x1402303d8]
mov r13d, 0xcded1a85
mov dword [rsp + 0x20], r13d
test rdx, rdx
jne 0x1401196ea
xor esi, esi
mov rax, qword gs:[0x60]
mov rcx, qword [rax + 0x18]
mov rax, qword [rcx + 0x10]
mov rax, qword [rax]
mov qword [rsp + 0x38], rax
mov r8, rax
movups xmm0, xmmword [r8 + 0x58]
movd eax, xmm0
sub ax, r10w
test esi, esi
je 0x1401195ea
psrldq xmm0, 8
movq rcx, xmm0
movzx eax, ax
shr rax, 1
lea r9, [rcx + rax*2]
mov edx, r15d
jmp 0x1401195dd
movsx eax, byte [rcx]
xor eax, edx
imul edx, eax, 0x1000193
add rcx, 2
cmp rcx, r9
jne 0x1401195ce
cmp edx, esi
jne 0x1401196c0
mov r9, qword [r8 + 0x30]
movsxd rax, dword [r9 + 0x3c]
mov rax, qword [rax + r9 + 0x88]
mov r10d, eax
add r10, r9
shr rax, 0x20
cmp r10, r9
je 0x1401196ba
mov r11d, dword [r10 + 0x18]
test r11d, r11d
je 0x1401196ba
mov edx, dword [r10 + 0x20]
dec r11d
lea rcx, [r9 + r11*4]
mov edx, dword [rcx + rdx]
add rdx, r9
mov r14d, r15d
jmp 0x14011963d
movsx ecx, cl
xor ecx, r14d
imul r14d, ecx, 0x1000193
mov cl, byte [rdx]
inc rdx
test cl, cl
jne 0x140119630
cmp r14d, r13d
je 0x140119656
test r11d, r11d
mov edx, dword [r10 + 0x20]
jne 0x14011961e
jmp 0x1401196ba
mov edx, dword [r10 + 0x24]
add rdx, r9
movzx r8d, word [rdx + r11*2]
mov edx, dword [r10 + 0x1c]
add rdx, r9
mov edx, dword [rdx + r8*4]
add rdx, r9
cmp rdx, r10
jbe 0x1401196da
lea rcx, [rax + r10]
cmp rdx, rcx
jae 0x1401196da
mov esi, r15d
mov r13d, r15d
jmp 0x140119694
movsx eax, al
xor eax, esi
imul esi, eax, 0x1000193
inc rdx
mov al, byte [rdx]
cmp al, 0x2e
jne 0x140119686
jmp 0x1401196a9
movsx eax, al
xor eax, r13d
imul r13d, eax, 0x1000193
inc rdx
mov al, byte [rdx]
test al, al
jne 0x14011969c
mov rax, qword [rsp + 0x38]
mov r8, qword [rax]
mov r10d, 8
mov rax, qword [r8]
mov r8, rax
cmp rax, qword [rsp + 0x38]
je 0x1401196d8
cmp qword [rax + 0x30], 0
jne 0x1401195a4
xor edx, edx
mov qword [0x1402303d8], rdx
mov esi, dword [rsp + 0x30]
mov r14d, dword [rsp + 0x28]
mov r12d, 0x992b
mov ecx, r12d
call rdx
mov ecx, r12d
int 0x29
lea r9d, [r14 + rsi*8]
jmp 0x140119711
mov r13d, 0xcded1a85
mov dword [rsp + 0x20], r13d
mov r12d, 0x992b
lea ecx, [rsi + r14]
movsx eax, byte [reloc.WS2_32.dll_htons]
lea ecx, [rcx + rsi*8]
add eax, ecx
movsx ecx, byte [reloc.WS2_32.dll_htonl]
xor edx, edx
div ecx
movsx ecx, byte [reloc.WS2_32.dll_accept]
cmp eax, ecx
je 0x140119a3f
movsx eax, byte [reloc.WS2_32.dll_getsockopt]
movd xmm1, eax
cvtdq2pd xmm1, xmm1
movsx eax, byte [reloc.WS2_32.dll_closesocket]
movd xmm0, eax
cvtdq2pd xmm0, xmm0
addsd xmm0, xmm0
subsd xmm1, xmm0
mov rax, qword [rsp + 0x50]
and eax, 1
xorps xmm0, xmm0
cvtsi2sd xmm0, rax
mulsd xmm1, xmm0
movsd qword [rsp + 0x38], xmm1
movsx eax, byte [reloc.WS2_32.dll_htons]
add eax, r9d
movsx ecx, byte [reloc.WS2_32.dll_htonl]
xor edx, edx
div ecx
movsx ecx, byte [reloc.WS2_32.dll_accept]
cmp eax, ecx
je 0x1401197e3
call fcn.1401144f4
movsx edx, al
movsx eax, byte [0x140230389]
imul edx, eax
lea r8d, [rdx + rdx*2]
call fcn.140114500
movsx ecx, al
sub r8d, ecx
call fcn.1401144f8
movsx ecx, al
add r8d, ecx
movsx ecx, byte [reloc.WS2_32.dll_closesocket]
add ecx, r8d
je 0x1401197e3
mov r10d, 8
mov dword [rsp + 0x30], r10d
jmp 0x14011987a
call fcn.1401144f0
movsx edx, al
call fcn.1401144ec
movsx ecx, al
imul edx, ecx
lea edx, [rdx + rdx*4]
call fcn.1401144fc
movsx ecx, al
lea eax, [rcx + rdx*2]
movsx ecx, byte [reloc.WS2_32.dll_htons]
add eax, ecx
movsx ecx, byte [reloc.WS2_32.dll_htonl]
xor edx, edx
div ecx
movsx ecx, byte [reloc.WS2_32.dll_accept]
cmp eax, ecx
je 0x140119874
call fcn.1401144f0
movsx edx, al
call fcn.1401144ec
movsx ecx, al
imul edx, ecx
call fcn.1401144fc
movsx ecx, al
lea eax, [rcx + rdx*4]
movsx ecx, byte [reloc.WS2_32.dll_htons]
add eax, ecx
movsx ecx, byte [reloc.WS2_32.dll_htonl]
xor edx, edx
div ecx
movsx ecx, byte [reloc.WS2_32.dll_accept]
sub eax, ecx
xorps xmm0, xmm0
cvtsi2sd xmm0, rax
mulsd xmm0, qword [rsp + 0x38]
cvttsd2si eax, xmm0
mov dword [rsp + 0x30], eax
mov r10d, 8
call fcn.1401144f0
movsx edx, al
call fcn.1401144ec
movsx ecx, al
imul edx, ecx
lea edx, [rdx + rdx*4]
call fcn.1401144fc
movsx ecx, al
lea eax, [rcx + rdx*2]
movsx ecx, byte [reloc.WS2_32.dll_htons]
add eax, ecx
movsx ecx, byte [reloc.WS2_32.dll_htonl]
xor edx, edx
div ecx
movsx ecx, byte [reloc.WS2_32.dll_accept]
sub eax, ecx
imul eax, dword [rsp + 0x30]
test eax, eax
je 0x140119a3f
mov rdx, qword [0x1402303d8]
test rdx, rdx
jne 0x140119a35
xor r14d, r14d
mov rax, qword gs:[0x60]
mov rcx, qword [rax + 0x18]
mov rax, qword [rcx + 0x10]
mov r13, qword [rax]
mov r9, r13
movups xmm0, xmmword [r9 + 0x58]
movd eax, xmm0
sub ax, r10w
test r14d, r14d
je 0x140119937
psrldq xmm0, 8
movq rcx, xmm0
movzx eax, ax
shr rax, 1
lea r8, [rcx + rax*2]
mov edx, r15d
jmp 0x140119929
movsx eax, byte [rcx]
xor eax, edx
imul edx, eax, 0x1000193
add rcx, 2
cmp rcx, r8
jne 0x14011991a
cmp edx, r14d
jne 0x140119a16
mov r10, qword [r9 + 0x30]
movsxd rax, dword [r10 + 0x3c]
mov rax, qword [rax + r10 + 0x88]
mov r11d, eax
add r11, r10
shr rax, 0x20
cmp r11, r10
je 0x140119a10
mov esi, dword [r11 + 0x18]
test esi, esi
je 0x140119a10
mov edx, dword [r11 + 0x20]
dec esi
lea rdx, [rdx + rsi*4]
mov r8d, dword [rdx + r10]
add r8, r10
mov edx, r15d
jmp 0x140119987
movsx ecx, cl
xor ecx, edx
imul edx, ecx, 0x1000193
mov cl, byte [r8]
inc r8
test cl, cl
jne 0x14011997c
cmp edx, dword [rsp + 0x20]
je 0x1401199a1
test esi, esi
mov edx, dword [r11 + 0x20]
jne 0x14011996a
jmp 0x140119a10
mov edx, dword [r11 + 0x24]
add rdx, r10
movzx r9d, word [rdx + rsi*2]
mov edx, dword [r11 + 0x1c]
add rdx, r10
mov edx, dword [rdx + r9*4]
add rdx, r10
cmp rdx, r11
jbe 0x140119a2e
lea rcx, [rax + r11]
cmp rdx, rcx
jae 0x140119a2e
mov r14d, r15d
mov ecx, r15d
mov dword [rsp + 0x20], ecx
jmp 0x1401199e5
movsx eax, al
xor eax, r14d
imul r14d, eax, 0x1000193
inc rdx
mov al, byte [rdx]
cmp al, 0x2e
jne 0x1401199d5
inc rdx
mov al, byte [rdx]
test al, al
je 0x140119a0c
movsx eax, al
xor eax, ecx
imul ecx, eax, 0x1000193
inc rdx
mov al, byte [rdx]
test al, al
jne 0x1401199f4
mov dword [rsp + 0x20], ecx
mov r9, qword [r13]
mov r10d, 8
mov rax, qword [r9]
mov r9, rax
cmp rax, r13
je 0x140119a2c
cmp qword [rax + 0x30], 0
jne 0x1401198ef
xor edx, edx
mov qword [0x1402303d8], rdx
mov ecx, r12d
call rdx
mov rcx, r12
int 0x29
mov r9, qword [0x140230448]
test r9, r9
jne 0x140119ba4
xor r14d, r14d
mov r12d, 0x3a9acc72
mov rax, qword gs:[0x60]
mov rcx, qword [rax + 0x18]
mov rax, qword [rcx + 0x10]
mov r13, qword [rax]
mov r9, r13
movups xmm0, xmmword [r9 + 0x58]
movd eax, xmm0
sub ax, 8
test r14d, r14d
je 0x140119ab7
psrldq xmm0, 8
movq rcx, xmm0
movzx eax, ax
shr rax, 1
lea r8, [rcx + rax*2]
mov edx, r15d
jmp 0x140119aa9
movsx eax, byte [rcx]
xor eax, edx
imul edx, eax, 0x1000193
add rcx, 2
cmp rcx, r8
jne 0x140119a9a
cmp edx, r14d
jne 0x140119b84
mov r10, qword [r9 + 0x30]
movsxd rax, dword [r10 + 0x3c]
mov rax, qword [rax + r10 + 0x88]
mov r11d, eax
add r11, r10
shr rax, 0x20
cmp r11, r10
je 0x140119b84
mov esi, dword [r11 + 0x18]
test esi, esi
je 0x140119b84
mov edx, dword [r11 + 0x20]
dec esi
lea rdx, [rdx + rsi*4]
mov r8d, dword [rdx + r10]
add r8, r10
mov edx, r15d
jmp 0x140119b07
movsx ecx, cl
xor ecx, edx
imul edx, ecx, 0x1000193
mov cl, byte [r8]
inc r8
test cl, cl
jne 0x140119afc
cmp edx, r12d
je 0x140119b20
test esi, esi
mov edx, dword [r11 + 0x20]
jne 0x140119aea
jmp 0x140119b84
mov edx, dword [r11 + 0x24]
add rdx, r10
movzx r9d, word [rdx + rsi*2]
mov edx, dword [r11 + 0x1c]
add rdx, r10
mov r9d, dword [rdx + r9*4]
add r9, r10
cmp r9, r11
jbe 0x140119b9d
lea rcx, [rax + r11]
cmp r9, rcx
jae 0x140119b9d
mov r14d, r15d
mov r12d, r15d
jmp 0x140119b60
movsx eax, al
xor eax, r14d
imul r14d, eax, 0x1000193
inc r9
mov al, byte [r9]
cmp al, 0x2e
jne 0x140119b50
jmp 0x140119b76
movsx eax, al
xor eax, r12d
imul r12d, eax, 0x1000193
inc r9
mov al, byte [r9]
test al, al
jne 0x140119b69
mov r9, qword [r13]
mov rax, qword [r9]
mov r9, rax
cmp rax, r13
je 0x140119b9a
cmp qword [rax + 0x30], 0
jne 0x140119a6f
xor r9d, r9d
mov qword [0x140230448], r9
xor edx, edx
mov r8d, 0x8000
mov rcx, qword [rsp + 0x40]
call r9
mov rcx, qword [rsp + 0x58]
xor rcx, rsp
call fcn.1401a4e10
lea r11, [rsp + 0x60]
mov rsi, qword [r11 + 0x10]
mov r12, qword [r11 + 0x18]
mov r13, qword [r11 + 0x20]
mov r14, qword [r11 + 0x28]
mov rsp, r11
pop r15
ret