Function at 0x1400e4780
Capabilities:
Encode data using xor
Hash data using murmur3

Disassembly:
mov qword [rsp + 8], rcx
push rbp
push rbx
push rsi
push rdi
push r12
push r13
push r14
push r15
lea rbp, [rsp - 0x118]
sub rsp, 0x218
mov qword [rbp + 0x78], 0xfffffffffffffffe
lea rax, [rcx + 0x10]
mov qword [rbp + 0x70], rax
add rax, 8
mov qword [rbp + 0x10], rax
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_EnterCriticalSection]
nop
xorps xmm0, xmm0
movdqu xmmword [rsp + 0x40], xmm0
xor esi, esi
mov qword [rsp + 0x50], rsi
xor r13d, r13d
xor r14d, r14d
mov r8, qword [rbp + 0x160]
mov rax, qword [r8 + 0x80]
mov rbx, qword [rax]
movabs rdx, 0xd6bf94d5e57a42bd
cmp rbx, rax
je 0x1400e4ce7
mov rax, qword [rsp + 0x48]
mov qword [rbp + 0x168], rax
test r14, r14
je 0x1400e4839
mov rcx, qword [rbx + 0x20]
sub rcx, qword [r14 + 0x10]
mov rax, rdx
imul rcx
add rdx, rcx
sar rdx, 0x17
mov rax, rdx
shr rax, 0x3f
add rdx, rax
movsxd rax, dword [r8 + 0x58]
cmp rdx, rax
setg r12b
jmp 0x1400e483c
mov r12b, 1
or r15d, 0xffffffff
mov rcx, qword [rbx + 0x28]
call fcn.1402b9ff0
mov rcx, rax
call fcn.1402ba268
mov rdi, rax
mov edx, 0x5c
mov rcx, rax
call fcn.1402ba31c
mov r11, rax
test rax, rax
je 0x1400e492f
sub r11, rdi
sar r11, 1
mov eax, r11d
cdq
and edx, 3
add eax, edx
sar eax, 2
mov edx, eax
mov r9d, 0xee55aaee
lea eax, [rax*4]
movsxd r10, eax
add r10, rdi
neg edx
movsxd r8, edx
je 0x1400e48c8
nop dword [rax + rax]
imul eax, dword [r10 + r8*4], 0xcc9e2d51
rol eax, 0xf
imul ecx, eax, 0x1b873593
xor r9d, ecx
rol r9d, 0xd
add r9d, 0xfaddaf14
lea r9d, [r9 + r9*4]
inc r8
jne 0x1400e48a0
xor edx, edx
mov ecx, r11d
and ecx, 3
dec ecx
je 0x1400e48ee
dec ecx
je 0x1400e48e4
dec ecx
jne 0x1400e4906
movzx edx, byte [r10 + 2]
shl edx, 0x10
movzx eax, byte [r10 + 1]
shl eax, 8
xor edx, eax
movzx eax, byte [r10]
xor eax, edx
imul ecx, eax, 0xcc9e2d51
rol ecx, 0x10
imul eax, ecx, 0x1b873593
xor r9d, eax
xor r9d, r11d
mov eax, r9d
shr eax, 0x10
xor eax, r9d
imul ecx, eax, 0x85ebca6b
mov eax, ecx
shr eax, 0xd
xor eax, ecx
imul ecx, eax, 0xc2b2ae35
mov r15d, ecx
shr r15d, 0x10
xor r15d, ecx
mov rcx, rdi
call fcn.1402b7350
mov dword [rbp + 0x170], r15d
test r12b, r12b
je 0x1400e4be1
mov ecx, 0x38
call fcn.1402b6dbc
mov r14, rax
mov qword [rbp + 0x178], rax
test rax, rax
je 0x1400e497b
mov qword [rax + 0x20], 0
mov qword [rax + 0x28], 0
call fcn.1400e2980
mov qword [r14 + 0x20], rax
jmp 0x1400e497e
xor r14d, r14d
mov qword [rbp - 0x20], r14
inc r13d
mov dword [r14], r13d
mov byte [r14 + 0x30], 0
mov rax, qword [rbx + 0x20]
mov qword [r14 + 8], rax
mov rax, qword [rbx + 0x20]
mov qword [r14 + 0x10], rax
mov ecx, 0x10
call fcn.1402b6dbc
mov rdi, rax
mov qword [rbp + 0x178], rax
test rax, rax
je 0x1400e49cf
mov qword [rax], 0
mov qword [rax + 8], 0
call fcn.14000a380
mov qword [rdi], rax
jmp 0x1400e49d1
xor edi, edi
mov qword [r14 + 0x18], rdi
mov rdx, qword [rbx + 0x28]
mov rax, qword [rbx + 0x20]
mov qword [rsp + 0x78], rax
mov qword [rbp - 0x80], rdx
mov dword [rbp + 0x90], r15d
movups xmm0, xmmword [rsp + 0x78]
movups xmmword [rbp + 0x98], xmm0
lea rdx, [rbp + 0x90]
mov rcx, rdi
call fcn.1400e8aa0
lea r9, [rax + 0x20]
mov qword [rsp + 0x20], rax
xor r8d, r8d
lea rdx, [rbp + 0xd8]
mov rcx, rdi
call fcn.1400e8ae0
lea rcx, [r14 + 0x20]
movzx eax, byte [0x14042918a]
mov byte [rsp + 0x20], al
lea r9, [rbp + 0x170]
lea rdx, [rbp + 0xb8]
call fcn.1400e82b0
mov eax, dword [r14]
mov dword [rbp + 0x38], eax
mov qword [rbp + 0x40], r14
mov rdi, qword [rbp + 0x160]
lea rdx, [rbp + 0x38]
lea rcx, [rdi + 0x90]
call fcn.14000cf50
lea r9, [rax + 0x20]
mov qword [rsp + 0x20], rax
lea rdx, [rbp + 0xa8]
lea rcx, [rdi + 0x90]
call fcn.14000cf80
lea rax, [rbp - 0x20]
mov rcx, qword [rbp + 0x168]
mov r8, qword [rsp + 0x40]
cmp rax, rcx
jae 0x1400e4b50
lea rax, [rbp - 0x20]
cmp r8, rax
ja 0x1400e4b50
lea rdi, [rbp - 0x20]
sub rdi, r8
sar rdi, 3
cmp rcx, rsi
jne 0x1400e4b2f
mov rax, rsi
sub rax, rcx
sar rax, 3
cmp rax, 1
jae 0x1400e4b2f
sub rcx, r8
sar rcx, 3
movabs r9, 0x1fffffffffffffff
mov rax, r9
sub rax, rcx
cmp rax, 1
jb 0x1400e4ccd
lea rdx, [rcx + 1]
sub rsi, r8
sar rsi, 3
mov rcx, rsi
shr rcx, 1
mov rax, r9
sub rax, rcx
cmp rax, rsi
jae 0x1400e4b09
xor esi, esi
jmp 0x1400e4b0c
add rsi, rcx
cmp rsi, rdx
cmovb rsi, rdx
mov rdx, rsi
lea rcx, [rsp + 0x40]
call fcn.140009d30
mov rsi, qword [rsp + 0x50]
mov rcx, qword [rsp + 0x48]
mov r8, qword [rsp + 0x40]
test rcx, rcx
je 0x1400e4b3b
mov rax, qword [r8 + rdi*8]
mov qword [rcx], rax
add rcx, 8
mov qword [rbp + 0x168], rcx
mov qword [rsp + 0x48], rcx
jmp 0x1400e4c59
cmp rcx, rsi
jne 0x1400e4bc7
mov rax, rsi
sub rax, rcx
sar rax, 3
cmp rax, 1
jae 0x1400e4bc7
sub rcx, r8
sar rcx, 3
movabs r9, 0x1fffffffffffffff
mov rax, r9
sub rax, rcx
cmp rax, 1
jb 0x1400e4cda
lea rdx, [rcx + 1]
sub rsi, r8
sar rsi, 3
mov rcx, rsi
shr rcx, 1
mov rax, r9
sub rax, rcx
cmp rax, rsi
jae 0x1400e4ba6
xor esi, esi
jmp 0x1400e4ba9
add rsi, rcx
cmp rsi, rdx
cmovb rsi, rdx
mov rdx, rsi
lea rcx, [rsp + 0x40]
call fcn.140009d30
mov rsi, qword [rsp + 0x50]
mov rcx, qword [rsp + 0x48]
test rcx, rcx
je 0x1400e4bcf
mov qword [rcx], r14
add rcx, 8
mov qword [rbp + 0x168], rcx
mov qword [rsp + 0x48], rcx
jmp 0x1400e4c59
mov rax, qword [rbx + 0x20]
mov qword [r14 + 0x10], rax
mov rcx, qword [rbx + 0x28]
mov rax, qword [rbx + 0x20]
mov qword [rbp - 0x78], rax
mov qword [rbp - 0x70], rcx
mov dword [rbp + 0x58], r15d
movups xmm0, xmmword [rbp - 0x78]
movups xmmword [rbp + 0x60], xmm0
mov rdi, qword [r14 + 0x18]
lea rdx, [rbp + 0x58]
mov rcx, rdi
call fcn.1400e8aa0
lea r9, [rax + 0x20]
mov qword [rsp + 0x20], rax
xor r8d, r8d
lea rdx, [rbp + 0xf8]
mov rcx, rdi
call fcn.1400e8ae0
lea rcx, [r14 + 0x20]
movzx eax, byte [0x14042918a]
mov byte [rsp + 0x20], al
lea r9, [rbp + 0x170]
lea rdx, [rbp + 0xc8]
call fcn.1400e82b0
mov rcx, qword [rbp + 0x168]
cmp byte [rbx + 0x19], 0
jne 0x1400e4cae
mov rax, qword [rbx + 0x10]
cmp byte [rax + 0x19], 0
jne 0x1400e4c8e
mov rbx, rax
mov rax, qword [rax]
cmp byte [rax + 0x19], 0
jne 0x1400e4cae
nop word [rax + rax]
mov rbx, rax
mov rax, qword [rax]
cmp byte [rax + 0x19], 0
je 0x1400e4c80
jmp 0x1400e4cae
mov rax, qword [rbx + 8]
cmp byte [rax + 0x19], 0
jne 0x1400e4cab
cmp rbx, qword [rax + 0x10]
jne 0x1400e4cab
mov rbx, rax
mov rax, qword [rax + 8]
cmp byte [rax + 0x19], 0
je 0x1400e4c98
mov rbx, rax
mov r8, qword [rbp + 0x160]
movabs rdx, 0xd6bf94d5e57a42bd
cmp rbx, qword [r8 + 0x80]
je 0x1400e4cf3
jmp 0x1400e4808
lea rcx, [0x14030a758]
call fcn.1402b2308
int3
lea rcx, [0x14030a758]
call fcn.1402b2308
int3
mov rcx, qword [rsp + 0x48]
mov qword [rbp + 0x168], rcx
mov rax, rcx
mov rbx, qword [rsp + 0x40]
sub rax, rbx
test rax, 0xfffffffffffffff8
je 0x1400e5966
nop word [rax + rax]
xor r12d, r12d
mov rax, rcx
sub rax, rbx
sar rax, 3
xor r15d, r15d
dec rax
mov qword [rbp + 0x178], rax
je 0x1400e4f45
mov r14, qword [rbx + r15*8]
mov rdi, qword [rbx + r15*8 + 8]
mov rax, qword [r14 + 0x18]
cmp qword [rax + 8], 0x3e8
ja 0x1400e4ee3
mov rcx, qword [rdi + 8]
sub rcx, qword [r14 + 0x10]
mov rax, rdx
imul rcx
add rdx, rcx
sar rdx, 0x17
mov rax, rdx
shr rax, 0x3f
add rdx, rax
movsxd rax, dword [r8 + 0x5c]
cmp rdx, rax
jg 0x1400e4eeb
lea r13, [rdi + 0x20]
mov rdx, qword [r13]
mov rax, qword [rdx]
cmp rax, rdx
je 0x1400e4eeb
mov r8, qword [r14 + 0x20]
mov rcx, r8
mov rbx, qword [r8 + 8]
nop word [rax + rax]
mov r9, rbx
mov r10, rcx
cmp byte [rbx + 0x19], 0
jne 0x1400e4dc9
mov r11d, dword [rax + 0x1c]
cmp dword [r9 + 0x1c], r11d
jae 0x1400e4dbc
mov r9, qword [r9 + 0x10]
jmp 0x1400e4dc2
mov r10, r9
mov r9, qword [r9]
cmp byte [r9 + 0x19], 0
je 0x1400e4db0
cmp r10, rcx
je 0x1400e4de2
mov r9d, dword [r10 + 0x1c]
cmp dword [rax + 0x1c], r9d
jb 0x1400e4de2
mov qword [rbp + 0x30], r10
lea r9, [rbp + 0x30]
jmp 0x1400e4dea
mov qword [rbp], rcx
lea r9, [rbp]
cmp qword [r9], r8
jne 0x1400e4e5a
cmp byte [rax + 0x19], 0
jne 0x1400e4e47
mov r9, qword [rax + 0x10]
cmp byte [r9 + 0x19], 0
jne 0x1400e4e1f
mov rax, r9
mov r9, qword [r9]
cmp byte [r9 + 0x19], 0
jne 0x1400e4e47
nop dword [rax]
mov rax, r9
mov r9, qword [r9]
cmp byte [r9 + 0x19], 0
je 0x1400e4e10
jmp 0x1400e4e47
mov r9, qword [rax + 8]
cmp byte [r9 + 0x19], 0
jne 0x1400e4e44
nop word [rax + rax]
cmp rax, qword [r9 + 0x10]
jne 0x1400e4e44
mov rax, r9
mov r9, qword [r9 + 8]
cmp byte [r9 + 0x19], 0
je 0x1400e4e30
mov rax, r9
cmp rax, rdx
jne 0x1400e4da0
mov rbx, qword [rsp + 0x40]
jmp 0x1400e4eeb
mov rax, qword [r14 + 8]
mov qword [rdi + 8], rax
mov r8, qword [r14 + 0x18]
mov rdx, qword [r8]
mov r8, rdx
mov rdx, qword [rdx]
mov rcx, qword [rdi + 0x18]
call fcn.1400e8820
mov rsi, qword [r14 + 0x18]
mov rax, qword [rsi]
mov rdi, qword [rax + 8]
mov rbx, rdi
cmp byte [rdi + 0x19], 0
jne 0x1400e4eb0
nop dword [rax]
mov rdx, qword [rbx + 0x10]
mov rcx, rsi
call fcn.140009de0
mov rbx, qword [rbx]
mov rcx, rdi
call fcn.1402150f0
mov rdi, rbx
cmp byte [rbx + 0x19], 0
je 0x1400e4e90
mov rax, qword [rsi]
mov qword [rax + 8], rax
mov rax, qword [rsi]
mov qword [rax], rax
mov rax, qword [rsi]
mov qword [rax + 0x10], rax
mov qword [rsi + 8], 0
mov rdx, qword [r14 + 0x20]
mov r8, rdx
mov rdx, qword [rdx]
mov rcx, r13
call fcn.1400e81f0
mov rbx, qword [rsp + 0x40]
inc r12d
mov byte [r14 + 0x30], 1
inc r15
cmp r15, qword [rbp + 0x178]
mov r8, qword [rbp + 0x160]
movabs rdx, 0xd6bf94d5e57a42bd
jb 0x1400e4d30
test r12d, r12d
jle 0x1400e4f45
lea rdx, [rsp + 0x40]
mov rcx, r8
call fcn.1400e5cc0
mov rcx, qword [rsp + 0x48]
mov qword [rbp + 0x168], rcx
mov rbx, qword [rsp + 0x40]
mov r8, qword [rbp + 0x160]
movabs rdx, 0xd6bf94d5e57a42bd
jmp 0x1400e4d10
xor r12d, r12d
mov qword [rsp + 0x30], r12
mov qword [rsp + 0x38], r12
call fcn.14000a340
mov qword [rsp + 0x30], rax
lea rdx, [rsp + 0x30]
mov r15, qword [rbp + 0x160]
mov rcx, qword [r15 + 8]
call fcn.1400f8bb0
lea rdx, [0x140346ce0]
test al, al
je 0x1400e546f
mov r13d, r12d
mov rax, qword [rbp + 0x168]
sub rax, rbx
sar rax, 3
mov qword [rbp + 0x168], rax
test rax, rax
je 0x1400e546f
mov r14, rbx
mov qword [rbp + 0x178], rbx
nop dword [rax + rax]
mov rax, qword [r14]
mov rcx, qword [rax + 0x18]
mov rbx, qword [rcx]
mov rbx, qword [rbx]
cmp rbx, qword [rcx]
je 0x1400e5454
mov rsi, qword [rbx + 0x30]
test rsi, rsi
jne 0x1400e4fd8
mov edi, r12d
mov qword [rbp - 0x60], rsi
jmp 0x1400e4ff6
or rdi, 0xffffffffffffffff
nop dword [rax]
inc rdi
cmp word [rsi + rdi*2], 0
jne 0x1400e4fe0
mov qword [rbp - 0x60], 0
test edi, edi
jne 0x1400e4ffc
mov qword [rbp - 0x68], rdx
jmp 0x1400e501e
mov edx, edi
lea rcx, [rbp - 0x68]
call fcn.1401fcb40
movsxd r9, edi
mov eax, dword [rbp - 0x60]
inc eax
movsxd rdx, eax
mov r8, rsi
mov rcx, qword [rbp - 0x68]
call fcn.1402ba94c
mov edx, edi
lea rcx, [rbp - 0x68]
call fcn.1401fde50
mov rax, qword [rsp + 0x30]
mov rdi, qword [rax + 8]
mov rsi, rax
cmp byte [rdi + 0x19], 0
jne 0x1400e508d
nop dword [rax + rax]
mov rdx, qword [rbp - 0x68]
mov rcx, qword [rdi + 0x20]
call fcn.1402b71dc
test eax, eax
jns 0x1400e5057
mov rdi, qword [rdi + 0x10]
jmp 0x1400e505d
mov rsi, rdi
mov rdi, qword [rdi]
cmp byte [rdi + 0x19], 0
je 0x1400e5040
mov rax, qword [rsp + 0x30]
cmp rsi, rax
je 0x1400e508d
mov rdx, qword [rsi + 0x20]
mov rcx, qword [rbp - 0x68]
call fcn.1402b71dc
test eax, eax
mov rax, qword [rsp + 0x30]
js 0x1400e508d
mov qword [rbp + 8], rsi
lea rsi, [rbp + 8]
jmp 0x1400e5095
mov qword [rbp + 0x18], rax
lea rsi, [rbp + 0x18]
mov rsi, qword [rsi]
cmp dword [rbp - 0x60], 0
jle 0x1400e50ac
mov rcx, qword [rbp - 0x68]
call fcn.1402b7350
mov rax, qword [rsp + 0x30]
cmp rsi, rax
je 0x1400e53e5
lea rax, [0x140346ce0]
mov qword [rsp + 0x78], rax
mov qword [rbp - 0x80], 0
mov qword [rbp - 0x48], rax
mov qword [rbp - 0x40], 0
mov r14, qword [rbx + 0x30]
test r14, r14
jne 0x1400e50e8
mov edi, r12d
mov qword [rsp + 0x70], r14
jmp 0x1400e5108
or rdi, 0xffffffffffffffff
nop dword [rax]
inc rdi
cmp word [r14 + rdi*2], 0
jne 0x1400e50f0
mov qword [rsp + 0x70], 0
test edi, edi
jne 0x1400e510f
mov qword [rsp + 0x68], rax
jmp 0x1400e5134
mov edx, edi
lea rcx, [rsp + 0x68]
call fcn.1401fcb40
movsxd r9, edi
mov eax, dword [rsp + 0x70]
inc eax
movsxd rdx, eax
mov r8, r14
mov rcx, qword [rsp + 0x68]
call fcn.1402ba94c
mov edx, edi
lea rcx, [rsp + 0x68]
call fcn.1401fde50
nop
mov r15, qword [r15 + 8]
lea rax, [r15 + 0x6e8]
mov qword [rbp + 0x48], rax
lea r12, [rax + 8]
mov rcx, r12
call qword [sym.imp.KERNEL32.dll_EnterCriticalSection]
nop
mov r14, qword [r15 + 0x718]
mov rdi, qword [r14 + 8]
cmp byte [rdi + 0x19], 0
jne 0x1400e5194
nop
mov rdx, qword [rsp + 0x68]
mov rcx, qword [rdi + 0x20]
call fcn.1402b71dc
test eax, eax
jns 0x1400e5188
mov rdi, qword [rdi + 0x10]
jmp 0x1400e518e
mov r14, rdi
mov rdi, qword [rdi]
cmp byte [rdi + 0x19], 0
je 0x1400e5170
cmp r14, qword [r15 + 0x718]
je 0x1400e51b9
mov rdx, qword [r14 + 0x20]
mov rcx, qword [rsp + 0x68]
call fcn.1402b71dc
test eax, eax
js 0x1400e51b9
mov qword [rbp - 0x18], r14
lea rdi, [rbp - 0x18]
jmp 0x1400e51c8
mov rax, qword [r15 + 0x718]
mov qword [rbp - 0x10], rax
lea rdi, [rbp - 0x10]
mov rdi, qword [rdi]
cmp rdi, qword [r15 + 0x718]
jne 0x1400e51e2
mov rcx, r12
call qword [sym.imp.KERNEL32.dll_LeaveCriticalSection]
xor dil, dil
jmp 0x1400e5254
mov edx, dword [rdi + 0x3c]
lea rcx, [rsp + 0x78]
call fcn.1401fcb40
movsxd r9, dword [rdi + 0x3c]
mov eax, dword [rbp - 0x80]
inc eax
movsxd rdx, eax
mov r8, qword [rdi + 0x30]
mov rcx, qword [rsp + 0x78]
call fcn.1402ba94c
mov edx, dword [rdi + 0x3c]
lea rcx, [rsp + 0x78]
call fcn.1401fde50
mov edx, dword [rdi + 0x4c]
lea rcx, [rbp - 0x48]
call fcn.1401fcb40
movsxd r9, dword [rdi + 0x4c]
mov eax, dword [rbp - 0x40]
inc eax
movsxd rdx, eax
mov r8, qword [rdi + 0x40]
mov rcx, qword [rbp - 0x48]
call fcn.1402ba94c
mov edx, dword [rdi + 0x4c]
lea rcx, [rbp - 0x48]
call fcn.1401fde50
nop
mov rcx, r12
call qword [sym.imp.KERNEL32.dll_LeaveCriticalSection]
mov dil, 1
cmp dword [rsp + 0x70], 0
jle 0x1400e5265
mov rcx, qword [rsp + 0x68]
call fcn.1402b7350
test dil, dil
je 0x1400e5328
mov rcx, qword [rbp - 0x48]
test rcx, rcx
jne 0x1400e527b
mov al, 1
jmp 0x1400e5290
or rax, 0xffffffffffffffff
nop
inc rax
cmp word [rcx + rax*2], 0
jne 0x1400e5280
test rax, rax
sete al
lea rdi, [rbp - 0x48]
lea rcx, [rsp + 0x78]
test al, al
cmovne rdi, rcx
xor r12d, r12d
mov qword [rbp - 0x70], r12
mov edx, dword [rdi + 0xc]
test edx, edx
jne 0x1400e52ba
lea r14, [0x140346ce0]
mov qword [rbp - 0x78], r14
jmp 0x1400e52e2
lea rcx, [rbp - 0x78]
call fcn.1401fcb40
movsxd r9, dword [rdi + 0xc]
mov eax, dword [rbp - 0x70]
inc eax
movsxd rdx, eax
mov r8, qword [rdi]
mov rcx, qword [rbp - 0x78]
call fcn.1402ba94c
lea r14, [0x140346ce0]
mov edx, dword [rdi + 0xc]
lea rcx, [rbp - 0x78]
call fcn.1401fde50
nop
lea r8, [rbp - 0x78]
lea rdx, [rsp + 0x40]
call fcn.1400e5a90
test eax, eax
js 0x1400e5317
movsxd r8, eax
cmp r8, r13
je 0x1400e5317
mov rdx, r13
lea rcx, [rsp + 0x40]
call fcn.1400e5ba0
nop
cmp dword [rbp - 0x70], 0
jle 0x1400e5332
mov rcx, qword [rbp - 0x78]
call fcn.1402b7350
jmp 0x1400e5332
xor r12d, r12d
lea r14, [0x140346ce0]
mov rsi, qword [rsi + 0x20]
test rsi, rsi
jne 0x1400e5344
mov edi, r12d
mov qword [rbp - 0x50], rsi
jmp 0x1400e5366
or rdi, 0xffffffffffffffff
nop dword [rax + rax]
inc rdi
cmp word [rsi + rdi*2], 0
jne 0x1400e5350
mov qword [rbp - 0x50], 0
test edi, edi
jne 0x1400e536c
mov qword [rbp - 0x58], r14
jmp 0x1400e538e
mov edx, edi
lea rcx, [rbp - 0x58]
call fcn.1401fcb40
movsxd r9, edi
mov eax, dword [rbp - 0x50]
inc eax
movsxd rdx, eax
mov r8, rsi
mov rcx, qword [rbp - 0x58]
call fcn.1402ba94c
mov edx, edi
lea rcx, [rbp - 0x58]
call fcn.1401fde50
lea rdx, [rbp - 0x58]
lea rcx, [rsp + 0x30]
call fcn.1400e7ef0
cmp dword [rbp - 0x50], 0
jle 0x1400e53b7
mov rcx, qword [rbp - 0x58]
call fcn.1402b7350
nop
cmp dword [rbp - 0x40], 0
jle 0x1400e53c7
mov rcx, qword [rbp - 0x48]
call fcn.1402b7350
nop
cmp dword [rbp - 0x80], 0
jle 0x1400e53d7
mov rcx, qword [rsp + 0x78]
call fcn.1402b7350
mov r15, qword [rbp + 0x160]
mov r14, qword [rbp + 0x178]
cmp byte [rbx + 0x19], 0
jne 0x1400e5436
mov rax, qword [rbx + 0x10]
cmp byte [rax + 0x19], 0
jne 0x1400e540f
mov rbx, rax
mov rax, qword [rax]
cmp byte [rax + 0x19], 0
jne 0x1400e5436
mov rbx, rax
mov rax, qword [rax]
cmp byte [rax + 0x19], 0
je 0x1400e5401
jmp 0x1400e5436
mov rax, qword [rbx + 8]
cmp byte [rax + 0x19], 0
jne 0x1400e5433
nop dword [rax]
cmp rbx, qword [rax + 0x10]
jne 0x1400e5433
mov rbx, rax
mov rax, qword [rax + 8]
cmp byte [rax + 0x19], 0
je 0x1400e5420
mov rbx, rax
mov rax, qword [r14]
mov rcx, qword [rax + 0x18]
cmp rbx, qword [rcx]
lea rdx, [0x140346ce0]
jne 0x1400e4fc6
lea rdx, [0x140346ce0]
inc r13
add r14, 8
mov qword [rbp + 0x178], r14
cmp r13, qword [rbp + 0x168]
jb 0x1400e4fb0
mov rcx, r15
call fcn.1400e5f60
mov qword [rbp - 0x30], r12
mov qword [rbp - 0x28], r12
call fcn.1400e2980
mov qword [rbp - 0x30], rax
mov rcx, qword [r15 + 0x90]
mov rdi, qword [rcx]
mov qword [rbp - 0x38], rdi
cmp rdi, rcx
je 0x1400e57d2
nop
mov r13d, dword [rdi + 0x20]
mov dword [rbp + 0x178], r13d
mov rax, qword [rdi + 0x28]
mov rax, qword [rax + 0x18]
mov qword [rbp + 0x28], rax
mov byte [rbp + 0x168], 1
mov rax, qword [rax]
mov rbx, qword [rax]
cmp rbx, rax
je 0x1400e5734
lea rdi, [0x140346ce0]
jmp 0x1400e54e7
mov r15, qword [rbp + 0x160]
mov r14, qword [rbx + 0x30]
test r14, r14
jne 0x1400e54fa
mov esi, r12d
mov qword [rsp + 0x60], r14
jmp 0x1400e5518
or rsi, 0xffffffffffffffff
nop
inc rsi
cmp word [r14 + rsi*2], 0
jne 0x1400e5500
mov qword [rsp + 0x60], 0
test esi, esi
jne 0x1400e551f
mov qword [rsp + 0x58], rdi
jmp 0x1400e5544
mov edx, esi
lea rcx, [rsp + 0x58]
call fcn.1401fcb40
movsxd r9, esi
mov eax, dword [rsp + 0x60]
inc eax
movsxd rdx, eax
mov r8, r14
mov rcx, qword [rsp + 0x58]
call fcn.1402ba94c
mov edx, esi
lea rcx, [rsp + 0x58]
call fcn.1401fde50
nop
mov r15, qword [r15 + 8]
mov rcx, qword [rsp + 0x58]
test rcx, rcx
je 0x1400e569c
or rax, 0xffffffffffffffff
nop word [rax + rax]
inc rax
cmp word [rcx + rax*2], 0
jne 0x1400e5570
test rax, rax
sete al
test al, al
jne 0x1400e569c
mov edx, 0x3a
call fcn.1402ba4e4
mov rdx, qword [rsp + 0x58]
test rax, rax
je 0x1400e55a6
sub rax, rdx
sar rax, 1
test eax, eax
jns 0x1400e55b2
lea rcx, [0x14034d600]
call fcn.1402b9694
lea rdx, [rsp + 0x58]
mov rcx, r15
call fcn.1400f09b0
test al, al
je 0x1400e55d7
lock inc dword [r15 + 0x460]
mov r13d, dword [rbp + 0x178]
jmp 0x1400e5697
lea rax, [r15 + 0x468]
mov qword [rbp + 0x88], rax
lea r12, [rax + 8]
mov rcx, r12
call qword [sym.imp.KERNEL32.dll_EnterCriticalSection]
nop
mov r14, qword [r15 + 0x498]
mov rsi, qword [r14 + 8]
cmp byte [rsi + 0x19], 0
jne 0x1400e5634
nop dword [rax]
nop dword [rax + rax]
mov rdx, qword [rsp + 0x58]
mov rcx, qword [rsi + 0x20]
call fcn.1402b71dc
test eax, eax
jns 0x1400e5628
mov rsi, qword [rsi + 0x10]
jmp 0x1400e562e
mov r14, rsi
mov rsi, qword [rsi]
cmp byte [rsi + 0x19], 0
je 0x1400e5610
cmp r14, qword [r15 + 0x498]
je 0x1400e5659
mov rdx, qword [r14 + 0x20]
mov rcx, qword [rsp + 0x58]
call fcn.1402b71dc
test eax, eax
js 0x1400e5659
mov qword [rbp - 8], r14
lea rax, [rbp - 8]
jmp 0x1400e5668
mov rax, qword [r15 + 0x498]
mov qword [rbp + 0x20], rax
lea rax, [rbp + 0x20]
mov rax, qword [rax]
cmp rax, qword [r15 + 0x498]
je 0x1400e568b
mov rsi, qword [rax + 0x30]
mov rcx, r12
call qword [sym.imp.KERNEL32.dll_LeaveCriticalSection]
mov rcx, qword [rsp + 0x58]
xor r12d, r12d
jmp 0x1400e569f
mov rcx, r12
call qword [sym.imp.KERNEL32.dll_LeaveCriticalSection]
xor r12d, r12d
mov rcx, qword [rsp + 0x58]
mov rsi, r12
cmp dword [rsp + 0x60], 0
jle 0x1400e56ab
call fcn.1402b7350
test rsi, rsi
je 0x1400e56c7
xor r15b, r15b
mov byte [rbp + 0x168], r15b
mov edx, r13d
mov rcx, rsi
call fcn.1400e4260
jmp 0x1400e56cf
movzx r15d, byte [rbp + 0x168]
cmp byte [rbx + 0x19], 0
jne 0x1400e571e
mov rax, qword [rbx + 0x10]
cmp byte [rax + 0x19], 0
jne 0x1400e56fe
mov rbx, rax
mov rax, qword [rax]
cmp byte [rax + 0x19], 0
jne 0x1400e571e
nop dword [rax + rax]
mov rbx, rax
mov rax, qword [rax]
cmp byte [rax + 0x19], 0
je 0x1400e56f0
jmp 0x1400e571e
mov rax, qword [rbx + 8]
cmp byte [rax + 0x19], 0
jne 0x1400e571b
cmp rbx, qword [rax + 0x10]
jne 0x1400e571b
mov rbx, rax
mov rax, qword [rax + 8]
cmp byte [rax + 0x19], 0
je 0x1400e5708
mov rbx, rax
mov rax, qword [rbp + 0x28]
cmp rbx, qword [rax]
jne 0x1400e54e0
test r15b, r15b
mov rdi, qword [rbp - 0x38]
je 0x1400e5756
movzx eax, byte [0x14042918a]
mov byte [rsp + 0x20], al
lea r9, [rbp + 0x178]
lea rdx, [rbp + 0xe8]
lea rcx, [rbp - 0x30]
call fcn.1400e3a70
cmp byte [rdi + 0x19], 0
jne 0x1400e57ba
mov rax, qword [rdi + 0x10]
cmp byte [rax + 0x19], 0
jne 0x1400e5792
mov rdi, rax
mov qword [rbp - 0x38], rax
mov rax, qword [rax]
cmp byte [rax + 0x19], 0
jne 0x1400e57ba
nop word [rax + rax]
mov rdi, rax
mov qword [rbp - 0x38], rax
mov rax, qword [rax]
cmp byte [rax + 0x19], 0
je 0x1400e5780
jmp 0x1400e57ba
mov rax, qword [rdi + 8]
cmp byte [rax + 0x19], 0
jne 0x1400e57b3
nop dword [rax]
cmp rdi, qword [rax + 0x10]
jne 0x1400e57b3
mov rdi, rax
mov rax, qword [rax + 8]
cmp byte [rax + 0x19], 0
je 0x1400e57a0
mov rdi, rax
mov qword [rbp - 0x38], rax
mov r15, qword [rbp + 0x160]
cmp rdi, qword [r15 + 0x90]
jne 0x1400e54a0
mov rax, qword [rbp - 0x30]
mov rbx, qword [rax]
cmp rbx, rax
je 0x1400e5847
nop word [rax + rax]
mov edx, dword [rbx + 0x1c]
mov rcx, r15
call fcn.1400e59a0
cmp byte [rbx + 0x19], 0
jne 0x1400e583e
mov rax, qword [rbx + 0x10]
cmp byte [rax + 0x19], 0
jne 0x1400e581e
mov rbx, rax
mov rax, qword [rax]
cmp byte [rax + 0x19], 0
jne 0x1400e583e
nop word [rax + rax]
mov rbx, rax
mov rax, qword [rax]
cmp byte [rax + 0x19], 0
je 0x1400e5810
jmp 0x1400e583e
mov rax, qword [rbx + 8]
cmp byte [rax + 0x19], 0
jne 0x1400e583b
cmp rbx, qword [rax + 0x10]
jne 0x1400e583b
mov rbx, rax
mov rax, qword [rax + 8]
cmp byte [rax + 0x19], 0
je 0x1400e5828
mov rbx, rax
mov rax, qword [rbp - 0x30]
cmp rbx, rax
jne 0x1400e57e0
mov rcx, qword [rsp + 0x40]
mov qword [rsp + 0x48], rcx
mov r9, rax
mov r8, qword [rax]
lea rdx, [rbp + 0x50]
lea rcx, [rbp - 0x30]
call fcn.140009350
mov rcx, qword [rbp - 0x30]
call fcn.1402150f0
nop
mov rdi, qword [rsp + 0x30]
mov rbx, qword [rdi]
cmp rbx, rbx
jne 0x1400e58e2
mov rsi, qword [rdi + 8]
mov rbx, rsi
cmp byte [rsi + 0x19], 0
jne 0x1400e58c6
nop dword [rax + rax]
mov rdx, qword [rbx + 0x10]
lea rcx, [rsp + 0x30]
call fcn.14000a240
mov rbx, qword [rbx]
cmp dword [rsi + 0x28], 0
jle 0x1400e58b0
mov rcx, qword [rsi + 0x20]
call fcn.1402b7350
mov rcx, rsi
call fcn.1402150f0
mov rsi, rbx
cmp byte [rbx + 0x19], 0
je 0x1400e5890
mov rdi, qword [rsp + 0x30]
mov qword [rdi + 8], rdi
mov rax, qword [rsp + 0x30]
mov qword [rax], rax
mov rax, qword [rsp + 0x30]
mov qword [rax + 0x10], rax
mov qword [rsp + 0x38], r12
jmp 0x1400e5954
cmp rbx, rdi
je 0x1400e5959
mov r8, rbx
cmp byte [rbx + 0x19], 0
jne 0x1400e593e
mov rax, qword [rbx + 0x10]
cmp byte [rax + 0x19], 0
jne 0x1400e591e
mov rbx, rax
mov rax, qword [rax]
cmp byte [rax + 0x19], 0
jne 0x1400e593e
nop word [rax + rax]
mov rbx, rax
mov rax, qword [rax]
cmp byte [rax + 0x19], 0
je 0x1400e5910
jmp 0x1400e593e
mov rax, qword [rbx + 8]
cmp byte [rax + 0x19], 0
jne 0x1400e593b
cmp rbx, qword [rax + 0x10]
jne 0x1400e593b
mov rbx, rax
mov rax, qword [rax + 8]
cmp byte [rax + 0x19], 0
je 0x1400e5928
mov rbx, rax
lea rdx, [rbp + 0x80]
lea rcx, [rsp + 0x30]
call fcn.140008e20
cmp rbx, rdi
jne 0x1400e58e7
mov rdi, qword [rsp + 0x30]
mov rcx, rdi
call fcn.1402150f0
mov rbx, qword [rsp + 0x40]
test rbx, rbx
je 0x1400e5974
mov rcx, rbx
call fcn.1402150f0
nop
mov rcx, qword [rbp + 0x10]
call qword [sym.imp.KERNEL32.dll_LeaveCriticalSection]
mov al, 1
add rsp, 0x218
pop r15
pop r14
pop r13
pop r12
pop rdi
pop rsi
pop rbx
pop rbp
ret