Function at 0x14007b750
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 rsi, qword [rbp + 0xb0]
mov rax, rcx
mov rbx, rdx
mov rdx, qword [rbp + 0xb8]
mov rsi, qword [rsi]
mov r14, r9
mov r9, qword [rbp + 0x98]
mov r10d, 1
lea r11, [rax + rbx]
mov ecx, dword [r9 + 8]
mov r15, r8
mov qword [rbp - 0x18], rdx
shl r10, cl
mov rcx, qword [r9 + 0x10]
mov qword [rsp + 0x60], rsi
sub r10, 0x10
mov qword [rbp - 0x48], r11
mov qword [rbp - 0x50], rcx
mov qword [rbp - 0x30], r10
cmp rax, 8
jb 0x14007b7d5
lea rax, [r11 - 7]
mov qword [rbp - 0x28], rax
jmp 0x14007b7d9
mov qword [rbp - 0x28], rbx
cmp dword [r9 + 4], 9
mov rdi, qword [rbp + 0xa0]
mov edx, 0x40
mov eax, 0x200
cmovl eax, edx
mov edx, dword [rdi + 0x70]
mov qword [rbp - 0x20], rax
add rax, rbx
mov qword [rsp + 0x58], rax
mov rax, qword [r9 + 0x60]
mov qword [rbp - 0x40], rax
cmp edx, 4
jle 0x14007b879
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 0x14007b875
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]
lea rax, [rbx + 8]
cmp rax, r11
jae 0x14007d0da
mov qword [rsp + 0x130], r12
mov qword [rsp + 0x128], r13
nop word [rax + rax]
lea rax, [rcx + rbx]
mov r12, r11
mov r8, r10
sub r12, rbx
cmp rbx, r10
mov rcx, r10
cmovb r8, rbx
cmp rax, r10
mov qword [rsp + 0x18], r12
cmovb rcx, rax
mov qword [rsp + 0x10], r8
mov qword [rsp + 0x30], rcx
xor ecx, ecx
mov dword [rbp - 0x80], ecx
mov byte [rbp + 0x70], cl
cmp dword [r9 + 0x270], ecx
je 0x14007b934
cmp rbx, 1
jb 0x14007b8f2
lea rax, [rbx - 1]
and rax, r14
movzx r10d, byte [rax + r15]
jmp 0x14007b8f5
xor r10b, r10b
mov byte [rbp + 0x70], r10b
cmp rbx, 2
jb 0x14007b90b
lea rax, [rbx - 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, r10b
movzx ecx, byte [rax + rcx]
or rdx, rcx
movzx ecx, byte [rdx + r9 + 0x275]
mov dword [rbp - 0x80], ecx
movsxd rsi, dword [rdi + 0x70]
mov r13, qword [rdi + 0x88]
xor eax, eax
mov qword [rbp - 0x68], rax
mov rax, qword [r9 + 0x48]
mov r11, rbx
mov qword [rsp + 8], rax
movsxd rax, ecx
and r11, r14
mov rcx, qword [r9 + rax*8 + 0x2b8]
mov r9, qword [rdi + 0x80]
mov eax, 0x7e4
xor r10d, r10d
mov qword [rsp + 0x38], rax
xor eax, eax
xor ebx, ebx
mov qword [rsp + 0x48], 0x7e4
mov qword [rsp + 0x40], rcx
mov qword [rbp - 0x70], rax
mov dword [rbp - 0x58], eax
mov qword [rsp + 0x70], r9
mov qword [rsp + 0x50], r13
mov qword [rsp], r11
mov qword [rsp + 0x20], r10
test rsi, rsi
je 0x14007bb04
mov r13, qword [rbp + 0xa8]
mov rax, qword [rbp + 0x78]
nop word [rax + rax]
movsxd rdi, dword [r13 + rbx*4]
mov rdx, rax
sub rdx, rdi
cmp rdx, rax
jae 0x14007bae7
cmp rdi, r8
ja 0x14007bae7
lea rax, [r10 + r11]
and rdx, r14
cmp rax, r14
ja 0x14007bae3
lea rax, [rdx + r10]
cmp rax, r14
ja 0x14007bae3
movzx eax, byte [rax + r15]
lea rcx, [r11 + r15]
cmp byte [rcx + r10], al
jne 0x14007bae3
lea r10, [rcx + r12]
xor r8d, r8d
lea r11, [rdx + r15]
lea r9, [r10 - 4]
cmp rcx, r9
ja 0x14007ba3b
mov rdx, r11
sub rdx, rcx
mov eax, dword [rcx + rdx]
cmp dword [rcx], eax
jne 0x14007ba3b
add rcx, 4
add r8, 4
cmp rcx, r9
jbe 0x14007ba27
cmp rcx, r10
jae 0x14007ba54
movzx eax, byte [rcx]
cmp byte [r8 + r11], al
jne 0x14007ba54
inc rcx
inc r8
cmp rcx, r10
jb 0x14007ba40
cmp r8, 3
jae 0x14007ba65
cmp r8, 2
jne 0x14007bad5
cmp rbx, r8
jae 0x14007bad5
mov r11, qword [rsp + 0x38]
mov r9, r8
imul r9, r9, 0x87
add r9, 0x78f
cmp r11, r9
jae 0x14007bad5
test rbx, rbx
je 0x14007baa3
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]
cmp r11, r9
mov r11, qword [rsp]
jae 0x14007bb46
mov r10, r8
mov qword [rsp + 0x20], r8
mov qword [rbp - 0x70], r8
mov r8, qword [rsp + 0x10]
mov qword [rsp + 0x38], r9
mov qword [rbp - 0x68], rdi
mov qword [rsp + 0x48], r9
jmp 0x14007bae7
mov r10, qword [rsp + 0x20]
mov r8, qword [rsp + 0x10]
mov r11, qword [rsp]
mov rax, qword [rbp + 0x78]
inc rbx
cmp rbx, rsi
jb 0x14007b9c0
mov r13, qword [rsp + 0x50]
mov r9, qword [rsp + 0x70]
mov rdi, qword [rbp + 0xa0]
mov ecx, dword [rdi + 0x6c]
mov r12, qword [r11 + r15]
lea rdx, [r11 + r15]
imul r12, qword [rdi + 0x60]
shr r12, 0x31
mov qword [rsp + 0x28], rdx
mov rax, r12
mov qword [rsp + 0x50], r12
shl rax, cl
movzx ecx, word [r9 + r12*2]
lea r15, [r13 + rax*4]
mov rax, qword [rdi + 0x58]
mov qword [rbp - 0x78], rcx
cmp rcx, rax
jbe 0x14007bb52
mov esi, ecx
sub rsi, rax
jmp 0x14007bb54
mov r10, qword [rsp + 0x20]
mov r8, qword [rsp + 0x10]
jmp 0x14007bae7
xor esi, esi
mov r14d, dword [rdx]
mov rdi, rcx
cmp rcx, rsi
jbe 0x14007bc9e
mov rax, qword [rbp + 0xa0]
mov r12, rdx
mov r13d, dword [rax + 0x68]
mov rbx, qword [rbp + 0x78]
dec rdi
mov rax, rdi
and rax, r13
mov edx, dword [r15 + rax*4]
sub rbx, rdx
cmp rbx, r8
ja 0x14007bc8b
mov rcx, qword [rbp + 0x88]
lea rax, [r10 + r11]
and rdx, rcx
cmp rax, rcx
ja 0x14007bc82
lea rax, [rdx + r10]
cmp rax, rcx
ja 0x14007bc82
mov r9, qword [rbp + 0x80]
movzx eax, byte [rax + r9]
cmp byte [r12 + r10], al
jne 0x14007bc82
cmp r14d, dword [rdx + r9]
jne 0x14007bc82
mov rax, qword [rsp + 0x18]
lea rcx, [r12 + 4]
lea r11, [rdx + r9 + 4]
lea r10, [rcx + rax - 4]
xor edx, edx
lea r9, [r10 - 4]
cmp rcx, r9
ja 0x14007bc11
mov r8, r11
sub r8, rcx
mov eax, dword [rcx + r8]
cmp dword [rcx], eax
jne 0x14007bc0c
add rcx, 4
add rdx, 4
cmp rcx, r9
jbe 0x14007bbf7
mov r8, qword [rsp + 0x10]
cmp rcx, r10
jae 0x14007bc2a
movzx eax, byte [rcx]
cmp byte [rdx + r11], al
jne 0x14007bc2a
inc rcx
inc rdx
cmp rcx, r10
jb 0x14007bc16
mov rcx, rbx
add rdx, 4
xor eax, eax
shr rcx, 1
je 0x14007bc3f
inc eax
shr rcx, 1
jne 0x14007bc38
mov r11, qword [rsp]
imul eax, eax, 0x1e
mov rcx, rdx
imul rcx, rcx, 0x87
sub rcx, rax
add rcx, 0x780
cmp qword [rsp + 0x38], rcx
jae 0x14007bc7d
mov qword [rsp + 0x38], rcx
mov r10, rdx
mov qword [rsp + 0x20], rdx
mov qword [rbp - 0x70], rdx
mov qword [rbp - 0x68], rbx
mov qword [rsp + 0x48], rcx
jmp 0x14007bc82
mov r10, qword [rsp + 0x20]
cmp rdi, rsi
ja 0x14007bb71
mov r12, qword [rsp + 0x50]
mov rcx, qword [rbp - 0x78]
mov rdx, qword [rsp + 0x28]
mov r9, qword [rsp + 0x70]
mov r8, qword [rbp + 0xa0]
mov rdi, qword [rsp + 0x48]
mov eax, dword [r8 + 0x68]
and rax, rcx
mov rcx, qword [rbp + 0x78]
mov dword [r15 + rax*4], ecx
inc word [r9 + r12*2]
cmp rdi, 0x7e4
jne 0x14007be5b
mov r12, qword [r8 + 0x78]
mov r13, qword [r12 + 0x28]
mov rax, r13
shr rax, 7
cmp qword [r12 + 0x30], rax
jb 0x14007be5b
mov edi, dword [rdx]
mov r15, qword [rsp + 0x40]
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 0x14007be45
mov rax, qword [r15 + 0x18]
movzx r11d, cl
movzx esi, word [rax + rdi*2]
cmp r11, qword [rsp + 0x18]
ja 0x14007be45
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 0x14007bd89
sub rdx, rcx
nop dword [rax + rax]
mov eax, dword [rcx + rdx]
cmp dword [rcx], eax
jne 0x14007bd84
add rcx, 4
add r9, 4
cmp rcx, r8
jbe 0x14007bd70
mov rdx, qword [rsp + 0x28]
cmp rcx, r10
jae 0x14007bda4
nop
movzx eax, byte [rcx]
cmp byte [rdx + r9], al
jne 0x14007bda4
inc rcx
inc r9
cmp rcx, r10
jb 0x14007bd90
mov eax, dword [r15 + 0xc]
add rax, r9
cmp rax, r11
jbe 0x14007be45
test r9, r9
je 0x14007be45
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 - 0x40]
shl rdx, cl
add rdx, rsi
add rdx, qword [rsp + 0x30]
lea r8, [rdx + rax + 1]
cmp r8, qword [rsp + 8]
ja 0x14007be45
mov rcx, r8
xor eax, eax
shr rcx, 1
je 0x14007be0e
inc eax
shr rcx, 1
jne 0x14007be07
imul eax, eax, 0x1e
mov rcx, r9
imul rcx, rcx, 0x87
sub rcx, rax
add rcx, 0x780
cmp rcx, qword [rsp + 0x48]
jb 0x14007be45
sub r11d, r9d
inc qword [r12 + 0x30]
mov qword [rbp - 0x70], r9
mov dword [rbp - 0x58], r11d
mov qword [rbp - 0x68], r8
mov qword [rsp + 0x48], rcx
mov rdx, qword [rsp + 0x28]
inc rdi
dec r14
jne 0x14007bd10
mov rdi, qword [rsp + 0x48]
mov rbx, qword [rbp + 0x98]
mov rcx, qword [rsp + 0x30]
mov rax, qword [rbx + 0x48]
add rcx, qword [rbx + 0x60]
mov qword [rsp + 0x20], rax
mov rax, qword [rbx + 0x58]
mov qword [rsp + 0x50], rcx
mov qword [rsp + 0x28], rax
test rax, rax
je 0x14007c1ff
mov r14, qword [rsp]
lea rax, [rbx + 0x68]
add r14, qword [rbp + 0x80]
mov qword [rsp + 0x38], rax
nop
mov rbx, qword [rax]
mov r13, qword [rbp - 0x70]
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 + 0x30], 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 + 0x68], r12d
mov qword [rsp + 0x10], rcx
lea r12, [r11 + rax*4]
mov qword [rsp + 0x70], r12
je 0x14007bf6e
mov r12, qword [r12]
mov qword [rsp + 0x70], r12
xor ebx, ebx
mov rax, qword [rbp + 0xa8]
movsxd rdi, dword [rax + rbx*4]
mov rax, qword [rsp + 8]
cmp rdi, rsi
jbe 0x14007c062
cmp rdi, rax
ja 0x14007c062
mov rdx, qword [rsp + 0x30]
sub rax, rdi
xor r8d, r8d
sub rdx, rax
lea r11, [rax + r12]
mov rax, qword [rsp + 0x18]
cmp rdx, rax
mov rcx, r14
cmova rdx, rax
add rdx, r14
lea r10, [rdx - 4]
cmp r14, r10
ja 0x14007bfda
mov r9, r11
sub r9, r14
mov eax, dword [rcx + r9]
cmp dword [rcx], eax
jne 0x14007bfda
add rcx, 4
add r8, 4
cmp rcx, r10
jbe 0x14007bfc5
cmp rcx, rdx
jae 0x14007bff4
nop
movzx eax, byte [rcx]
cmp byte [r8 + r11], al
jne 0x14007bff4
inc rcx
inc r8
cmp rcx, rdx
jb 0x14007bfe0
cmp r8, 2
jb 0x14007c05d
mov r9, r8
imul r9, r9, 0x87
add r9, 0x78f
cmp r15, r9
jae 0x14007c05d
test rbx, rbx
je 0x14007c033
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 0x14007c062
cmp r8, r13
mov r15, r9
mov qword [rbp - 0x70], r8
mov dword [rbp - 0x58], 0
mov qword [rbp - 0x68], rdi
mov qword [rsp + 0x48], r9
cmova r13, r8
jmp 0x14007c062
mov rax, qword [rsp + 8]
inc rbx
cmp rbx, 4
jb 0x14007bf70
mov r12d, dword [rsp + 0x68]
test r12d, r12d
jne 0x14007c1d5
mov rsi, qword [rsp + 0x70]
mov rcx, qword [rsp + 0x10]
mov r12, qword [rsp + 0x30]
mov r9, qword [rsp + 0x18]
mov r10, qword [rsp + 0x20]
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 + 0x10], rcx
sub r8, rdx
sub rbx, rdx
cmp r8, r9
cmova r8, r9
cmp rbx, r10
ja 0x14007c1cd
mov rax, qword [rsp]
add rax, r13
cmp rax, qword [rbp + 0x88]
ja 0x14007c1b2
cmp r13, r8
jae 0x14007c1b2
lea rax, [rdx + r13]
movzx ecx, byte [rax + rsi]
cmp byte [r13 + r14], cl
jne 0x14007c1c3
lea r10, [r8 + r14]
lea r11, [rdx + rsi]
xor edx, edx
lea r9, [r10 - 4]
mov rcx, r14
cmp r14, r9
ja 0x14007c135
mov r8, r11
sub r8, r14
nop
mov eax, dword [rcx + r8]
cmp dword [rcx], eax
jne 0x14007c135
add rcx, 4
add rdx, 4
cmp rcx, r9
jbe 0x14007c120
cmp rcx, r10
jae 0x14007c154
nop word [rax + rax]
movzx eax, byte [rcx]
cmp byte [rdx + r11], al
jne 0x14007c154
inc rcx
inc rdx
cmp rcx, r10
jb 0x14007c140
cmp rdx, 4
jb 0x14007c1b9
mov rcx, rbx
xor eax, eax
shr rcx, 1
je 0x14007c16b
inc eax
shr rcx, 1
jne 0x14007c164
mov r9, qword [rsp + 0x18]
mov r10, qword [rsp + 0x20]
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 0x14007c1c8
mov r15, rcx
mov r13, rdx
mov qword [rbp - 0x70], rdx
mov dword [rbp - 0x58], 0
mov qword [rbp - 0x68], rbx
mov qword [rsp + 0x48], rcx
jmp 0x14007c1c8
mov rax, qword [rsp + 8]
jmp 0x14007c1cd
mov r9, qword [rsp + 0x18]
mov r10, qword [rsp + 0x20]
mov rax, qword [rsp + 8]
mov rcx, qword [rsp + 0x10]
test edi, edi
je 0x14007c0a0
mov rax, qword [rsp + 0x38]
mov rcx, qword [rsp + 0x50]
mov rdi, qword [rsp + 0x48]
add rax, 8
dec qword [rsp + 0x28]
mov qword [rsp + 0x38], rax
jne 0x14007bea0
mov rbx, qword [rbp + 0x98]
cmp qword [rsp + 0x48], 0x7e4
jbe 0x14007d113
mov r14, qword [rsp + 0x18]
mov r13, qword [rbp + 0x78]
xor edi, edi
dec r14
mov dword [rsp + 0x68], edi
cmp dword [rbx + 4], 5
mov qword [rsp + 0x18], r14
jge 0x14007c23e
mov rax, qword [rbp - 0x70]
mov r10, r14
dec rax
cmp rax, r14
cmovb r10, rax
jmp 0x14007c241
mov r10, rdi
mov rdx, qword [rbp - 0x30]
mov rax, qword [rbp - 0x50]
mov r15, qword [rbp + 0x80]
lea r12, [r13 + 1]
lea rax, [rax + r13 + 1]
mov r8, rdx
cmp r12, rdx
mov rcx, rdx
mov r11d, 0x7e4
cmovb r8, r12
cmp rax, rdx
mov qword [rsp], r10
cmovb rcx, rax
cmp dword [rbx + 0x270], 0
mov qword [rsp + 0x28], rdi
mov qword [rsp + 0x50], rcx
mov qword [rsp + 8], r11
mov qword [rsp + 0x70], r12
mov qword [rsp + 0x78], r8
je 0x14007c2d6
movzx ecx, byte [rbp + 0x70]
mov rax, r13
and rax, qword [rbp + 0x88]
movzx r9d, byte [rax + r15]
mov eax, ecx
mov rcx, qword [rbp + 0x90]
movzx edx, byte [rax + rcx + 0x100]
movzx ecx, byte [r9 + rcx]
mov byte [rbp + 0x70], r9b
or rdx, rcx
movzx eax, byte [rdx + rbx + 0x275]
mov dword [rbp - 0x80], eax
jmp 0x14007c2d9
mov eax, dword [rbp - 0x80]
mov rdx, qword [rbp + 0xa0]
cdqe
mov qword [rsp + 0x10], rdi
mov rcx, qword [rbx + rax*8 + 0x2b8]
movsxd rsi, dword [rdx + 0x70]
mov r9, qword [rdx + 0x80]
mov r13, qword [rdx + 0x88]
mov qword [rbp - 0x38], rcx
mov rcx, qword [rbp + 0x88]
mov rax, r12
mov qword [rbp - 0x78], r9
mov qword [rsp + 0x58], r13
and rax, rcx
mov dword [rbp + 0x10], edi
mov rbx, rdi
mov qword [rsp + 0x38], rax
mov rax, r11
mov qword [rsp + 0x40], rax
test rsi, rsi
je 0x14007c4a2
mov r13, qword [rsp + 0x38]
mov rax, qword [rbp + 0xa8]
movsxd rdi, dword [rax + rbx*4]
mov rdx, r12
sub rdx, rdi
cmp rdx, r12
jae 0x14007c48b
cmp rdi, r8
ja 0x14007c48b
lea rax, [r10 + r13]
and rdx, rcx
cmp rax, rcx
ja 0x14007c484
lea rax, [rdx + r10]
cmp rax, rcx
ja 0x14007c484
movzx eax, byte [rax + r15]
lea rcx, [r13 + r15]
cmp byte [r10 + rcx], al
jne 0x14007c47d
lea r10, [rcx + r14]
xor r8d, r8d
lea r11, [rdx + r15]
lea r9, [r10 - 4]
cmp rcx, r9
ja 0x14007c3c4
mov rdx, r11
sub rdx, rcx
nop word [rax + rax]
mov eax, dword [rcx + rdx]
cmp dword [rcx], eax
jne 0x14007c3c4
add rcx, 4
add r8, 4
cmp rcx, r9
jbe 0x14007c3b0
cmp rcx, r10
jae 0x14007c3e4
nop dword [rax]
movzx eax, byte [rcx]
cmp byte [r8 + r11], al
jne 0x14007c3e4
inc rcx
inc r8
cmp rcx, r10
jb 0x14007c3d0
cmp r8, 3
jae 0x14007c3f5
cmp r8, 2
jne 0x14007c46f
cmp rbx, r8
jae 0x14007c46f
mov r11, qword [rsp + 0x40]
mov r9, r8
imul r9, r9, 0x87
add r9, 0x78f
cmp r11, r9
jae 0x14007c46f
test rbx, rbx
je 0x14007c433
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 0x14007c4ee
mov r10, r8
mov qword [rsp], r8
mov qword [rsp + 0x10], r8
mov r8, qword [rsp + 0x78]
mov qword [rsp + 0x40], r9
mov qword [rsp + 0x28], rdi
mov r11, r9
mov qword [rsp + 8], r9
jmp 0x14007c48b
mov r10, qword [rsp]
mov r8, qword [rsp + 0x78]
mov r11, qword [rsp + 8]
mov rcx, qword [rbp + 0x88]
mov rax, qword [rbp + 0xa8]
inc rbx
cmp rbx, rsi
jb 0x14007c343
mov r13, qword [rsp + 0x58]
mov r9, qword [rbp - 0x78]
xor edi, edi
mov rbx, qword [rbp + 0xa0]
mov rdx, qword [rsp + 0x38]
mov ecx, dword [rbx + 0x6c]
add rdx, r15
mov r12, qword [rdx]
mov qword [rsp + 0x30], rdx
imul r12, qword [rbx + 0x60]
shr r12, 0x31
mov rax, r12
mov qword [rsp + 0x58], r12
shl rax, cl
movzx ecx, word [r9 + r12*2]
lea r15, [r13 + rax*4]
mov rax, qword [rbx + 0x58]
mov qword [rbp - 0x10], rcx
cmp rcx, rax
jbe 0x14007c4fe
mov esi, ecx
sub rsi, rax
jmp 0x14007c501
mov r10, qword [rsp]
mov r8, qword [rsp + 0x78]
mov r11, qword [rsp + 8]
jmp 0x14007c48b
mov rsi, rdi
mov r14d, dword [rdx]
mov rdi, rcx
cmp rcx, rsi
jbe 0x14007c662
mov r13d, dword [rbx + 0x68]
mov r12, rdx
nop word [rax + rax]
mov rbx, qword [rsp + 0x70]
dec rdi
mov rax, rdi
and rax, r13
mov edx, dword [r15 + rax*4]
sub rbx, rdx
cmp rbx, r8
ja 0x14007c649
mov rcx, qword [rbp + 0x88]
mov rax, qword [rsp + 0x38]
add rax, r10
and rdx, rcx
cmp rax, rcx
ja 0x14007c640
lea rax, [rdx + r10]
cmp rax, rcx
ja 0x14007c640
mov r9, qword [rbp + 0x80]
movzx eax, byte [rax + r9]
cmp byte [r10 + r12], al
jne 0x14007c640
cmp r14d, dword [rdx + r9]
jne 0x14007c640
mov rax, qword [rsp + 0x18]
lea rcx, [r12 + 4]
lea r11, [rdx + r9 + 4]
lea r10, [rcx + rax - 4]
xor edx, edx
lea r9, [r10 - 4]
cmp rcx, r9
ja 0x14007c5ca
mov r8, r11
sub r8, rcx
nop dword [rax + rax]
mov eax, dword [rcx + r8]
cmp dword [rcx], eax
jne 0x14007c5c5
add rcx, 4
add rdx, 4
cmp rcx, r9
jbe 0x14007c5b0
mov r8, qword [rsp + 0x78]
cmp rcx, r10
jae 0x14007c5e4
nop
movzx eax, byte [rcx]
cmp byte [rdx + r11], al
jne 0x14007c5e4
inc rcx
inc rdx
cmp rcx, r10
jb 0x14007c5d0
mov rcx, rbx
add rdx, 4
xor eax, eax
shr rcx, 1
je 0x14007c5f9
inc eax
shr rcx, 1
jne 0x14007c5f2
imul eax, eax, 0x1e
mov rcx, rdx
imul rcx, rcx, 0x87
sub rcx, rax
add rcx, 0x780
cmp qword [rsp + 0x40], rcx
jae 0x14007c637
mov qword [rsp + 0x40], rcx
mov r10, rdx
mov qword [rsp], rdx
mov qword [rsp + 0x10], rdx
mov qword [rsp + 0x28], rbx
mov r11, rcx
mov qword [rsp + 8], rcx
jmp 0x14007c640
mov r10, qword [rsp]
mov r11, qword [rsp + 8]
cmp rdi, rsi
ja 0x14007c520
mov r12, qword [rsp + 0x58]
mov rcx, qword [rbp - 0x10]
mov rdx, qword [rsp + 0x30]
mov r9, qword [rbp - 0x78]
mov rbx, qword [rbp + 0xa0]
mov eax, dword [rbx + 0x68]
and rax, rcx
mov rcx, qword [rsp + 0x70]
mov dword [r15 + rax*4], ecx
inc word [r9 + r12*2]
cmp r11, 0x7e4
jne 0x14007c808
mov r12, qword [rbx + 0x78]
mov r13, qword [r12 + 0x28]
mov rax, r13
shr rax, 7
cmp qword [r12 + 0x30], rax
jb 0x14007c808
mov edi, dword [rdx]
mov r15, qword [rbp - 0x38]
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 0x14007c7f7
mov rax, qword [r15 + 0x18]
movzx r11d, cl
movzx esi, word [rax + rdi*2]
cmp r11, qword [rsp + 0x18]
ja 0x14007c7f7
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 0x14007c739
sub rdx, rcx
nop dword [rax + rax]
mov eax, dword [rcx + rdx]
cmp dword [rcx], eax
jne 0x14007c734
add rcx, 4
add r9, 4
cmp rcx, r8
jbe 0x14007c720
mov rdx, qword [rsp + 0x30]
cmp rcx, r10
jae 0x14007c754
nop
movzx eax, byte [rcx]
cmp byte [r9 + rdx], al
jne 0x14007c754
inc rcx
inc r9
cmp rcx, r10
jb 0x14007c740
mov eax, dword [r15 + 0xc]
add rax, r9
cmp rax, r11
jbe 0x14007c7f7
test r9, r9
je 0x14007c7f7
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 - 0x40]
shl rdx, cl
add rdx, rsi
add rdx, qword [rsp + 0x50]
lea r8, [rdx + rax + 1]
cmp r8, qword [rsp + 0x20]
ja 0x14007c7f7
mov rcx, r8
xor eax, eax
shr rcx, 1
je 0x14007c7be
inc eax
shr rcx, 1
jne 0x14007c7b7
imul eax, eax, 0x1e
mov rcx, r9
imul rcx, rcx, 0x87
sub rcx, rax
add rcx, 0x780
cmp rcx, qword [rsp + 8]
jb 0x14007c7f7
sub r11d, r9d
inc qword [r12 + 0x30]
mov qword [rsp + 0x10], r9
mov dword [rbp + 0x10], r11d
mov qword [rsp + 0x28], r8
mov qword [rsp + 8], rcx
mov rdx, qword [rsp + 0x30]
inc rdi
dec r14
jne 0x14007c6c0
mov rbx, qword [rbp + 0x98]
mov rcx, qword [rsp + 0x50]
mov rax, qword [rbx + 0x58]
add rcx, qword [rbx + 0x60]
mov rdx, qword [rbx + 0x48]
mov qword [rsp + 0x20], rdx
mov qword [rbp - 0x38], rcx
mov qword [rsp + 0x58], rax
test rax, rax
je 0x14007cb98
mov r14, qword [rsp + 0x38]
lea rax, [rbx + 0x68]
add r14, qword [rbp + 0x80]
mov qword [rsp + 0x30], rax
nop dword [rax]
mov rbx, qword [rax]
mov r15, qword [rsp + 8]
mov r13, qword [rsp + 0x10]
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 - 0x78], 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 + 0x78], r12d
mov qword [rsp + 0x40], rcx
lea r12, [r11 + rax*4]
mov qword [rsp + 0x50], r12
je 0x14007c91f
mov r12, qword [r12]
mov qword [rsp + 0x50], r12
xor ebx, ebx
mov rax, qword [rbp + 0xa8]
movsxd rdi, dword [rax + rbx*4]
mov rax, qword [rsp]
cmp rdi, rsi
jbe 0x14007ca12
cmp rdi, rax
ja 0x14007ca12
mov rdx, qword [rbp - 0x78]
sub rax, rdi
xor r8d, r8d
sub rdx, rax
lea r11, [rax + r12]
mov rax, qword [rsp + 0x18]
cmp rdx, rax
mov rcx, r14
cmova rdx, rax
add rdx, r14
lea r10, [rdx - 4]
cmp r14, r10
ja 0x14007c989
mov r9, r11
sub r9, r14
mov eax, dword [rcx + r9]
cmp dword [rcx], eax
jne 0x14007c989
add rcx, 4
add r8, 4
cmp rcx, r10
jbe 0x14007c974
cmp rcx, rdx
jae 0x14007c9a4
nop
movzx eax, byte [rcx]
cmp byte [r8 + r11], al
jne 0x14007c9a4
inc rcx
inc r8
cmp rcx, rdx
jb 0x14007c990
cmp r8, 2
jb 0x14007ca0e
mov r9, r8
imul r9, r9, 0x87
add r9, 0x78f
cmp r15, r9
jae 0x14007ca0e
test rbx, rbx
je 0x14007c9e3
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 0x14007ca12
cmp r8, r13
mov r15, r9
mov qword [rsp + 0x10], r8
mov dword [rbp + 0x10], 0
mov qword [rsp + 0x28], rdi
mov qword [rsp + 8], r9
cmova r13, r8
jmp 0x14007ca12
mov rax, qword [rsp]
inc rbx
cmp rbx, 4
jb 0x14007c921
mov r12d, dword [rsp + 0x78]
test r12d, r12d
jne 0x14007cb74
mov rsi, qword [rsp + 0x50]
mov rcx, qword [rsp + 0x40]
mov r12, qword [rbp - 0x78]
mov r9, qword [rsp + 0x18]
mov r10, qword [rsp + 0x20]
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 + 0x40], rcx
sub r8, rdx
sub rbx, rdx
cmp r8, r9
cmova r8, r9
cmp rbx, r10
ja 0x14007cb6c
mov rax, qword [rsp + 0x38]
add rax, r13
cmp rax, qword [rbp + 0x88]
ja 0x14007cb53
cmp r13, r8
jae 0x14007cb53
lea rax, [rdx + r13]
movzx ecx, byte [rax + rsi]
cmp byte [r13 + r14], cl
jne 0x14007cb63
lea r10, [r8 + r14]
lea r11, [rdx + rsi]
xor edx, edx
lea r9, [r10 - 4]
mov rcx, r14
cmp r14, r9
ja 0x14007cada
mov r8, r11
sub r8, r14
mov eax, dword [rcx + r8]
cmp dword [rcx], eax
jne 0x14007cada
add rcx, 4
add rdx, 4
cmp rcx, r9
jbe 0x14007cac5
cmp rcx, r10
jae 0x14007caf4
nop
movzx eax, byte [rcx]
cmp byte [rdx + r11], al
jne 0x14007caf4
inc rcx
inc rdx
cmp rcx, r10
jb 0x14007cae0
cmp rdx, 4
jb 0x14007cb59
mov rcx, rbx
xor eax, eax
shr rcx, 1
je 0x14007cb0b
inc eax
shr rcx, 1
jne 0x14007cb04
mov r9, qword [rsp + 0x18]
mov r10, qword [rsp + 0x20]
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 0x14007cb67
mov r15, rcx
mov r13, rdx
mov qword [rsp + 0x10], rdx
mov dword [rbp + 0x10], 0
mov qword [rsp + 0x28], rbx
mov qword [rsp + 8], rcx
jmp 0x14007cb67
mov rax, qword [rsp]
jmp 0x14007cb6c
mov r9, qword [rsp + 0x18]
mov r10, qword [rsp + 0x20]
mov rax, qword [rsp]
mov rcx, qword [rsp + 0x40]
test edi, edi
je 0x14007ca45
mov rax, qword [rsp + 0x30]
mov rcx, qword [rbp - 0x38]
add rax, 8
dec qword [rsp + 0x58]
mov qword [rsp + 0x30], rax
jne 0x14007c850
mov rbx, qword [rbp + 0x98]
mov rax, qword [rsp + 0x48]
mov rcx, qword [rsp + 8]
mov r11, qword [rsp + 0x60]
add rax, 0xaf
cmp rcx, rax
jb 0x14007cc0a
mov r13, qword [rsp + 0x70]
mov r14, qword [rsp + 0x10]
mov r15, qword [rsp + 0x28]
mov rax, qword [rbp + 0x10]
mov qword [rsp + 0x48], rcx
mov ecx, dword [rsp + 0x68]
inc ecx
inc r11
mov qword [rbp + 0x78], r13
mov qword [rbp - 0x70], r14
mov qword [rbp - 0x68], r15
mov qword [rbp - 0x58], rax
mov qword [rsp + 0x60], r11
mov dword [rsp + 0x68], ecx
cmp ecx, 4
jge 0x14007cc16
lea rax, [r13 + 8]
cmp rax, qword [rbp - 0x48]
jae 0x14007cc16
mov r14, qword [rsp + 0x18]
dec r14
xor edi, edi
jmp 0x14007c220
mov r13, qword [rbp + 0x78]
mov r14, qword [rbp - 0x70]
mov r15, qword [rbp - 0x68]
mov rax, qword [rbp - 0x20]
mov rdx, qword [rbp - 0x30]
mov r10, qword [rbp + 0xa8]
lea r12, [rax + r14*2]
mov rax, qword [rbp - 0x50]
mov r9, rdx
add rax, r13
add r12, r13
cmp rax, rdx
mov qword [rsp + 0x58], r12
cmovb r9, rax
add r9, qword [rbp - 0x40]
cmp r15, r9
ja 0x14007ccc9
movsxd rax, dword [r10]
movsxd r8, dword [r10 + 4]
lea rcx, [r15 + 3]
mov rdx, rcx
sub rcx, r8
sub rdx, rax
cmp r15, rax
jne 0x14007cc69
xor r8d, r8d
jmp 0x14007cccd
cmp r15, r8
jne 0x14007cc76
mov r8d, 1
jmp 0x14007cccd
cmp rdx, 7
jae 0x14007cc91
movzx ecx, dl
mov r8d, 0x9750468
shl cl, 2
sar r8, cl
and r8d, 0xf
jmp 0x14007cccd
cmp rcx, 7
jae 0x14007cca9
shl cl, 2
mov r8d, 0xfdb1ace
sar r8, cl
and r8d, 0xf
jmp 0x14007cccd
movsxd rax, dword [r10 + 8]
cmp r15, rax
jne 0x14007ccba
mov r8d, 2
jmp 0x14007cccd
movsxd rax, dword [r10 + 0xc]
mov r8d, 3
cmp r15, rax
je 0x14007cccd
lea r8, [r15 + 0xf]
mov r12, qword [rbp + 0xa0]
cmp r15, r9
ja 0x14007cd68
test r8, r8
je 0x14007cd68
mov eax, dword [r10 + 8]
mov edx, dword [r10]
mov ecx, dword [rbp - 0x68]
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 0x14007cd68
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 0x14007cd68
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 - 0x58]
mov rcx, qword [rbp + 0xb8]
mov esi, dword [rbp - 0x70]
shl eax, 0x19
mov dword [rcx], r11d
or eax, esi
mov dword [rcx + 4], eax
mov rax, qword [rbp + 0x98]
mov ebx, dword [rbx + 0x38]
mov edi, dword [rax + 0x3c]
lea rax, [rdi + 0x10]
cmp r8, rax
jae 0x14007cdab
mov word [rcx + 0xe], r8w
mov rdi, rcx
mov dword [rcx + 8], 0
jmp 0x14007ce41
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 0x14007cdcf
inc ecx
shr rax, 1
jne 0x14007cdc8
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
and r9d, 1
lea edx, [r8 - 1]
mov eax, 1
add dx, dx
shl ax, cl
shl r8w, 0xa
add dx, r9w
dec ax
shl dx, cl
and ax, r11w
mov ecx, r10d
add dx, ax
lea rax, [r9 + 2]
add dx, di
mov rdi, qword [rbp + 0xb8]
shl rax, cl
add dx, 0x10
sub r11, rax
mov rcx, rbx
or dx, r8w
shr r11, cl
mov word [rdi + 0xe], dx
mov dword [rdi + 8], r11d
mov r11, qword [rsp + 0x60]
mov ecx, dword [rbp - 0x58]
mov eax, 0x3ff
mov r10d, 0
test word [rdi + 0xe], ax
sete r10b
add ecx, esi
movsxd r8, ecx
cmp r11, 6
jae 0x14007ce70
movzx r9d, r11w
mov eax, reloc.WS2_32.dll_socket
jmp 0x14007cef3
cmp r11, 0x82
jae 0x14007cea4
lea r9, [r11 - 2]
xor ecx, ecx
mov rax, r9
shr rax, 1
je 0x14007ce8e
inc ecx
shr rax, 1
jne 0x14007ce87
dec ecx
mov eax, reloc.WS2_32.dll_socket
shr r9, cl
inc cx
add cx, cx
add r9w, cx
jmp 0x14007cef3
cmp r11, 0x842
jae 0x14007ceca
lea rcx, [r11 - 0x42]
xor eax, eax
shr rcx, 1
je 0x14007cebf
inc eax
shr rcx, 1
jne 0x14007ceb8
lea r9d, [rax + 0xa]
mov eax, reloc.WS2_32.dll_socket
jmp 0x14007cef3
mov eax, reloc.WS2_32.dll_socket
cmp r11, 0x1842
jae 0x14007cede
lea r9d, [rax - 2]
jmp 0x14007cef3
cmp r11, 0x5842
jae 0x14007ceef
mov r9d, reloc.WS2_32.dll_shutdown
jmp 0x14007cef3
movzx r9d, ax
cmp r8, 0xa
jae 0x14007cf00
sub r8w, 2
jmp 0x14007cf55
cmp r8, 0x86
jae 0x14007cf30
add r8, 0xfffffffffffffffa
xor ecx, ecx
mov rax, r8
shr rax, 1
je 0x14007cf1e
inc ecx
shr rax, 1
jne 0x14007cf17
dec ecx
shr r8, cl
add cx, 2
add cx, cx
add r8w, cx
jmp 0x14007cf55
cmp r8, 0x846
jae 0x14007cf51
lea rcx, [r8 - 0x46]
xor eax, eax
shr rcx, 1
je 0x14007cf4b
inc eax
shr rcx, 1
jne 0x14007cf44
lea r8d, [rax + 0xc]
jmp 0x14007cf55
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 0x14007cf8c
cmp r9w, 8
jae 0x14007cf8c
cmp r8w, 0x10
jae 0x14007cf8c
cmp r8w, 8
jb 0x14007cfc0
or dx, 0x40
jmp 0x14007cfc0
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 word [rdi + 0xc], dx
add rdi, 0x10
add qword [rax], r11
mov rax, qword [rbp - 0x28]
xor esi, esi
mov rbx, rax
mov qword [rbp + 0xb8], rdi
lea rdi, [r14 + r13]
cmp rdi, rax
mov rax, r14
mov qword [rsp + 0x60], rsi
cmovb rbx, rdi
shr rax, 2
lea r11, [r13 + 2]
mov qword [rbp + 0x78], rdi
cmp r15, rax
jae 0x14007d025
lea rax, [r15*4]
sub r14, rax
add r14, r13
cmp r11, r14
cmova r14, r11
mov r11, r14
cmp rbx, r14
cmovb r11, rbx
cmp r11, rbx
jae 0x14007d08e
mov rdi, qword [rbp + 0x88]
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 0x14007d031
mov rdi, qword [rbp + 0x78]
mov rbx, rdi
mov qword [rbp + 0x78], rbx
mov r14, qword [rbp + 0x88]
mov r15, qword [rbp + 0x80]
mov rdi, qword [rbp + 0xa0]
mov r11, qword [rbp - 0x48]
mov r9, qword [rbp + 0x98]
mov r10, qword [rbp - 0x30]
mov rcx, qword [rbp - 0x50]
lea rax, [rbx + 8]
cmp rax, r11
jb 0x14007b8a0
mov r13, qword [rsp + 0x128]
mov r12, qword [rsp + 0x130]
mov rax, qword [rbp + 0xb0]
mov rcx, qword [rbp + 0xb8]
sub r11, rbx
sub rcx, qword [rbp - 0x18]
add r11, rsi
mov qword [rax], r11
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 rbx, qword [rbp + 0x78]
mov rsi, qword [rsp + 0x60]
mov r12, qword [rsp + 0x58]
inc rbx
inc rsi
mov qword [rsp + 0x60], rsi
mov qword [rbp + 0x78], rbx
mov qword [rbp + 0x70], rbx
cmp rbx, r12
jbe 0x14007d095
mov rax, qword [rbp - 0x20]
mov r11, qword [rbp - 0x48]
lea rax, [r12 + rax*4]
add r11, 0xfffffffffffffff9
cmp rbx, rax
jbe 0x14007d1eb
mov r14, qword [rbp + 0x88]
mov r15, qword [rbp + 0x80]
mov rdi, qword [rbp + 0xa0]
lea rax, [rbx + 0x10]
cmp rax, r11
cmovb r11, rax
cmp rbx, r11
jae 0x14007d0aa
mov rax, r11
sub rax, rbx
dec rax
shr rax, 2
lea rsi, [rsi + rax*4 + 4]
mov qword [rsp + 0x60], rsi
mov rcx, qword [rdi + 0x80]
mov edx, dword [rdi + 0x68]
mov r10, qword [rdi + 0x88]
mov rax, rbx
and rax, r14
mov r9, qword [rax + r15]
imul r9, qword [rdi + 0x60]
shr r9, 0x31
lea r8, [rcx + r9*2]
mov ecx, dword [rdi + 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], ebx
add rbx, 4
cmp rbx, r11
jb 0x14007d196
mov qword [rbp + 0x78], rbx
jmp 0x14007d0aa
lea rax, [rbx + 8]
cmp rax, r11
cmovb r11, rax
cmp rbx, r11
jae 0x14007d095
mov r14, qword [rbp + 0x88]
mov r15, qword [rbp + 0x80]
mov rdi, qword [rbp + 0xa0]
mov rax, r11
sub rax, rbx
dec rax
shr rax, 1
lea rsi, [rsi + rax*2 + 2]
mov qword [rsp + 0x60], rsi
nop word [rax + rax]
mov rcx, qword [rdi + 0x80]
mov edx, dword [rdi + 0x68]
mov r10, qword [rdi + 0x88]
mov rax, rbx
and rax, r14
mov r9, qword [rax + r15]
imul r9, qword [rdi + 0x60]
shr r9, 0x31
lea r8, [rcx + r9*2]
mov ecx, dword [rdi + 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], ebx
add rbx, 2
cmp rbx, r11
jb 0x14007d230
mov qword [rbp + 0x78], rbx
jmp 0x14007d0aa