Function at 0x140089860
Capabilities:
Hash data using fnv
Resolve function by fnv-1a hash
Resolve function by parsing pe exports

Disassembly:
push r15
push r14
push r13
push r12
push rsi
push rdi
push rbp
push rbx
sub rsp, 0xc8
movdqa xmmword [rsp + 0xb0], xmm9
movdqa xmmword [rsp + 0xa0], xmm8
movdqa xmmword [rsp + 0x90], xmm7
movdqa xmmword [rsp + 0x80], xmm6
mov eax, dword [0x1406e8328]
lea ecx, [rax - 1]
imul ecx, eax
test cl, 1
sete al
cmp dword [0x1406e832c], 0xa
setl cl
or cl, al
mov byte [rsp + 0x2f], cl
mov eax, dword [0x1406ea008]
mov qword [rsp + 0x68], rax
mov eax, dword [0x1406ea00c]
mov dword [rsp + 0x54], eax
mov r13d, dword [0x1406e7fb4]
mov eax, dword [0x1406e7fb0]
mov dword [rsp + 0x50], eax
mov r10d, dword [0x1406e7fbc]
mov r14d, dword [0x1406e7fb8]
je 0x14008994f
mov rax, qword [rsp + 0x68]
lea ecx, [rax - 1]
imul ecx, eax
and ecx, 1
mov dword [rsp + 0x64], ecx
sete al
cmp dword [rsp + 0x54], 0xa
setl r8b
or r8b, al
mov edi, dword [rsp + 0x50]
mov qword [rsp + 0x58], r13
jne 0x140089a82
lea edx, [r13 - 1]
imul edx, r13d
and edx, 1
test edx, edx
sete cl
cmp edi, 0xa
setl al
or al, cl
jne 0x14008a002
lea edx, [r10 - 1]
imul edx, r10d
and edx, 1
jmp 0x14008a028
mov rax, qword [rsp + 0x68]
lea ecx, [rax - 1]
imul ecx, eax
and ecx, 1
test ecx, ecx
sete al
cmp dword [rsp + 0x54], 0xa
setl r8b
or r8b, al
mov edi, dword [rsp + 0x50]
jne 0x14008a084
lea edx, [r13 - 1]
imul edx, r13d
and edx, 1
test edx, edx
sete cl
cmp edi, 0xa
setl al
or al, cl
jne 0x14008a1b4
lea edx, [r10 - 1]
imul edx, r10d
and edx, 1
jmp 0x14008a1da
movsxd rax, dword [rdi + 0x3c]
mov esi, dword [rax + rdi + 0x88]
test rsi, rsi
je 0x140089a30
mov eax, dword [rdi + rsi + 0x18]
mov rcx, rax
jmp 0x1400899df
mov rax, rcx
cmp ebx, 0x53b2070f
je 0x1400898f1
sub rcx, 1
jb 0x140089a30
test r12b, r12b
je 0x140089a80
add rax, r8
mov ebx, dword [rdi + rsi + 0x20]
add rbx, rdi
mov eax, eax
mov ebp, dword [rbx + rax*4]
add rbp, rdi
mov ebx, 0x811c9dc5
nop word cs:[rax + rax]
nop
test dl, dl
je 0x140089a10
movsx eax, byte [rbp]
test eax, eax
je 0x1400899d0
add rbp, 1
xor ebx, eax
imul ebx, ebx, 0x1000193
jmp 0x140089a10
test r11b, r11b
je 0x140089a70
nop word cs:[rax + rax]
nop
mov r15, qword [r15]
test r11b, r11b
je 0x140089a70
cmp r15, r9
je 0x1400898f1
mov rdi, qword [r15 + 0x30]
test rdi, rdi
jne 0x1400899b0
jmp 0x1400898f1
mov r15, qword [r15]
jmp 0x140089a40
jmp 0x140089a80
lea edx, [r13 - 1]
imul edx, r13d
and edx, 1
sete cl
cmp edi, 0xa
setl al
or al, cl
jne 0x140089aaa
lea ebp, [r10 - 1]
imul ebp, r10d
and ebp, 1
jmp 0x140089c40
lea ebp, [r10 - 1]
imul ebp, r10d
and ebp, 1
sete cl
cmp r14d, 0xa
setl bl
or bl, cl
cmp bl, 1
jne 0x140089c32
mov rcx, qword gs:[0x60]
test bl, bl
je 0x140089c32
test al, al
je 0x140089c40
test r8b, r8b
je 0x14008992c
mov rax, qword [rcx + 0x18]
mov rax, qword [rax + 0x10]
mov ecx, dword [0x1406e84a0]
lea edx, [rcx - 1]
imul edx, ecx
test dl, 1
sete cl
cmp dword [0x1406e84a4], 0xa
mov rbp, qword [rax]
setl bl
or bl, cl
mov eax, dword [0x1406e7f9c]
lea ecx, [rax - 1]
imul ecx, eax
test cl, 1
sete al
cmp dword [0x1406e7f98], 0xa
setl dl
or dl, al
mov eax, dword [0x1406e84f8]
lea ecx, [rax - 1]
imul ecx, eax
test cl, 1
sete al
cmp dword [0x1406e84fc], 0xa
setl r15b
or r15b, al
mov r8, qword [rbp + 0x30]
mov edi, 0xffffffff
mov qword [rsp + 0x70], rbp
movsxd rax, dword [r8 + 0x3c]
mov r9d, dword [rax + r8 + 0x88]
test r9, r9
je 0x140089be0
mov esi, dword [r8 + r9 + 0x18]
mov r13, rsi
jmp 0x140089b90
mov rsi, r13
cmp r12d, 0x53b2070f
je 0x140089c84
sub r13, 1
jb 0x140089be0
test bl, bl
je 0x140089c30
add rsi, rdi
mov ecx, dword [r8 + r9 + 0x20]
add rcx, r8
mov eax, esi
mov r11d, dword [rcx + rax*4]
add r11, r8
mov r12d, 0x811c9dc5
nop dword [rax + rax]
test dl, dl
je 0x140089bc0
movsx ecx, byte [r11]
test ecx, ecx
je 0x140089b80
add r11, 1
xor r12d, ecx
imul r12d, r12d, 0x1000193
jmp 0x140089bc0
test r15b, r15b
je 0x140089c20
nop word cs:[rax + rax]
nop
mov rbp, qword [rbp]
test r15b, r15b
je 0x140089c20
cmp rbp, qword [rsp + 0x70]
je 0x140089cd8
mov r8, qword [rbp + 0x30]
test r8, r8
jne 0x140089b61
jmp 0x140089cd8
mov rbp, qword [rbp]
jmp 0x140089bf0
jmp 0x140089c30
mov rcx, qword gs:[0x60]
jmp 0x140089aca
mov rcx, qword gs:[0x60]
cmp r14d, 0xa
jl 0x140089aaa
test ebp, ebp
je 0x140089aaa
mov rax, qword gs:[0x60]
nop word cs:[rax + rax]
nop
mov rax, qword gs:[0x60]
mov rax, qword gs:[0x60]
jmp 0x140089c70
mov ecx, dword [r8 + r9 + 0x1c]
mov edx, dword [r8 + r9 + 0x24]
add rdx, r8
movzx eax, word [rdx + rax*2]
add rcx, r8
mov edi, dword [rcx + rax*4]
add rdi, r8
mov r13, qword [rsp + 0x58]
cmp byte [rsp + 0x2f], 0
mov ecx, dword [rsp + 0x64]
je 0x14008995d
cmp dword [0x1406e7d3c], 0xa
movabs rsi, 0x6c642e6c6c64746e
jl 0x140089ce1
mov eax, dword [0x1406e7d38]
lea ecx, [rax - 1]
imul ecx, eax
and ecx, 1
jne 0x140089d30
jmp 0x140089ce1
mov r13, qword [rsp + 0x58]
xor edi, edi
jmp 0x140089ca3
cmp dword [0x1406e8334], 0xa
jl 0x140089cff
mov eax, dword [0x1406e8330]
lea ecx, [rax - 1]
imul ecx, eax
and ecx, 1
jne 0x140089d7c
mov qword [rsp + 0x30], rsi
mov word [rsp + 0x38], WSASetLastError
lea rcx, [rsp + 0x30]
call rdi
mov ebp, dword [0x1406e7d38]
mov ecx, dword [0x1406e7d3c]
lea edx, [rbp - 1]
imul edx, ebp
and edx, 1
cmp ecx, 0xa
jl 0x140089d9c
test edx, edx
je 0x140089d9c
cmp dword [0x1406e8334], 0xa
jl 0x140089d4a
mov eax, dword [0x1406e8330]
lea ecx, [rax - 1]
imul ecx, eax
and ecx, 1
jne 0x140089d5f
mov qword [rsp + 0x30], rsi
mov word [rsp + 0x38], WSASetLastError
lea rcx, [rsp + 0x30]
call rdi
jmp 0x140089ce1
movzx eax, word [0x140259337]
mov rcx, qword [0x14025932f]
nop dword [rax]
mov word [rsp + 0x38], ax
mov qword [rsp + 0x30], rcx
jmp 0x140089d70
movzx eax, word [0x140259337]
mov rcx, qword [0x14025932f]
nop word [rax + rax]
mov word [rsp + 0x38], ax
mov qword [rsp + 0x30], rcx
jmp 0x140089d90
test rax, rax
je 0x140089f57
movups xmm0, xmmword [0x14025971a]
movups xmmword [rsp + 0x3a], xmm0
movdqu xmm0, xmmword [str.EcFQGOV_UIQJV__]
movdqa xmmword [rsp + 0x30], xmm0
mov ecx, dword [0x1406e7ce4]
lea edx, [rcx - 1]
imul edx, ecx
test dl, 1
sete dl
cmp dword [0x1406e7ce0], 0xa
setl cl
or cl, dl
movdqa xmm8, xmmword [0x140258800]
xor edx, edx
movdqa xmm1, xmmword [str.0000000000000000]
movdqa xmm4, xmmword [0x140258810]
movdqa xmm3, xmmword [0x140258820]
movdqa xmm9, xmmword [str.0123456789:____]
movdqa xmm5, xmmword [0x140259760]
movdqa xmm0, xmm8
movdqu xmm7, xmmword [rsp + rdx + 0x30]
movdqa xmm6, xmm0
paddb xmm6, xmm1
movdqa xmm2, xmm4
psubb xmm2, xmm0
pand xmm2, xmm7
pandn xmm7, xmm6
por xmm7, xmm2
movdqu xmmword [rsp + rdx + 0x30], xmm7
lea rbp, [rdx + 0x10]
paddb xmm0, xmm3
test rdx, rdx
mov rdx, rbp
jne 0x140089e16
xor byte [rsp + 0x40], 0x40
xor byte [rsp + 0x41], 0x41
xor byte [rsp + 0x42], 0x42
xor byte [rsp + 0x43], 0x43
xor byte [rsp + 0x44], 0x44
xor byte [rsp + 0x45], 0x45
xor byte [rsp + 0x46], 0x46
xor byte [rsp + 0x47], 0x47
xor byte [rsp + 0x48], 0x48
xor byte [rsp + 0x49], 0x49
test cl, cl
jne 0x140089eda
movdqa xmm0, xmmword [rsp + 0x30]
movdqa xmm2, xmm0
pandn xmm2, xmm9
pand xmm0, xmm5
por xmm0, xmm2
movdqa xmmword [rsp + 0x30], xmm0
xor byte [rsp + 0x40], 0x40
xor byte [rsp + 0x41], 0x41
xor byte [rsp + 0x42], 0x42
xor byte [rsp + 0x43], 0x43
xor byte [rsp + 0x44], 0x44
xor byte [rsp + 0x45], 0x45
xor byte [rsp + 0x46], 0x46
xor byte [rsp + 0x47], 0x47
xor byte [rsp + 0x48], 0x48
xor byte [rsp + 0x49], 0x49
xor edx, edx
jmp 0x140089e11
lea rdx, [rsp + 0x30]
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
test rax, rax
je 0x140089f42
mov rsi, rax
call qword [sym.imp.KERNEL32.dll_GetCurrentProcess]
lea rcx, [rsp + 0x7c]
mov qword [rsp + 0x20], rcx
lea r8, [rsp + 0x30]
mov rcx, rax
mov edx, 7
mov r9d, 4
call rsi
mov ebp, dword [0x1406e7d38]
mov ecx, dword [0x1406e7d3c]
lea edx, [rbp - 1]
imul edx, ebp
and edx, 1
cmp ecx, 0xa
jl 0x140089f98
test edx, edx
je 0x140089f98
nop word cs:[rax + rax]
nop dword [rax]
jmp 0x140089f40
mov eax, dword [0x1406e7d38]
mov ecx, dword [0x1406e7d3c]
lea edx, [rax - 1]
imul edx, eax
and edx, 1
cmp ecx, 0xa
jl 0x140089f62
test edx, edx
je 0x140089f62
jmp 0x140089f60
movaps xmm6, xmmword [rsp + 0x80]
movaps xmm7, xmmword [rsp + 0x90]
movaps xmm8, xmmword [rsp + 0xa0]
movaps xmm9, xmmword [rsp + 0xb0]
add rsp, 0xc8
pop rbx
pop rbp
pop rdi
pop rsi
pop r12
pop r13
pop r14
pop r15
ret
test eax, eax
js 0x140089f57
cmp dword [rsp + 0x30], 0xffffffff
jne 0x140089f57
cmp dword [0x1406e8494], 0xa
jl 0x140089fc2
mov eax, dword [0x1406e8490]
lea ecx, [rax - 1]
imul ecx, eax
and ecx, 1
je 0x140089fc2
nop dword [rax]
jmp 0x140089fc0
mov eax, dword [0x1406e7fb4]
lea ecx, [rax - 1]
imul ecx, eax
test cl, 1
sete cl
cmp dword [0x1406e7fb0], 0xa
setl r8b
or r8b, cl
mov ecx, dword [0x1406e7fbc]
mov edx, dword [0x1406e7fb8]
jne 0x14008a234
lea ebp, [rcx - 1]
imul ebp, ecx
and ebp, 1
jmp 0x14008a25f
lea edx, [r10 - 1]
imul edx, r10d
and edx, 1
mov rcx, qword gs:[0x60]
cmp r14d, 0xa
jl 0x14008a020
test edx, edx
jne 0x14008a064
test al, al
jne 0x140089a82
mov rcx, qword gs:[0x60]
cmp r14d, 0xa
jl 0x14008a002
test edx, edx
je 0x14008a002
mov rax, qword gs:[0x60]
nop word cs:[rax + rax]
nop
mov rax, qword gs:[0x60]
mov rax, qword gs:[0x60]
jmp 0x14008a050
mov rax, qword gs:[0x60]
nop dword [rax]
mov rax, qword gs:[0x60]
mov rax, qword gs:[0x60]
jmp 0x14008a070
lea edx, [r13 - 1]
imul edx, r13d
and edx, 1
sete cl
cmp edi, 0xa
setl al
or al, cl
jne 0x14008a0ac
lea ebp, [r10 - 1]
imul ebp, r10d
and ebp, 1
jmp 0x14008a177
lea ebp, [r10 - 1]
imul ebp, r10d
and ebp, 1
sete cl
cmp r14d, 0xa
setl bl
or bl, cl
cmp bl, 1
jne 0x14008a169
mov rcx, qword gs:[0x60]
test bl, bl
je 0x14008a169
test al, al
je 0x14008a177
test r8b, r8b
je 0x140089983
mov rax, qword [rcx + 0x18]
mov rax, qword [rax + 0x10]
mov r9, qword [rax]
mov eax, dword [0x1406e84a0]
lea ecx, [rax - 1]
imul ecx, eax
test cl, 1
sete al
cmp dword [0x1406e84a4], 0xa
setl r12b
or r12b, al
mov eax, dword [0x1406e7f9c]
lea ecx, [rax - 1]
imul ecx, eax
test cl, 1
sete al
cmp dword [0x1406e7f98], 0xa
setl dl
or dl, al
mov eax, dword [0x1406e84f8]
lea ecx, [rax - 1]
imul ecx, eax
test cl, 1
sete al
cmp dword [0x1406e84fc], 0xa
setl r11b
or r11b, al
mov rdi, qword [r9 + 0x30]
mov r8d, 0xffffffff
mov r15, r9
jmp 0x1400899b0
mov rcx, qword gs:[0x60]
jmp 0x14008a0cc
mov rcx, qword gs:[0x60]
cmp r14d, 0xa
jl 0x14008a0ac
test ebp, ebp
je 0x14008a0ac
mov rax, qword gs:[0x60]
nop dword [rax + rax]
mov rax, qword gs:[0x60]
mov rax, qword gs:[0x60]
jmp 0x14008a1a0
lea edx, [r10 - 1]
imul edx, r10d
and edx, 1
mov rcx, qword gs:[0x60]
cmp r14d, 0xa
jl 0x14008a1d2
test edx, edx
jne 0x14008a214
test al, al
jne 0x14008a084
mov rcx, qword gs:[0x60]
cmp r14d, 0xa
jl 0x14008a1b4
test edx, edx
je 0x14008a1b4
mov rax, qword gs:[0x60]
nop word cs:[rax + rax]
mov rax, qword gs:[0x60]
mov rax, qword gs:[0x60]
jmp 0x14008a200
mov rax, qword gs:[0x60]
nop dword [rax]
mov rax, qword gs:[0x60]
mov rax, qword gs:[0x60]
jmp 0x14008a220
lea ebp, [rcx - 1]
imul ebp, ecx
and ebp, 1
sete al
cmp edx, 0xa
setl bl
or bl, al
cmp bl, 1
jne 0x14008a294
mov rdi, qword gs:[0x60]
test bl, bl
je 0x14008a294
test r8b, r8b
jne 0x14008a29f
mov rax, qword gs:[0x60]
cmp edx, 0xa
jl 0x14008a234
test ebp, ebp
je 0x14008a234
mov rax, qword gs:[0x60]
nop word [rax + rax]
mov rax, qword gs:[0x60]
mov rax, qword gs:[0x60]
jmp 0x14008a280
mov rax, qword gs:[0x60]
jmp 0x14008a24d
mov r9, qword [rdi + 0x18]
add r9, 0x10
mov eax, dword [0x1406e84a0]
lea ecx, [rax - 1]
imul ecx, eax
test cl, 1
sete al
cmp dword [0x1406e84a4], 0xa
setl r11b
or r11b, al
mov eax, dword [0x1406e8488]
lea ecx, [rax - 1]
imul ecx, eax
test cl, 1
sete al
cmp dword [0x1406e848c], 0xa
setl r15b
or r15b, al
mov eax, dword [0x1406e7f9c]
lea ecx, [rax - 1]
imul ecx, eax
test cl, 1
sete al
cmp dword [0x1406e7f98], 0xa
setl bl
or bl, al
mov eax, dword [0x1406e7fa8]
lea ecx, [rax - 1]
imul ecx, eax
test cl, 1
sete al
cmp dword [0x1406e7fac], 0xa
setl r8b
or r8b, al
mov r10d, 0xffffffff
mov r9, qword [r9]
mov rdi, qword [r9 + 0x30]
movsxd rax, dword [rdi + 0x3c]
mov r14d, dword [rax + rdi + 0x88]
test r14, r14
je 0x14008a3bc
mov ecx, dword [rdi + r14 + 0x18]
mov rax, rcx
jmp 0x14008a35c
mov rcx, rax
cmp esi, 0xcded1a85
je 0x14008a3db
sub rax, 1
jb 0x14008a3c3
test r11b, r11b
je 0x14008a3d3
add rcx, r10
mov edx, dword [rdi + r14 + 0x20]
add rdx, rdi
mov r12d, ecx
mov edx, dword [rdx + r12*4]
add rdx, rdi
test r15b, r15b
jne 0x14008a387
test bl, bl
jne 0x14008a3ae
jmp 0x14008a3d5
mov esi, 0x811c9dc5
mov rcx, rdx
nop
test bl, bl
je 0x14008a390
movsx ebp, byte [rcx]
test ebp, ebp
je 0x14008a3a9
add rcx, 1
xor esi, ebp
imul esi, esi, 0x1000193
jmp 0x14008a390
test r15b, r15b
jne 0x14008a34d
mov rcx, rdx
cmp byte [rcx], 0
lea rcx, [rcx + 1]
jne 0x14008a3b1
jmp 0x14008a387
test r15b, r15b
jne 0x14008a3c8
jmp 0x14008a3d7
test r15b, r15b
je 0x14008a3d9
test r8b, r8b
jne 0x14008a32b
jmp 0x14008a3d1
jmp 0x14008a3d3
jmp 0x14008a3d5
jmp 0x14008a3d7
jmp 0x14008a3d9
mov eax, dword [rdi + r14 + 0x1c]
mov ecx, dword [rdi + r14 + 0x24]
add rcx, rdi
movzx ecx, word [rcx + r12*2]
add rax, rdi
mov eax, dword [rax + rcx*4]
add rax, rdi
xor ecx, ecx
call rax
int3