Function at 0x140083c10
Capabilities:
Resolve function by parsing pe exports

Disassembly:
mov qword [rsp + 0x20], r9
mov qword [rsp + 0x18], r8
mov qword [rsp + 0x10], rdx
push rbp
push rbx
push rsi
push rdi
push r14
push r15
lea rbp, [rsp - 0x38]
sub rsp, 0x138
mov r10, qword [rbp + 0x98]
mov rax, rcx
mov r15, r8
mov r8, qword [rbp + 0xb8]
mov ecx, dword [r10 + 8]
mov r11d, 1
shl r11, cl
mov rcx, qword [r10 + 0x10]
mov qword [rbp - 0x10], r8
mov r8, qword [rbp + 0xb0]
sub r11, 0x10
lea rbx, [rax + rdx]
mov r8, qword [r8]
mov r14, r9
mov rsi, rdx
mov qword [rbp - 0x40], r11
mov qword [rbp - 0x50], rcx
mov qword [rbp - 0x48], rbx
mov qword [rsp + 0x40], r8
cmp rax, 8
jb 0x140083c90
lea rdx, [rax + rdx - 7]
cmp dword [r10 + 4], 9
mov rdi, qword [rbp + 0xa0]
mov qword [rbp - 0x28], rdx
mov edx, 0x40
mov eax, 0x200
cmovl eax, edx
mov edx, dword [rdi + 0x70]
mov qword [rbp - 0x20], rax
add rax, rsi
mov qword [rsp + 0x78], rax
mov rax, qword [r10 + 0x60]
mov qword [rbp - 0x30], rax
cmp edx, 4
jle 0x140083d39
mov r8, qword [rbp + 0xa8]
mov ecx, dword [r8]
lea eax, [rcx - 1]
mov dword [r8 + 0x10], eax
lea eax, [rcx + 1]
mov dword [r8 + 0x14], eax
lea eax, [rcx - 2]
mov dword [r8 + 0x18], eax
lea eax, [rcx + 2]
mov dword [r8 + 0x1c], eax
lea eax, [rcx - 3]
mov dword [r8 + 0x20], eax
lea eax, [rcx + 3]
mov dword [r8 + 0x24], eax
cmp edx, 0xa
jle 0x140083d30
mov ecx, dword [r8 + 4]
lea eax, [rcx - 1]
mov dword [r8 + 0x28], eax
lea eax, [rcx + 1]
mov dword [r8 + 0x2c], eax
lea eax, [rcx - 2]
mov dword [r8 + 0x30], eax
lea eax, [rcx + 2]
mov dword [r8 + 0x34], eax
lea eax, [rcx - 3]
mov dword [r8 + 0x38], eax
lea eax, [rcx + 3]
mov dword [r8 + 0x3c], eax
mov rcx, qword [rbp - 0x50]
mov r8, qword [rsp + 0x40]
lea rax, [rsi + 8]
cmp rax, rbx
jae 0x14008594e
mov qword [rsp + 0x130], r12
mov qword [rsp + 0x128], r13
nop word [rax + rax]
lea rax, [rcx + rsi]
mov r12, rbx
mov r9, r11
sub r12, rsi
cmp rsi, r11
mov rcx, r11
cmovb r9, rsi
cmp rax, r11
mov qword [rsp + 0x10], r12
cmovb rcx, rax
mov qword [rsp + 0x20], r9
mov qword [rsp + 0x58], rcx
xor ecx, ecx
mov dword [rbp - 0x60], ecx
mov byte [rbp + 0x70], cl
cmp dword [r10 + 0x270], ecx
je 0x140083df4
cmp rsi, 1
jb 0x140083db2
lea rax, [rsi - 1]
and rax, r14
movzx r8d, byte [rax + r15]
jmp 0x140083db5
xor r8b, r8b
mov byte [rbp + 0x70], r8b
cmp rsi, 2
jb 0x140083dcb
lea rax, [rsi - 2]
and rax, r14
movzx ecx, byte [rax + r15]
movzx eax, cl
mov rcx, qword [rbp + 0x90]
movzx edx, byte [rax + rcx + 0x100]
movzx eax, r8b
movzx ecx, byte [rax + rcx]
or rdx, rcx
movzx ecx, byte [rdx + r10 + 0x275]
mov dword [rbp - 0x60], ecx
mov rax, qword [r10 + 0x48]
mov r13, qword [rdi + 0x88]
xor r8d, r8d
mov qword [rsp + 8], rax
movsxd rax, ecx
mov r11, rsi
mov rcx, qword [r10 + rax*8 + 0x2b8]
movsxd rsi, dword [rdi + 0x70]
mov eax, 0x7e4
and r11, r14
xor r10d, r10d
mov qword [rbp - 0x78], r8
mov r8, qword [rdi + 0x80]
mov qword [rsp + 0x50], rax
xor eax, eax
xor ebx, ebx
mov qword [rbp - 0x80], rax
mov dword [rbp - 0x68], eax
mov qword [rsp + 0x38], 0x7e4
mov qword [rsp + 0x30], rcx
mov qword [rsp + 0x48], r8
mov qword [rsp], r11
mov qword [rsp + 0x28], r10
test rsi, rsi
je 0x140083fb6
mov rax, qword [rbp + 0x78]
mov rcx, qword [rbp + 0xa8]
nop
movsxd rdi, dword [rcx + rbx*4]
mov rdx, rax
sub rdx, rdi
cmp rdx, rax
jae 0x140083fa5
cmp rdi, r9
ja 0x140083fa5
lea rax, [r10 + r11]
and rdx, r14
cmp rax, r14
ja 0x140083fa1
lea rax, [rdx + r10]
cmp rax, r14
ja 0x140083fa1
movzx eax, byte [rax + r15]
lea rcx, [r11 + r15]
cmp byte [rcx + r10], al
jne 0x140083f9a
lea r10, [rcx + r12]
xor r8d, r8d
lea r11, [rdx + r15]
lea r9, [r10 - 4]
cmp rcx, r9
ja 0x140083eea
mov rdx, r11
sub rdx, rcx
mov eax, dword [rdx + rcx]
cmp dword [rcx], eax
jne 0x140083eea
add rcx, 4
add r8, 4
cmp rcx, r9
jbe 0x140083ed6
cmp rcx, r10
jae 0x140083f04
nop
movzx eax, byte [rcx]
cmp byte [r8 + r11], al
jne 0x140083f04
inc rcx
inc r8
cmp rcx, r10
jb 0x140083ef0
cmp r8, 3
jae 0x140083f15
cmp r8, 2
jne 0x140083f8c
cmp rbx, r8
jae 0x140083f8c
mov r11, qword [rsp + 0x50]
mov r9, r8
imul r9, r9, 0x87
add r9, 0x78f
cmp r11, r9
jae 0x140083f8c
test rbx, rbx
je 0x140083f53
movzx ecx, bl
mov edx, 0x1ca10
mov rax, 0xffffffffffffffd9
and cl, 0xe
sar rdx, cl
and edx, 0xe
sub rax, rdx
add r9, rax
mov rax, qword [rbp + 0x78]
mov rcx, qword [rbp + 0xa8]
cmp r11, r9
mov r11, qword [rsp]
jae 0x140083fff
mov qword [rsp + 0x50], r9
mov qword [rsp + 0x38], r9
mov r9, qword [rsp + 0x20]
mov r10, r8
mov qword [rsp + 0x28], r8
mov qword [rbp - 0x80], r8
mov qword [rbp - 0x78], rdi
jmp 0x140083fa5
mov r10, qword [rsp + 0x28]
mov r9, qword [rsp + 0x20]
mov r11, qword [rsp]
mov rcx, qword [rbp + 0xa8]
mov rax, qword [rbp + 0x78]
inc rbx
cmp rbx, rsi
jb 0x140083e70
mov r8, qword [rsp + 0x48]
mov rbx, qword [rbp + 0xa0]
mov r12, qword [r11 + r15]
lea rdx, [r11 + r15]
mov ecx, dword [rbx + 0x6c]
mov qword [rsp + 0x18], rdx
imul r12, qword [rbx + 0x60]
shr r12, 0x31
mov rax, r12
mov qword [rsp + 0x60], r12
shl rax, cl
movzx ecx, word [r8 + r12*2]
lea r15, [r13 + rax*4]
mov rax, qword [rbx + 0x58]
mov qword [rbp - 0x58], rcx
cmp rcx, rax
jbe 0x14008400b
mov esi, ecx
sub rsi, rax
jmp 0x14008400d
mov r10, qword [rsp + 0x28]
mov r9, qword [rsp + 0x20]
jmp 0x140083fa5
xor esi, esi
mov r14d, dword [rdx]
mov rdi, rcx
cmp rcx, rsi
jbe 0x140084164
mov r13d, dword [rbx + 0x68]
mov r12, rdx
mov rbx, qword [rbp + 0x78]
dec rdi
mov rax, r13
and rax, rdi
mov edx, dword [r15 + rax*4]
sub rbx, rdx
cmp rbx, r9
ja 0x14008414a
mov rcx, qword [rbp + 0x88]
lea rax, [r10 + r11]
and rdx, rcx
cmp rax, rcx
ja 0x140084141
lea rax, [rdx + r10]
cmp rax, rcx
ja 0x140084141
mov r8, qword [rbp + 0x80]
movzx eax, byte [rax + r8]
cmp byte [r12 + r10], al
jne 0x140084141
cmp r14d, dword [rdx + r8]
jne 0x140084141
mov rax, qword [rsp + 0x10]
lea rcx, [r12 + 4]
lea r11, [rdx + r8 + 4]
lea r10, [rcx + rax - 4]
xor edx, edx
lea r9, [r10 - 4]
cmp rcx, r9
ja 0x1400840c5
mov r8, r11
sub r8, rcx
nop dword [rax]
mov eax, dword [r8 + rcx]
cmp dword [rcx], eax
jne 0x1400840c5
add rcx, 4
add rdx, 4
cmp rcx, r9
jbe 0x1400840b0
cmp rcx, r10
jae 0x1400840e4
nop word [rax + rax]
movzx eax, byte [rcx]
cmp byte [rdx + r11], al
jne 0x1400840e4
inc rcx
inc rdx
cmp rcx, r10
jb 0x1400840d0
mov rcx, rbx
add rdx, 4
xor eax, eax
shr rcx, 1
je 0x1400840f9
inc eax
shr rcx, 1
jne 0x1400840f2
mov r9, qword [rsp + 0x20]
mov r11, qword [rsp]
imul eax, eax, 0x1e
mov rcx, rdx
imul rcx, rcx, 0x87
sub rcx, rax
add rcx, 0x780
cmp qword [rsp + 0x50], rcx
jae 0x14008413c
mov qword [rsp + 0x50], rcx
mov r10, rdx
mov qword [rsp + 0x28], rdx
mov qword [rbp - 0x80], rdx
mov qword [rbp - 0x78], rbx
mov qword [rsp + 0x38], rcx
jmp 0x140084141
mov r10, qword [rsp + 0x28]
cmp rdi, rsi
ja 0x140084023
mov r12, qword [rsp + 0x60]
mov rcx, qword [rbp - 0x58]
mov rdx, qword [rsp + 0x18]
mov r8, qword [rsp + 0x48]
mov rbx, qword [rbp + 0xa0]
mov eax, dword [rbx + 0x68]
mov rdi, qword [rsp + 0x38]
and rax, rcx
mov rcx, qword [rbp + 0x78]
mov dword [r15 + rax*4], ecx
inc word [r8 + r12*2]
cmp rdi, 0x7e4
jne 0x140084322
mov r12, qword [rbx + 0x78]
mov r13, qword [r12 + 0x28]
mov rax, r13
shr rax, 7
cmp qword [r12 + 0x30], rax
jb 0x140084322
mov edi, dword [rdx]
mov r15, qword [rsp + 0x30]
mov r14d, 2
imul edi, edi, 0x1e35a7bd
shr rdi, 0x11
and edi, 0x7ffe
nop word [rax + rax]
inc r13
mov qword [r12 + 0x28], r13
mov rax, qword [r15 + 0x20]
movzx ecx, byte [rdi + rax]
test cl, cl
je 0x140084305
mov rax, qword [r15 + 0x18]
movzx r11d, cl
movzx esi, word [rax + rdi*2]
cmp r11, qword [rsp + 0x10]
ja 0x140084305
mov rbx, qword [r15]
mov eax, r11d
xor r9d, r9d
mov ecx, dword [rbx + r11*4 + 0x20]
imul rax, rsi
add rcx, rax
add rcx, qword [rbx + 0xa8]
lea r10, [rcx + r11]
lea r8, [r10 - 4]
cmp rcx, r8
ja 0x140084249
sub rdx, rcx
nop dword [rax + rax]
mov eax, dword [rdx + rcx]
cmp dword [rcx], eax
jne 0x140084244
add rcx, 4
add r9, 4
cmp rcx, r8
jbe 0x140084230
mov rdx, qword [rsp + 0x18]
cmp rcx, r10
jae 0x140084264
nop
movzx eax, byte [rcx]
cmp byte [r9 + rdx], al
jne 0x140084264
inc rcx
inc r9
cmp rcx, r10
jb 0x140084250
mov eax, dword [r15 + 0xc]
add rax, r9
cmp rax, r11
jbe 0x140084305
test r9, r9
je 0x140084305
mov rax, qword [r15 + 0x10]
mov r8, r11
sub r8, r9
movzx edx, r8b
add dl, dl
lea ecx, [rdx + r8]
add cl, cl
shr rax, cl
movzx ecx, byte [rbx + r11]
and eax, 0x3f
lea rdx, [rax + r8*4]
mov rax, qword [rbp - 0x30]
shl rdx, cl
add rdx, rsi
add rdx, qword [rsp + 0x58]
lea r8, [rdx + rax + 1]
cmp r8, qword [rsp + 8]
ja 0x140084305
mov rcx, r8
xor eax, eax
shr rcx, 1
je 0x1400842ce
inc eax
shr rcx, 1
jne 0x1400842c7
imul eax, eax, 0x1e
mov rcx, r9
imul rcx, rcx, 0x87
sub rcx, rax
add rcx, 0x780
cmp rcx, qword [rsp + 0x38]
jb 0x140084305
sub r11d, r9d
inc qword [r12 + 0x30]
mov qword [rbp - 0x80], r9
mov dword [rbp - 0x68], r11d
mov qword [rbp - 0x78], r8
mov qword [rsp + 0x38], rcx
mov rdx, qword [rsp + 0x18]
inc rdi
dec r14
jne 0x1400841d0
mov rbx, qword [rbp + 0xa0]
mov rdi, qword [rsp + 0x38]
mov r14, qword [rsp + 0x10]
mov r13, qword [rsp]
cmp r14, 0x20
jb 0x1400844e4
mov rbx, qword [rbx + 0xa0]
mov r15, qword [rbp + 0x78]
cmp rbx, r15
ja 0x1400844d2
mov r12, qword [rsp + 0x20]
mov r10, qword [rbp + 0x88]
mov r11, qword [rbp + 0x80]
mov rdi, qword [rbp + 0xa0]
lea rsi, [rbx + 0x20]
nop word [rax + rax]
mov r8d, dword [rdi + 0x90]
mov rax, rbx
and rax, r10
mov r9d, r8d
movzx edx, byte [rax + r11]
mov rax, rsi
and r9d, 0x3fffffff
imul r8d, dword [rdi + 0xac]
and rax, r10
inc edx
movzx ecx, byte [rax + r11]
imul edx, dword [rdi + 0xb0]
sub ecx, edx
lea eax, [rcx + r8 + 1]
mov dword [rdi + 0x90], eax
cmp r9d, 0x1000000
jae 0x1400844be
mov rax, qword [rdi + 0x98]
mov r8d, dword [rax + r9*4]
mov dword [rax + r9*4], ebx
cmp rbx, r15
jne 0x1400844be
mov eax, 0xffffffff
cmp r8, rax
je 0x1400844be
mov edi, r15d
sub edi, r8d
cmp rdi, r12
ja 0x1400844b7
and r8, r10
lea rcx, [r13 + r11]
xor edx, edx
add r8, r11
lea r11, [rcx + r14]
lea r10, [r11 - 4]
cmp rcx, r10
ja 0x14008442c
mov r9, r8
sub r9, rcx
mov eax, dword [r9 + rcx]
cmp dword [rcx], eax
jne 0x14008442c
add rcx, 4
add rdx, 4
cmp rcx, r10
jbe 0x140084417
cmp rcx, r11
jae 0x140084445
movzx eax, byte [rcx]
cmp byte [rdx + r8], al
jne 0x140084445
inc rcx
inc rdx
cmp rcx, r11
jb 0x140084431
cmp rdx, 4
jb 0x1400844a9
cmp rdx, qword [rbp - 0x80]
jbe 0x1400844a9
mov rcx, rdi
xor eax, eax
shr rcx, 1
je 0x140084467
nop dword [rax + rax]
inc eax
shr rcx, 1
jne 0x140084460
mov r10, qword [rbp + 0x88]
mov r11, qword [rbp + 0x80]
imul eax, eax, 0x1e
mov rcx, rdx
imul rcx, rcx, 0x87
sub rcx, rax
add rcx, 0x780
cmp rcx, qword [rsp + 0x38]
jbe 0x1400844b7
mov qword [rbp - 0x80], rdx
mov qword [rbp - 0x78], rdi
mov qword [rsp + 0x38], rcx
mov dword [rbp - 0x68], 0
jmp 0x1400844b7
mov r11, qword [rbp + 0x80]
mov r10, qword [rbp + 0x88]
mov rdi, qword [rbp + 0xa0]
inc rbx
inc rsi
cmp rbx, r15
jbe 0x140084370
mov rdi, qword [rsp + 0x38]
mov rbx, qword [rbp + 0xa0]
lea rax, [r15 + 1]
mov qword [rbx + 0xa0], rax
mov r8, qword [rbp + 0x98]
mov rcx, qword [rsp + 0x58]
mov rax, qword [r8 + 0x48]
add rcx, qword [r8 + 0x60]
mov qword [rsp + 0x28], rax
mov rax, qword [r8 + 0x58]
mov qword [rsp + 0x60], rcx
mov qword [rsp + 0x58], rax
test rax, rax
je 0x14008489b
mov rax, qword [rbp + 0x80]
lea r14, [r13 + rax]
lea rax, [r8 + 0x68]
mov qword [rsp + 0x18], rax
nop dword [rax]
mov rbx, qword [rax]
mov r13, qword [rbp - 0x80]
mov rsi, rcx
sub rsi, qword [rax + 0x100]
mov eax, dword [rbx + 8]
mov r8d, dword [rbx + 0x10]
mov r10d, dword [rbx + 0x14]
or rdx, 0xffffffffffffffff
mov qword [rsp + 0x50], rax
xor r12d, r12d
mov ecx, r10d
mov qword [rsp + 8], rsi
sub rsi, rax
mov eax, 1
mov r15, rdi
shl eax, cl
mov ecx, r8d
mov edi, 0x40
lea r9, [rbx + rax*4 + 0x18]
mov eax, 1
shl eax, cl
mov ecx, edi
sub ecx, dword [rbx + 0xc]
lea r11, [r9 + rax*2]
movabs rax, 0x1fe35a7bd3579bd3
shr rdx, cl
mov ecx, edi
and rdx, qword [r14]
sub ecx, r8d
imul rdx, rax
shr rdx, cl
mov ecx, 0x20
mov r8d, edx
sub ecx, r10d
mov edx, 0xffffffff
movzx r9d, word [r9 + r8*2]
shr rdx, cl
and rdx, r8
mov eax, dword [rbx + rdx*4 + 0x18]
add eax, r9d
cmp r9d, 0xffff
sete r12b
cmp dword [rbx], 0xdebcede0
lea rcx, [r11 + rax*4]
mov eax, dword [rbx + 4]
mov dword [rsp + 0x70], r12d
mov qword [rsp + 0x30], rcx
lea r12, [r11 + rax*4]
mov qword [rsp + 0x48], r12
je 0x1400845fe
mov r12, qword [r12]
mov qword [rsp + 0x48], r12
xor ebx, ebx
mov rax, qword [rbp + 0xa8]
movsxd rdi, dword [rax + rbx*4]
mov rax, qword [rsp + 8]
cmp rdi, rsi
jbe 0x1400846f2
cmp rdi, rax
ja 0x1400846f2
mov rdx, qword [rsp + 0x50]
sub rax, rdi
xor r8d, r8d
sub rdx, rax
lea r11, [rax + r12]
mov rax, qword [rsp + 0x10]
cmp rdx, rax
mov rcx, r14
cmova rdx, rax
add rdx, r14
lea r10, [rdx - 4]
cmp r14, r10
ja 0x14008466a
mov r9, r11
sub r9, r14
mov eax, dword [rcx + r9]
cmp dword [rcx], eax
jne 0x14008466a
add rcx, 4
add r8, 4
cmp rcx, r10
jbe 0x140084655
cmp rcx, rdx
jae 0x140084684
nop
movzx eax, byte [rcx]
cmp byte [r8 + r11], al
jne 0x140084684
inc rcx
inc r8
cmp rcx, rdx
jb 0x140084670
cmp r8, 2
jb 0x1400846ed
mov r9, r8
imul r9, r9, 0x87
add r9, 0x78f
cmp r15, r9
jae 0x1400846ed
test rbx, rbx
je 0x1400846c3
movzx ecx, bl
mov edx, 0x1ca10
mov rax, 0xffffffffffffffd9
and cl, 0xe
sar rdx, cl
and edx, 0xe
sub rax, rdx
add r9, rax
mov rax, qword [rsp + 8]
cmp r15, r9
jae 0x1400846f2
cmp r8, r13
mov r15, r9
mov qword [rbp - 0x80], r8
mov dword [rbp - 0x68], 0
mov qword [rbp - 0x78], rdi
mov qword [rsp + 0x38], r9
cmova r13, r8
jmp 0x1400846f2
mov rax, qword [rsp + 8]
inc rbx
cmp rbx, 4
jb 0x140084600
mov r12d, dword [rsp + 0x70]
test r12d, r12d
jne 0x140084865
mov rsi, qword [rsp + 0x48]
mov rcx, qword [rsp + 0x30]
mov r12, qword [rsp + 0x50]
mov r9, qword [rsp + 0x28]
mov r10, qword [rsp + 0x10]
nop word [rax + rax]
mov edi, dword [rcx]
add rcx, 4
mov r8, r12
mov edx, edi
and edi, 0x80000000
mov rbx, rax
btr edx, 0x1f
mov qword [rsp + 0x30], rcx
sub r8, rdx
sub rbx, rdx
cmp r8, r10
cmova r8, r10
cmp rbx, r9
ja 0x14008485d
mov rax, qword [rsp]
add rax, r13
cmp rax, qword [rbp + 0x88]
ja 0x140084842
cmp r13, r8
jae 0x140084842
lea rax, [rdx + r13]
movzx ecx, byte [rax + rsi]
cmp byte [r14 + r13], cl
jne 0x140084853
lea r10, [r14 + r8]
lea r11, [rdx + rsi]
xor edx, edx
lea r9, [r10 - 4]
mov rcx, r14
cmp r14, r9
ja 0x1400847c5
mov r8, r11
sub r8, r14
nop
mov eax, dword [rcx + r8]
cmp dword [rcx], eax
jne 0x1400847c5
add rcx, 4
add rdx, 4
cmp rcx, r9
jbe 0x1400847b0
cmp rcx, r10
jae 0x1400847e4
nop word [rax + rax]
movzx eax, byte [rcx]
cmp byte [rdx + r11], al
jne 0x1400847e4
inc rcx
inc rdx
cmp rcx, r10
jb 0x1400847d0
cmp rdx, 4
jb 0x140084849
mov rcx, rbx
xor eax, eax
shr rcx, 1
je 0x1400847fb
inc eax
shr rcx, 1
jne 0x1400847f4
mov r9, qword [rsp + 0x28]
mov r10, qword [rsp + 0x10]
imul eax, eax, 0x1e
mov rcx, rdx
imul rcx, rcx, 0x87
sub rcx, rax
mov rax, qword [rsp + 8]
add rcx, 0x780
cmp r15, rcx
jae 0x140084858
mov r15, rcx
mov r13, rdx
mov qword [rbp - 0x80], rdx
mov dword [rbp - 0x68], 0
mov qword [rbp - 0x78], rbx
mov qword [rsp + 0x38], rcx
jmp 0x140084858
mov rax, qword [rsp + 8]
jmp 0x14008485d
mov r9, qword [rsp + 0x28]
mov r10, qword [rsp + 0x10]
mov rax, qword [rsp + 8]
mov rcx, qword [rsp + 0x30]
test edi, edi
je 0x140084730
mov rax, qword [rsp + 0x18]
mov rcx, qword [rsp + 0x60]
mov rdi, qword [rsp + 0x38]
add rax, 8
dec qword [rsp + 0x58]
mov qword [rsp + 0x18], rax
jne 0x140084530
mov r14, qword [rsp + 0x10]
mov rbx, qword [rbp + 0xa0]
mov r8, qword [rbp + 0x98]
cmp rdi, 0x7e4
jbe 0x140085987
mov r13, qword [rbp + 0x78]
mov r15, qword [rbp - 0x80]
xor esi, esi
mov dword [rsp + 0x70], esi
dec r14
cmp dword [r8 + 4], 5
mov qword [rsp + 0x10], r14
jge 0x1400848d5
lea rax, [r15 - 1]
mov r10, r14
cmp rax, r14
cmovb r10, rax
jmp 0x1400848d8
mov r10, rsi
mov rdx, qword [rbp - 0x40]
mov rax, qword [rbp - 0x50]
mov r15, qword [rbp + 0x80]
lea r12, [r13 + 1]
lea rax, [rax + r13 + 1]
mov r9, rdx
cmp r12, rdx
mov rcx, rdx
mov r11d, 0x7e4
cmovb r9, r12
cmp rax, rdx
mov qword [rsp], r10
cmovb rcx, rax
cmp dword [r8 + 0x270], 0
mov qword [rsp + 0x30], rsi
mov qword [rsp + 0x60], rcx
mov qword [rsp + 8], r11
mov qword [rsp + 0x50], r12
mov qword [rsp + 0x68], r9
je 0x14008496e
movzx ecx, byte [rbp + 0x70]
mov rax, r13
and rax, qword [rbp + 0x88]
movzx edi, byte [rax + r15]
mov eax, ecx
mov rcx, qword [rbp + 0x90]
movzx edx, byte [rax + rcx + 0x100]
movzx ecx, byte [rdi + rcx]
mov byte [rbp + 0x70], dil
or rdx, rcx
movzx eax, byte [rdx + r8 + 0x275]
mov dword [rbp - 0x60], eax
jmp 0x140084971
mov eax, dword [rbp - 0x60]
mov r13, qword [rbx + 0x88]
mov rdi, qword [rbp + 0xa0]
cdqe
mov rcx, qword [r8 + rax*8 + 0x2b8]
mov r8, qword [rbx + 0x80]
mov rax, r12
mov qword [rbp - 0x38], rcx
mov rcx, qword [rbp + 0x88]
mov qword [rsp + 0x20], rsi
and rax, rcx
mov dword [rbp + 0x10], esi
mov rbx, rsi
movsxd rsi, dword [rdi + 0x70]
mov qword [rsp + 0x58], rax
mov rax, r11
mov qword [rsp + 0x18], rax
mov qword [rbp - 0x58], r8
mov qword [rsp + 0x78], r13
test rsi, rsi
je 0x140084b30
mov r13, qword [rsp + 0x58]
mov rax, qword [rbp + 0xa8]
nop dword [rax + rax]
movsxd rdi, dword [rax + rbx*4]
mov rdx, r12
sub rdx, rdi
cmp rdx, r12
jae 0x140084b1b
cmp rdi, r9
ja 0x140084b1b
lea rax, [r10 + r13]
and rdx, rcx
cmp rax, rcx
ja 0x140084b14
lea rax, [rdx + r10]
cmp rax, rcx
ja 0x140084b14
movzx eax, byte [rax + r15]
lea rcx, [r13 + r15]
cmp byte [rcx + r10], al
jne 0x140084b0d
lea r10, [rcx + r14]
xor r8d, r8d
lea r11, [rdx + r15]
lea r9, [r10 - 4]
cmp rcx, r9
ja 0x140084a5b
mov rdx, r11
sub rdx, rcx
mov eax, dword [rcx + rdx]
cmp dword [rcx], eax
jne 0x140084a5b
add rcx, 4
add r8, 4
cmp rcx, r9
jbe 0x140084a47
cmp rcx, r10
jae 0x140084a74
movzx eax, byte [rcx]
cmp byte [r8 + r11], al
jne 0x140084a74
inc rcx
inc r8
cmp rcx, r10
jb 0x140084a60
cmp r8, 3
jae 0x140084a85
cmp r8, 2
jne 0x140084aff
cmp rbx, r8
jae 0x140084aff
mov r11, qword [rsp + 0x18]
mov r9, r8
imul r9, r9, 0x87
add r9, 0x78f
cmp r11, r9
jae 0x140084aff
test rbx, rbx
je 0x140084ac3
movzx ecx, bl
mov edx, 0x1ca10
mov rax, 0xffffffffffffffd9
and cl, 0xe
sar rdx, cl
and edx, 0xe
sub rax, rdx
add r9, rax
mov rcx, qword [rbp + 0x88]
mov rax, qword [rbp + 0xa8]
cmp r11, r9
jae 0x140084b7c
mov qword [rsp + 0x18], r9
mov r11, r9
mov qword [rsp + 8], r9
mov r9, qword [rsp + 0x68]
mov r10, r8
mov qword [rsp], r8
mov qword [rsp + 0x20], r8
mov qword [rsp + 0x30], rdi
jmp 0x140084b1b
mov r10, qword [rsp]
mov r9, qword [rsp + 0x68]
mov r11, qword [rsp + 8]
mov rcx, qword [rbp + 0x88]
mov rax, qword [rbp + 0xa8]
inc rbx
cmp rbx, rsi
jb 0x1400849e0
mov r13, qword [rsp + 0x78]
mov r8, qword [rbp - 0x58]
mov rbx, qword [rbp + 0xa0]
mov rdx, qword [rsp + 0x58]
mov ecx, dword [rbx + 0x6c]
add rdx, r15
mov r12, qword [rdx]
mov qword [rsp + 0x48], rdx
imul r12, qword [rbx + 0x60]
shr r12, 0x31
mov rax, r12
mov qword [rsp + 0x78], r12
shl rax, cl
movzx ecx, word [r8 + r12*2]
lea r15, [r13 + rax*4]
mov rax, qword [rbx + 0x58]
mov qword [rbp - 0x18], rcx
cmp rcx, rax
jbe 0x140084b8c
mov esi, ecx
sub rsi, rax
jmp 0x140084b8e
mov r10, qword [rsp]
mov r9, qword [rsp + 0x68]
mov r11, qword [rsp + 8]
jmp 0x140084b1b
xor esi, esi
mov r14d, dword [rdx]
mov rdi, rcx
cmp rcx, rsi
jbe 0x140084cf0
mov r13d, dword [rbx + 0x68]
mov r12, rdx
nop word [rax + rax]
mov rbx, qword [rsp + 0x50]
dec rdi
mov rax, rdi
and rax, r13
mov edx, dword [r15 + rax*4]
sub rbx, rdx
cmp rbx, r9
ja 0x140084cde
mov rcx, qword [rbp + 0x88]
mov rax, qword [rsp + 0x58]
add rax, r10
and rdx, rcx
cmp rax, rcx
ja 0x140084cd5
lea rax, [rdx + r10]
cmp rax, rcx
ja 0x140084cd5
mov r8, qword [rbp + 0x80]
movzx eax, byte [rax + r8]
cmp byte [r12 + r10], al
jne 0x140084cd5
cmp r14d, dword [rdx + r8]
jne 0x140084cd5
mov rax, qword [rsp + 0x10]
lea rcx, [r12 + 4]
lea r11, [rdx + r8 + 4]
lea r10, [rcx + rax - 4]
xor edx, edx
lea r9, [r10 - 4]
cmp rcx, r9
ja 0x140084c55
mov r8, r11
sub r8, rcx
nop dword [rax + rax]
mov eax, dword [rcx + r8]
cmp dword [rcx], eax
jne 0x140084c55
add rcx, 4
add rdx, 4
cmp rcx, r9
jbe 0x140084c40
cmp rcx, r10
jae 0x140084c74
nop word [rax + rax]
movzx eax, byte [rcx]
cmp byte [rdx + r11], al
jne 0x140084c74
inc rcx
inc rdx
cmp rcx, r10
jb 0x140084c60
mov rcx, rbx
add rdx, 4
xor eax, eax
shr rcx, 1
je 0x140084c89
inc eax
shr rcx, 1
jne 0x140084c82
mov r9, qword [rsp + 0x68]
imul eax, eax, 0x1e
mov rcx, rdx
imul rcx, rcx, 0x87
sub rcx, rax
add rcx, 0x780
cmp qword [rsp + 0x18], rcx
jae 0x140084ccc
mov qword [rsp + 0x18], rcx
mov r10, rdx
mov qword [rsp], rdx
mov qword [rsp + 0x20], rdx
mov qword [rsp + 0x30], rbx
mov r11, rcx
mov qword [rsp + 8], rcx
jmp 0x140084cd5
mov r10, qword [rsp]
mov r11, qword [rsp + 8]
cmp rdi, rsi
ja 0x140084bb0
mov r12, qword [rsp + 0x78]
mov rcx, qword [rbp - 0x18]
mov rdx, qword [rsp + 0x48]
mov r8, qword [rbp - 0x58]
mov rdi, qword [rbp + 0xa0]
mov r13, qword [rsp + 0x50]
mov eax, dword [rdi + 0x68]
and rax, rcx
mov dword [r15 + rax*4], r13d
inc word [r8 + r12*2]
cmp r11, 0x7e4
jne 0x140084ea4
mov r12, qword [rdi + 0x78]
mov r13, qword [r12 + 0x28]
mov rax, r13
shr rax, 7
cmp qword [r12 + 0x30], rax
jb 0x140084e9f
mov esi, dword [rdx]
mov r15, qword [rbp - 0x38]
mov r14d, 2
imul esi, esi, 0x1e35a7bd
shr rsi, 0x11
and esi, 0x7ffe
nop
inc r13
mov qword [r12 + 0x28], r13
mov rax, qword [r15 + 0x20]
movzx ecx, byte [rsi + rax]
test cl, cl
je 0x140084e87
mov rax, qword [r15 + 0x18]
movzx r11d, cl
movzx edi, word [rax + rsi*2]
cmp r11, qword [rsp + 0x10]
ja 0x140084e87
mov rbx, qword [r15]
mov eax, r11d
xor r9d, r9d
mov ecx, dword [rbx + r11*4 + 0x20]
imul rax, rdi
add rcx, rax
add rcx, qword [rbx + 0xa8]
lea r10, [rcx + r11]
lea r8, [r10 - 4]
cmp rcx, r8
ja 0x140084dc9
sub rdx, rcx
nop dword [rax + rax]
mov eax, dword [rcx + rdx]
cmp dword [rcx], eax
jne 0x140084dc4
add rcx, 4
add r9, 4
cmp rcx, r8
jbe 0x140084db0
mov rdx, qword [rsp + 0x48]
cmp rcx, r10
jae 0x140084de4
nop
movzx eax, byte [rcx]
cmp byte [rdx + r9], al
jne 0x140084de4
inc rcx
inc r9
cmp rcx, r10
jb 0x140084dd0
mov eax, dword [r15 + 0xc]
add rax, r9
cmp rax, r11
jbe 0x140084e87
test r9, r9
je 0x140084e87
mov rax, qword [r15 + 0x10]
mov r8, r11
sub r8, r9
movzx edx, r8b
add dl, dl
lea ecx, [rdx + r8]
add cl, cl
shr rax, cl
movzx ecx, byte [r11 + rbx]
and eax, 0x3f
lea rdx, [rax + r8*4]
mov rax, qword [rbp - 0x30]
shl rdx, cl
add rdx, rdi
add rdx, qword [rsp + 0x60]
lea r8, [rdx + rax + 1]
cmp r8, qword [rsp + 0x28]
ja 0x140084e87
mov rcx, r8
xor eax, eax
shr rcx, 1
je 0x140084e4e
inc eax
shr rcx, 1
jne 0x140084e47
imul eax, eax, 0x1e
mov rcx, r9
imul rcx, rcx, 0x87
sub rcx, rax
add rcx, 0x780
cmp rcx, qword [rsp + 8]
jb 0x140084e87
sub r11d, r9d
inc qword [r12 + 0x30]
mov qword [rsp + 0x20], r9
mov dword [rbp + 0x10], r11d
mov qword [rsp + 0x30], r8
mov qword [rsp + 8], rcx
mov rdx, qword [rsp + 0x48]
inc rsi
dec r14
jne 0x140084d50
mov rdi, qword [rbp + 0xa0]
mov r13, qword [rsp + 0x50]
mov r14, qword [rsp + 0x10]
cmp r14, 0x20
jb 0x14008505a
mov rbx, qword [rdi + 0xa0]
cmp rbx, r13
ja 0x14008504f
mov r12, qword [rsp + 0x68]
mov r10, qword [rbp + 0x88]
mov r11, qword [rbp + 0x80]
lea rsi, [rbx + 0x20]
nop word [rax + rax]
mov r8d, dword [rdi + 0x90]
mov rax, rbx
and rax, r10
mov r9d, r8d
movzx edx, byte [rax + r11]
mov rax, rsi
and r9d, 0x3fffffff
and rax, r10
inc edx
movzx ecx, byte [rax + r11]
mov eax, dword [rdi + 0xac]
imul edx, dword [rdi + 0xb0]
sub ecx, edx
imul eax, r8d
lea eax, [rcx + rax + 1]
mov dword [rdi + 0x90], eax
cmp r9d, 0x1000000
jae 0x140085040
mov rax, qword [rdi + 0x98]
mov r8d, dword [rax + r9*4]
mov dword [rax + r9*4], ebx
cmp rbx, r13
jne 0x140085040
mov eax, 0xffffffff
cmp r8, rax
je 0x140085040
mov edi, r13d
sub edi, r8d
cmp rdi, r12
ja 0x140085039
mov rcx, qword [rsp + 0x58]
and r8, r10
xor edx, edx
add rcx, r11
add r8, r11
lea r11, [rcx + r14]
lea r10, [r11 - 4]
cmp rcx, r10
ja 0x140084fa5
mov r9, r8
sub r9, rcx
nop dword [rax + rax]
mov eax, dword [rcx + r9]
cmp dword [rcx], eax
jne 0x140084fa5
add rcx, 4
add rdx, 4
cmp rcx, r10
jbe 0x140084f90
cmp rcx, r11
jae 0x140084fc4
nop word [rax + rax]
movzx eax, byte [rcx]
cmp byte [rdx + r8], al
jne 0x140084fc4
inc rcx
inc rdx
cmp rcx, r11
jb 0x140084fb0
cmp rdx, 4
jb 0x14008502b
cmp rdx, qword [rsp + 0x20]
jbe 0x14008502b
mov rcx, rdi
xor eax, eax
shr rcx, 1
je 0x140084fe7
nop dword [rax + rax]
inc eax
shr rcx, 1
jne 0x140084fe0
mov r10, qword [rbp + 0x88]
mov r11, qword [rbp + 0x80]
imul eax, eax, 0x1e
mov rcx, rdx
imul rcx, rcx, 0x87
sub rcx, rax
add rcx, 0x780
cmp rcx, qword [rsp + 8]
jbe 0x140085039
mov qword [rsp + 0x20], rdx
mov qword [rsp + 0x30], rdi
mov qword [rsp + 8], rcx
mov dword [rbp + 0x10], 0
jmp 0x140085039
mov r11, qword [rbp + 0x80]
mov r10, qword [rbp + 0x88]
mov rdi, qword [rbp + 0xa0]
inc rbx
inc rsi
cmp rbx, r13
jbe 0x140084ee0
lea rax, [r13 + 1]
mov qword [rdi + 0xa0], rax
mov r8, qword [rbp + 0x98]
mov rcx, qword [rsp + 0x60]
mov rax, qword [r8 + 0x58]
add rcx, qword [r8 + 0x60]
mov rdx, qword [r8 + 0x48]
mov qword [rsp + 0x28], rdx
mov qword [rbp - 0x38], rcx
mov qword [rsp + 0x78], rax
test rax, rax
je 0x1400853ed
mov r14, qword [rsp + 0x58]
lea rax, [r8 + 0x68]
add r14, qword [rbp + 0x80]
mov qword [rsp + 0x48], rax
nop
mov rbx, qword [rax]
mov r15, qword [rsp + 8]
mov r13, qword [rsp + 0x20]
mov r8d, dword [rbx + 0x10]
mov r10d, dword [rbx + 0x14]
mov rsi, rcx
sub rsi, qword [rax + 0x100]
mov eax, dword [rbx + 8]
or rdx, 0xffffffffffffffff
mov qword [rbp - 0x58], rax
xor r12d, r12d
mov ecx, r10d
mov edi, 0x40
mov qword [rsp], rsi
sub rsi, rax
mov eax, 1
shl eax, cl
mov ecx, r8d
lea r9, [rbx + rax*4 + 0x18]
mov eax, 1
shl eax, cl
mov ecx, edi
sub ecx, dword [rbx + 0xc]
lea r11, [r9 + rax*2]
movabs rax, 0x1fe35a7bd3579bd3
shr rdx, cl
mov ecx, edi
and rdx, qword [r14]
sub ecx, r8d
imul rdx, rax
shr rdx, cl
mov ecx, 0x20
mov r8d, edx
sub ecx, r10d
mov edx, 0xffffffff
movzx r9d, word [r9 + r8*2]
shr rdx, cl
and rdx, r8
mov eax, dword [rbx + rdx*4 + 0x18]
add eax, r9d
cmp r9d, 0xffff
sete r12b
cmp dword [rbx], 0xdebcede0
lea rcx, [r11 + rax*4]
mov eax, dword [rbx + 4]
mov dword [rsp + 0x68], r12d
mov qword [rsp + 0x18], rcx
lea r12, [r11 + rax*4]
mov qword [rsp + 0x60], r12
je 0x14008516f
mov r12, qword [r12]
mov qword [rsp + 0x60], r12
xor ebx, ebx
mov rax, qword [rbp + 0xa8]
movsxd rdi, dword [rax + rbx*4]
mov rax, qword [rsp]
cmp rdi, rsi
jbe 0x140085262
cmp rdi, rax
ja 0x140085262
mov rdx, qword [rbp - 0x58]
sub rax, rdi
xor r8d, r8d
sub rdx, rax
lea r11, [rax + r12]
mov rax, qword [rsp + 0x10]
cmp rdx, rax
mov rcx, r14
cmova rdx, rax
add rdx, r14
lea r10, [rdx - 4]
cmp r14, r10
ja 0x1400851d9
mov r9, r11
sub r9, r14
mov eax, dword [rcx + r9]
cmp dword [rcx], eax
jne 0x1400851d9
add rcx, 4
add r8, 4
cmp rcx, r10
jbe 0x1400851c4
cmp rcx, rdx
jae 0x1400851f4
nop
movzx eax, byte [rcx]
cmp byte [r8 + r11], al
jne 0x1400851f4
inc rcx
inc r8
cmp rcx, rdx
jb 0x1400851e0
cmp r8, 2
jb 0x14008525e
mov r9, r8
imul r9, r9, 0x87
add r9, 0x78f
cmp r15, r9
jae 0x14008525e
test rbx, rbx
je 0x140085233
movzx ecx, bl
mov edx, 0x1ca10
mov rax, 0xffffffffffffffd9
and cl, 0xe
sar rdx, cl
and edx, 0xe
sub rax, rdx
add r9, rax
mov rax, qword [rsp]
cmp r15, r9
jae 0x140085262
cmp r8, r13
mov r15, r9
mov qword [rsp + 0x20], r8
mov dword [rbp + 0x10], 0
mov qword [rsp + 0x30], rdi
mov qword [rsp + 8], r9
cmova r13, r8
jmp 0x140085262
mov rax, qword [rsp]
inc rbx
cmp rbx, 4
jb 0x140085171
mov r12d, dword [rsp + 0x68]
test r12d, r12d
jne 0x1400853c4
mov rsi, qword [rsp + 0x60]
mov rcx, qword [rsp + 0x18]
mov r12, qword [rbp - 0x58]
mov r9, qword [rsp + 0x28]
mov r10, qword [rsp + 0x10]
mov edi, dword [rcx]
add rcx, 4
mov r8, r12
mov edx, edi
and edi, 0x80000000
mov rbx, rax
btr edx, 0x1f
mov qword [rsp + 0x18], rcx
sub r8, rdx
sub rbx, rdx
cmp r8, r10
cmova r8, r10
cmp rbx, r9
ja 0x1400853bc
mov rax, qword [rsp + 0x58]
add rax, r13
cmp rax, qword [rbp + 0x88]
ja 0x1400853a3
cmp r13, r8
jae 0x1400853a3
lea rax, [rdx + r13]
movzx ecx, byte [rax + rsi]
cmp byte [r13 + r14], cl
jne 0x1400853b3
lea r10, [r8 + r14]
lea r11, [rdx + rsi]
xor edx, edx
lea r9, [r10 - 4]
mov rcx, r14
cmp r14, r9
ja 0x14008532a
mov r8, r11
sub r8, r14
mov eax, dword [rcx + r8]
cmp dword [rcx], eax
jne 0x14008532a
add rcx, 4
add rdx, 4
cmp rcx, r9
jbe 0x140085315
cmp rcx, r10
jae 0x140085344
nop
movzx eax, byte [rcx]
cmp byte [rdx + r11], al
jne 0x140085344
inc rcx
inc rdx
cmp rcx, r10
jb 0x140085330
cmp rdx, 4
jb 0x1400853a9
mov rcx, rbx
xor eax, eax
shr rcx, 1
je 0x14008535b
inc eax
shr rcx, 1
jne 0x140085354
mov r9, qword [rsp + 0x28]
mov r10, qword [rsp + 0x10]
imul eax, eax, 0x1e
mov rcx, rdx
imul rcx, rcx, 0x87
sub rcx, rax
mov rax, qword [rsp]
add rcx, 0x780
cmp r15, rcx
jae 0x1400853b7
mov r15, rcx
mov r13, rdx
mov qword [rsp + 0x20], rdx
mov dword [rbp + 0x10], 0
mov qword [rsp + 0x30], rbx
mov qword [rsp + 8], rcx
jmp 0x1400853b7
mov rax, qword [rsp]
jmp 0x1400853bc
mov r9, qword [rsp + 0x28]
mov r10, qword [rsp + 0x10]
mov rax, qword [rsp]
mov rcx, qword [rsp + 0x18]
test edi, edi
je 0x140085295
mov rax, qword [rsp + 0x48]
mov rcx, qword [rbp - 0x38]
add rax, 8
dec qword [rsp + 0x78]
mov qword [rsp + 0x48], rax
jne 0x1400850a0
mov r14, qword [rsp + 0x10]
mov r8, qword [rbp + 0x98]
mov rax, qword [rsp + 0x38]
mov rcx, qword [rsp + 8]
add rax, 0xaf
cmp rcx, rax
jb 0x140085459
mov r13, qword [rsp + 0x50]
mov r15, qword [rsp + 0x20]
mov r11, qword [rsp + 0x30]
mov rax, qword [rbp + 0x10]
inc qword [rsp + 0x40]
mov qword [rsp + 0x38], rcx
mov ecx, dword [rsp + 0x70]
mov qword [rbp + 0x78], r13
mov qword [rbp - 0x80], r15
inc ecx
mov qword [rbp - 0x78], r11
mov qword [rbp - 0x68], rax
mov dword [rsp + 0x70], ecx
cmp ecx, 4
jge 0x140085465
lea rax, [r13 + 8]
cmp rax, qword [rbp - 0x48]
jae 0x140085465
mov rbx, qword [rbp + 0xa0]
dec r14
xor esi, esi
jmp 0x1400848b9
mov r13, qword [rbp + 0x78]
mov r15, qword [rbp - 0x80]
mov r11, qword [rbp - 0x78]
mov rax, qword [rbp - 0x20]
mov rdx, qword [rbp - 0x40]
mov r10, qword [rbp + 0xa8]
lea r12, [rax + r15*2]
mov rax, qword [rbp - 0x50]
mov r9, rdx
add rax, r13
add r12, r13
cmp rax, rdx
mov qword [rsp + 0x78], r12
cmovb r9, rax
add r9, qword [rbp - 0x30]
cmp r11, r9
ja 0x140085518
movsxd rax, dword [r10]
movsxd r8, dword [r10 + 4]
lea rcx, [r11 + 3]
mov rdx, rcx
sub rcx, r8
sub rdx, rax
cmp r11, rax
jne 0x1400854b8
xor r8d, r8d
jmp 0x14008551c
cmp r11, r8
jne 0x1400854c5
mov r8d, 1
jmp 0x14008551c
cmp rdx, 7
jae 0x1400854e0
movzx ecx, dl
mov r8d, 0x9750468
shl cl, 2
sar r8, cl
and r8d, 0xf
jmp 0x14008551c
cmp rcx, 7
jae 0x1400854f8
shl cl, 2
mov r8d, 0xfdb1ace
sar r8, cl
and r8d, 0xf
jmp 0x14008551c
movsxd rax, dword [r10 + 8]
cmp r11, rax
jne 0x140085509
mov r8d, 2
jmp 0x14008551c
movsxd rax, dword [r10 + 0xc]
mov r8d, 3
cmp r11, rax
je 0x14008551c
lea r8, [r11 + 0xf]
mov r12, qword [rbp + 0xa0]
cmp r11, r9
ja 0x1400855b7
test r8, r8
je 0x1400855b7
mov eax, dword [r10 + 8]
mov edx, dword [r10]
mov ecx, dword [rbp - 0x78]
mov dword [r10 + 0xc], eax
mov eax, dword [r10 + 4]
mov dword [r10], ecx
mov dword [r10 + 8], eax
mov dword [r10 + 4], edx
mov r9d, dword [r12 + 0x70]
cmp r9d, 4
jle 0x1400855b7
lea eax, [rcx - 1]
mov dword [r10 + 0x10], eax
lea eax, [rcx + 1]
mov dword [r10 + 0x14], eax
lea eax, [rcx - 2]
mov dword [r10 + 0x18], eax
lea eax, [rcx + 2]
mov dword [r10 + 0x1c], eax
lea eax, [rcx - 3]
mov dword [r10 + 0x20], eax
lea eax, [rcx + 3]
mov dword [r10 + 0x24], eax
cmp r9d, 0xa
jle 0x1400855b7
lea eax, [rdx - 1]
mov dword [r10 + 0x28], eax
lea eax, [rdx + 1]
mov dword [r10 + 0x2c], eax
lea eax, [rdx - 2]
mov dword [r10 + 0x30], eax
lea eax, [rdx + 2]
mov dword [r10 + 0x34], eax
lea eax, [rdx - 3]
mov dword [r10 + 0x38], eax
lea eax, [rdx + 3]
mov dword [r10 + 0x3c], eax
movzx eax, byte [rbp - 0x68]
mov r11, qword [rbp + 0xb8]
mov esi, dword [rbp - 0x80]
mov r14, qword [rsp + 0x40]
shl eax, 0x19
or eax, esi
mov dword [r11], r14d
mov dword [r11 + 4], eax
mov rax, qword [rbp + 0x98]
mov edi, dword [rax + 0x3c]
mov ebx, dword [rax + 0x38]
lea rax, [rdi + 0x10]
cmp r8, rax
jae 0x1400855fe
mov word [r11 + 0xe], r8w
mov dword [r11 + 8], 0
jmp 0x140085698
lea ecx, [rbx + 2]
mov edx, 1
shl rdx, cl
xor ecx, ecx
sub rdx, rdi
lea r11, [rdx + r8 - 0x10]
mov rax, r11
shr rax, 1
je 0x140085627
nop dword [rax + rax]
inc ecx
shr rax, 1
jne 0x140085620
lea eax, [rcx - 1]
mov r9, r11
mov ecx, eax
mov r8d, eax
mov r10d, eax
shr r9, cl
sub r8, rbx
mov rcx, rbx
lea edx, [r8 - 1]
and r9d, 1
shl r8w, 0xa
add dx, dx
mov eax, 1
shl ax, cl
add dx, r9w
shl dx, cl
dec ax
mov ecx, r10d
and ax, r11w
add dx, ax
lea rax, [r9 + 2]
add dx, di
shl rax, cl
mov rcx, rbx
add dx, 0x10
sub r11, rax
or dx, r8w
mov r8, qword [rbp + 0xb8]
shr r11, cl
mov word [r8 + 0xe], dx
mov dword [r8 + 8], r11d
mov r11, r8
mov eax, 0x3ff
mov r10d, 0
test word [r11 + 0xe], ax
mov eax, dword [rbp - 0x68]
lea ecx, [rsi + rax]
sete r10b
movsxd r8, ecx
cmp r14, 6
jae 0x1400856c9
movzx r9d, r14w
mov eax, reloc.WS2_32.dll_socket
jmp 0x14008574c
cmp r14, 0x82
jae 0x1400856fd
lea r9, [r14 - 2]
xor ecx, ecx
mov rax, r9
shr rax, 1
je 0x1400856e7
inc ecx
shr rax, 1
jne 0x1400856e0
dec ecx
mov eax, reloc.WS2_32.dll_socket
shr r9, cl
inc cx
add cx, cx
add r9w, cx
jmp 0x14008574c
cmp r14, 0x842
jae 0x140085723
lea rcx, [r14 - 0x42]
xor eax, eax
shr rcx, 1
je 0x140085718
inc eax
shr rcx, 1
jne 0x140085711
lea r9d, [rax + 0xa]
mov eax, reloc.WS2_32.dll_socket
jmp 0x14008574c
mov eax, reloc.WS2_32.dll_socket
cmp r14, 0x1842
jae 0x140085737
lea r9d, [rax - 2]
jmp 0x14008574c
cmp r14, 0x5842
jae 0x140085748
mov r9d, reloc.WS2_32.dll_shutdown
jmp 0x14008574c
movzx r9d, ax
cmp r8, 0xa
jae 0x140085759
sub r8w, 2
jmp 0x1400857b1
cmp r8, 0x86
jae 0x140085789
add r8, 0xfffffffffffffffa
xor ecx, ecx
mov rax, r8
shr rax, 1
je 0x140085777
inc ecx
shr rax, 1
jne 0x140085770
dec ecx
shr r8, cl
add cx, 2
add cx, cx
add r8w, cx
jmp 0x1400857b1
cmp r8, 0x846
jae 0x1400857ad
lea rcx, [r8 - 0x46]
xor eax, eax
shr rcx, 1
je 0x1400857a7
nop dword [rax]
inc eax
shr rcx, 1
jne 0x1400857a0
lea r8d, [rax + 0xc]
jmp 0x1400857b1
movzx r8d, ax
movzx edx, r9w
movzx eax, r8w
and dx, 7
and ax, 7
shl dx, 3
or dx, ax
test r10d, r10d
je 0x1400857e8
cmp r9w, 8
jae 0x1400857e8
cmp r8w, 0x10
jae 0x1400857e8
cmp r8w, 8
jb 0x14008581c
or dx, 0x40
jmp 0x14008581c
movzx eax, r9w
shr eax, 3
lea ecx, [rax + rax*2]
movzx eax, r8w
mov r8d, 0xc0
shr eax, 3
add ecx, eax
mov eax, 0x520d40
add ecx, ecx
shr eax, cl
add cx, 2
shl cx, 5
and ax, r8w
add ax, cx
or dx, ax
mov rax, qword [rbp + 0xc8]
mov r8, qword [rbp - 0x78]
mov word [r11 + 0xc], dx
add qword [rax], r14
mov rax, qword [rbp - 0x28]
add r11, 0x10
lea rdi, [r15 + r13]
mov rbx, rax
mov qword [rbp + 0xb8], r11
cmp rdi, rax
mov rax, r15
mov qword [rsp + 0x40], 0
cmovb rbx, rdi
shr rax, 2
lea r11, [r13 + 2]
mov qword [rbp + 0x78], rdi
cmp r8, rax
jae 0x140085888
lea rax, [r8*4]
sub r15, rax
add r15, r13
cmp r11, r15
cmova r15, r11
mov r11, r15
cmp rbx, r15
cmovb r11, rbx
cmp r11, rbx
jae 0x1400858fd
mov rdi, qword [rbp + 0x88]
nop word [rax + rax]
mov rcx, qword [r12 + 0x80]
mov rdx, qword [rbp + 0x80]
mov r10, qword [r12 + 0x88]
mov rax, r11
and rax, rdi
mov r9, qword [rax + rdx]
mov edx, dword [r12 + 0x68]
imul r9, qword [r12 + 0x60]
shr r9, 0x31
lea r8, [rcx + r9*2]
mov ecx, dword [r12 + 0x6c]
movzx eax, word [r8]
shl r9, cl
and rdx, rax
inc ax
add rdx, r9
mov word [r8], ax
mov dword [r10 + rdx*4], r11d
inc r11
cmp r11, rbx
jb 0x1400858a0
mov rdi, qword [rbp + 0x78]
mov r8, qword [rsp + 0x40]
mov rsi, rdi
mov qword [rbp + 0x78], rdi
mov r14, qword [rbp + 0x88]
mov r15, qword [rbp + 0x80]
mov rbx, qword [rbp - 0x48]
mov rdi, qword [rbp + 0xa0]
mov r10, qword [rbp + 0x98]
mov r11, qword [rbp - 0x40]
mov rcx, qword [rbp - 0x50]
lea rax, [rsi + 8]
cmp rax, rbx
jb 0x140083d60
mov r13, qword [rsp + 0x128]
mov r12, qword [rsp + 0x130]
mov rax, qword [rbp + 0xb0]
mov rcx, qword [rbp + 0xb8]
sub rbx, rsi
sub rcx, qword [rbp - 0x10]
add rbx, r8
mov qword [rax], rbx
mov rax, qword [rbp + 0xc0]
sar rcx, 4
add qword [rax], rcx
add rsp, 0x138
pop r15
pop r14
pop rdi
pop rsi
pop rbx
pop rbp
ret
mov rsi, qword [rbp + 0x78]
mov r8, qword [rsp + 0x40]
mov r12, qword [rsp + 0x78]
inc rsi
inc r8
mov qword [rsp + 0x40], r8
mov qword [rbp + 0x78], rsi
mov qword [rbp + 0x70], rsi
cmp rsi, r12
jbe 0x140085909
mov rax, qword [rbp - 0x20]
mov r11, qword [rbp - 0x48]
lea rax, [r12 + rax*4]
sub r11, 7
cmp rsi, rax
jbe 0x140085a5d
mov r14, qword [rbp + 0x88]
mov r15, qword [rbp + 0x80]
lea rax, [rsi + 0x10]
cmp rax, r11
cmovb r11, rax
cmp rsi, r11
jae 0x140085917
mov rax, r11
sub rax, rsi
dec rax
shr rax, 2
lea r8, [r8 + rax*4 + 4]
mov qword [rsp + 0x40], r8
mov rcx, qword [rbx + 0x80]
mov edx, dword [rbx + 0x68]
mov r10, qword [rbx + 0x88]
mov rax, rsi
and rax, r14
mov r9, qword [rax + r15]
imul r9, qword [rbx + 0x60]
shr r9, 0x31
lea r8, [rcx + r9*2]
mov ecx, dword [rbx + 0x6c]
movzx eax, word [r8]
shl r9, cl
and rdx, rax
inc ax
add rdx, r9
mov word [r8], ax
mov dword [r10 + rdx*4], esi
add rsi, 4
cmp rsi, r11
jb 0x140085a03
mov r8, qword [rsp + 0x40]
mov qword [rbp + 0x78], rsi
jmp 0x140085917
lea rax, [rsi + 8]
cmp rax, r11
cmovb r11, rax
cmp rsi, r11
jae 0x140085909
mov r14, qword [rbp + 0x88]
mov r15, qword [rbp + 0x80]
mov rax, r11
sub rax, rsi
dec rax
shr rax, 1
lea r8, [r8 + rax*2 + 2]
mov qword [rsp + 0x40], r8
mov rcx, qword [rbx + 0x80]
mov edx, dword [rbx + 0x68]
mov r10, qword [rbx + 0x88]
mov rax, rsi
and rax, r14
mov r9, qword [rax + r15]
imul r9, qword [rbx + 0x60]
shr r9, 0x31
lea r8, [rcx + r9*2]
mov ecx, dword [rbx + 0x6c]
movzx eax, word [r8]
shl r9, cl
and rdx, rax
inc ax
add rdx, r9
mov word [r8], ax
mov dword [r10 + rdx*4], esi
add rsi, 2
cmp rsi, r11
jb 0x140085a95
mov r8, qword [rsp + 0x40]
mov qword [rbp + 0x78], rsi
jmp 0x140085917