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

Disassembly:
push rbx
push rbp
push rsi
push rdi
push r12
push r14
push r15
sub rsp, 0x100
mov rax, qword [0x14013dec0]
xor rax, rsp
mov qword [rsp + 0xf0], rax
mov r15, r8
mov r14, rdx
mov rbp, rcx
mov qword [rsp + 0x50], rcx
mov qword [rsp + 0x58], rdx
mov qword [rsp + 0x60], r8
xor r12d, r12d
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__errno]
mov rdi, rax
mov rbx, r14
cmp qword [r14 + 0x18], 0x10
jb 0x14005e9d5
mov rbx, qword [r14]
mov dword [rax], r12d
mov r8d, 0xa
lea rdx, [rsp + 0x48]
mov rcx, rbx
call qword [sym.imp.api_ms_win_crt_convert_l1_1_0.dll_strtoll]
mov rsi, rax
cmp rbx, qword [rsp + 0x48]
je 0x14005f040
cmp dword [rdi], 0x22
je 0x14005f04d
call sub.MSVCP140.dll__Xtime_get_ticks
mov rcx, rax
movabs rax, 0xd6bf94d5e57a42bd
imul rcx
add rdx, rcx
sar rdx, 0x17
mov rax, rdx
shr rax, 0x3f
add rdx, rax
sub rdx, rsi
cmp rdx, 0x14
jle 0x14005eae9
mov rax, qword gs:[0x60]
mov rax, qword [rax + 0x18]
mov rax, qword [rax + 0x10]
nop word [rax + rax]
mov r10, qword [rax + 0x30]
movsxd rcx, dword [r10 + 0x3c]
mov ebx, dword [rcx + r10 + 0x88]
add rbx, r10
cmp rbx, r10
je 0x14005eac6
mov r9d, dword [rbx + 0x18]
test r9d, r9d
je 0x14005eac6
mov edi, dword [rbx + 0x20]
nop dword [rax]
nop dword [rax + rax]
dec r9d
lea rcx, [rdi + r9*4]
mov edx, dword [rcx + r10]
add rdx, r10
mov r8d, 0xb80dc9b5
movzx ecx, byte [rdx]
inc rdx
test cl, cl
je 0x14005eac1
nop
movsx ecx, cl
xor ecx, r8d
imul r8d, ecx, 0x1000193
movzx ecx, byte [rdx]
lea rdx, [rdx + 1]
test cl, cl
jne 0x14005eaa0
cmp r8d, 0xaa77d735
je 0x14005eacb
test r9d, r9d
jne 0x14005ea80
mov rax, qword [rax]
jmp 0x14005ea50
mov ecx, dword [rbx + 0x1c]
add rcx, r10
mov eax, dword [rbx + 0x24]
add rax, r10
movzx eax, word [rax + r9*2]
mov edx, dword [rcx + rax*4]
add rdx, r10
mov ecx, 3
call rdx
call fcn.140076960
test eax, eax
jns 0x14005eba9
mov rax, qword gs:[0x60]
mov rax, qword [rax + 0x18]
mov rax, qword [rax + 0x10]
nop word [rax + rax]
mov r10, qword [rax + 0x30]
movsxd rcx, dword [r10 + 0x3c]
mov ebx, dword [rcx + r10 + 0x88]
add rbx, r10
cmp rbx, r10
je 0x14005eb86
mov r9d, dword [rbx + 0x18]
test r9d, r9d
je 0x14005eb86
mov edi, dword [rbx + 0x20]
nop dword [rax]
nop dword [rax + rax]
dec r9d
lea rcx, [rdi + r9*4]
mov ecx, dword [rcx + r10]
add rcx, r10
mov r8d, 0xb514d87d
movzx edx, byte [rcx]
inc rcx
test dl, dl
je 0x14005eb81
nop
movsx edx, dl
xor edx, r8d
imul r8d, edx, 0x1000193
movzx edx, byte [rcx]
lea rcx, [rcx + 1]
test dl, dl
jne 0x14005eb60
cmp r8d, 0x1112fd9d
je 0x14005eb8b
test r9d, r9d
jne 0x14005eb40
mov rax, qword [rax]
jmp 0x14005eb10
mov ecx, dword [rbx + 0x1c]
add rcx, r10
mov eax, dword [rbx + 0x24]
add rax, r10
movzx eax, word [rax + r9*2]
mov edx, dword [rcx + rax*4]
add rdx, r10
mov ecx, 4
call rdx
mov rcx, qword [r14 + 0x10]
mov rdx, qword [r15 + 0x10]
movabs rax, 0x7fffffffffffffff
sub rax, rcx
cmp rax, rdx
jb 0x14005f03a
mov r9, r14
cmp qword [r14 + 0x18], 0x10
jb 0x14005ebd4
mov r9, qword [r14]
mov rax, r15
cmp qword [r15 + 0x18], 0x10
jb 0x14005ebe1
mov rax, qword [r15]
mov qword [rsp + 0x30], rdx
mov qword [rsp + 0x28], rax
mov qword [rsp + 0x20], rcx
mov r8, r14
movzx edx, byte [rsp + 0x40]
lea rcx, [rsp + 0x68]
call fcn.14004b4a0
nop
mov r8, rbp
cmp qword [rbp + 0x18], 0x10
jb 0x14005ec11
mov r8, qword [rbp]
mov qword [rsp + 0x30], r12
mov qword [rsp + 0x28], r12
mov qword [rsp + 0x20], r12
mov r9, qword [rbp + 0x10]
mov edx, 0x40
lea rcx, [rsp + 0xb0]
call fcn.140076bd0
test eax, eax
je 0x14005ece9
mov rax, qword gs:[0x60]
mov rax, qword [rax + 0x18]
mov rax, qword [rax + 0x10]
nop
mov r10, qword [rax + 0x30]
movsxd rcx, dword [r10 + 0x3c]
mov ebx, dword [rcx + r10 + 0x88]
add rbx, r10
cmp rbx, r10
je 0x14005ecc6
mov r9d, dword [rbx + 0x18]
test r9d, r9d
je 0x14005ecc6
mov edi, dword [rbx + 0x20]
nop dword [rax]
nop dword [rax + rax]
dec r9d
lea rcx, [rdi + r9*4]
mov edx, dword [rcx + r10]
add rdx, r10
mov r8d, 0x9dca82b7
movzx ecx, byte [rdx]
inc rdx
test cl, cl
je 0x14005ecc1
nop
movsx ecx, cl
xor ecx, r8d
imul r8d, ecx, 0x1000193
movzx ecx, byte [rdx]
lea rdx, [rdx + 1]
test cl, cl
jne 0x14005eca0
cmp r8d, 0x564749f7
je 0x14005eccb
test r9d, r9d
jne 0x14005ec80
mov rax, qword [rax]
jmp 0x14005ec50
mov ecx, dword [rbx + 0x1c]
add rcx, r10
mov eax, dword [rbx + 0x24]
add rax, r10
movzx eax, word [rax + r9*2]
mov edx, dword [rcx + rax*4]
add rdx, r10
mov ecx, 5
call rdx
lea r8, [0x14013eb90]
cmp qword [0x14013eba8], 0x10
cmovae r8, qword [0x14013eb90]
mov qword [rsp + 0x30], r12
mov qword [rsp + 0x28], r12
mov qword [rsp + 0x20], r12
mov r9, qword [0x14013eba0]
mov edx, 0x20
lea rcx, [rsp + 0x88]
call fcn.140076bd0
test eax, eax
je 0x14005ede9
mov rax, qword gs:[0x60]
mov rax, qword [rax + 0x18]
mov rax, qword [rax + 0x10]
nop dword [rax]
nop word [rax + rax]
mov r10, qword [rax + 0x30]
movsxd rcx, dword [r10 + 0x3c]
mov ebx, dword [rcx + r10 + 0x88]
add rbx, r10
cmp rbx, r10
je 0x14005edc6
mov r9d, dword [rbx + 0x18]
test r9d, r9d
je 0x14005edc6
mov edi, dword [rbx + 0x20]
nop dword [rax]
nop dword [rax + rax]
dec r9d
lea rcx, [rdi + r9*4]
mov edx, dword [rcx + r10]
add rdx, r10
mov r8d, 0x57cdf044
movzx ecx, byte [rdx]
inc rdx
test cl, cl
je 0x14005edc1
nop
movsx ecx, cl
xor ecx, r8d
imul r8d, ecx, 0x1000193
movzx ecx, byte [rdx]
lea rdx, [rdx + 1]
test cl, cl
jne 0x14005eda0
cmp r8d, 0x87a9854
je 0x14005edcb
test r9d, r9d
jne 0x14005ed80
mov rax, qword [rax]
jmp 0x14005ed50
mov ecx, dword [rbx + 0x1c]
add rcx, r10
mov eax, dword [rbx + 0x24]
add rax, r10
movzx eax, word [rax + r9*2]
mov edx, dword [rcx + rax*4]
add rdx, r10
mov ecx, 6
call rdx
lea rdx, [rsp + 0x68]
cmp qword [rsp + 0x80], 0x10
cmovae rdx, qword [rsp + 0x68]
lea r9, [rsp + 0x88]
mov r8, qword [rsp + 0x78]
lea rcx, [rsp + 0xb0]
call fcn.140076bb0
test eax, eax
je 0x14005eeca
mov rax, qword gs:[0x60]
mov rax, qword [rax + 0x18]
mov rax, qword [rax + 0x10]
mov r10, qword [rax + 0x30]
movsxd rcx, dword [r10 + 0x3c]
mov ebx, dword [rcx + r10 + 0x88]
add rbx, r10
cmp rbx, r10
je 0x14005eea6
mov r9d, dword [rbx + 0x18]
test r9d, r9d
je 0x14005eea6
mov edi, dword [rbx + 0x20]
nop dword [rax]
nop dword [rax + rax]
dec r9d
lea rcx, [rdi + r9*4]
mov edx, dword [rcx + r10]
add rdx, r10
mov r8d, 0x5bf67a98
movzx ecx, byte [rdx]
inc rdx
test cl, cl
je 0x14005eea1
nop
movsx ecx, cl
xor ecx, r8d
imul r8d, ecx, 0x1000193
movzx ecx, byte [rdx]
lea rdx, [rdx + 1]
test cl, cl
jne 0x14005ee80
cmp r8d, 0xd6227ce8
je 0x14005eeab
test r9d, r9d
jne 0x14005ee60
mov rax, qword [rax]
jmp 0x14005ee30
mov ecx, dword [rbx + 0x1c]
add rcx, r10
mov eax, dword [rbx + 0x24]
add rax, r10
movzx eax, word [rax + r9*2]
mov edx, dword [rcx + rax*4]
add rdx, r10
mov ecx, 7
call rdx
nop
mov rdx, qword [rsp + 0x80]
cmp rdx, 0x10
jb 0x14005ef0d
inc rdx
mov rcx, qword [rsp + 0x68]
mov rax, rcx
cmp rdx, 0x1000
jb 0x14005ef08
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
jbe 0x14005ef08
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
int3
call fcn.1400f9d50
mov qword [rsp + 0x78], r12
mov qword [rsp + 0x80], reloc.WS2_32.dll_ntohs
mov byte [rsp + 0x68], 0
mov rdx, qword [rbp + 0x18]
cmp rdx, 0x10
jb 0x14005ef5e
mov rcx, qword [rbp]
inc rdx
cmp rdx, 0x1000
jb 0x14005ef59
add rdx, 0x27
mov r8, qword [rcx - 8]
sub rcx, r8
lea rax, [rcx - 8]
cmp rax, 0x1f
ja 0x14005f025
mov rcx, r8
call fcn.1400f9d50
mov qword [rbp + 0x10], r12
mov qword [rbp + 0x18], reloc.WS2_32.dll_ntohs
mov byte [rbp], 0
mov rdx, qword [r14 + 0x18]
cmp rdx, 0x10
jb 0x14005efa8
mov rcx, qword [r14]
inc rdx
cmp rdx, 0x1000
jb 0x14005efa3
add rdx, 0x27
mov r8, qword [rcx - 8]
sub rcx, r8
lea rax, [rcx - 8]
cmp rax, 0x1f
ja 0x14005f02c
mov rcx, r8
call fcn.1400f9d50
mov qword [r14 + 0x10], r12
mov qword [r14 + 0x18], reloc.WS2_32.dll_ntohs
mov byte [r14], 0
mov rdx, qword [r15 + 0x18]
cmp rdx, 0x10
jb 0x14005efee
inc rdx
mov rcx, qword [r15]
cmp rdx, 0x1000
jb 0x14005efe9
add rdx, 0x27
mov r8, qword [rcx - 8]
sub rcx, r8
lea rax, [rcx - 8]
cmp rax, 0x1f
ja 0x14005f033
mov rcx, r8
call fcn.1400f9d50
mov qword [r15 + 0x10], r12
mov qword [r15 + 0x18], reloc.WS2_32.dll_ntohs
mov byte [r15], 0
mov eax, 0xa58f
mov rcx, qword [rsp + 0xf0]
xor rcx, rsp
call fcn.1400f99c0
add rsp, 0x100
pop r15
pop r14
pop r12
pop rdi
pop rsi
pop rbp
pop rbx
ret
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
nop
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
nop
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
nop
call fcn.140039100
int3
lea rcx, str.invalid_stoll_argument
call sub.MSVCP140.dll_void___cdecl_std::_Xinvalid_argument_char_const____ptr64_
int3
lea rcx, str.stoll_argument_out_of_range
call sub.MSVCP140.dll_void___cdecl_std::_Xout_of_range_char_const____ptr64_
int3