Function at 0x1400784f0
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 r13
push r14
push r15
lea rbp, [rsp - 0x38]
sub rsp, 0x138
mov rsi, qword [rbp + 0xb0]
mov r10, qword [rbp + 0xb8]
mov rax, rcx
mov rsi, qword [rsi]
mov r13, r8
mov r15, r9
mov r9, qword [rbp + 0x98]
mov r8d, 1
lea r11, [rax + rdx]
mov ecx, dword [r9 + 8]
mov rbx, rdx
mov qword [rbp - 0x28], r10
shl r8, cl
mov rcx, qword [r9 + 0x10]
mov qword [rsp + 0x38], rsi
sub r8, 0x10
mov qword [rbp - 0x50], r11
mov qword [rbp - 0x60], rcx
mov qword [rbp - 0x68], r8
cmp rax, 8
jb 0x140078571
lea rdx, [rax + rdx - 7]
cmp dword [r9 + 4], 9
mov r14, qword [rbp + 0xa0]
mov qword [rbp - 0x40], rdx
mov edx, 0x40
mov eax, 0x200
cmovl eax, edx
mov edx, dword [r14 + 0x70]
mov qword [rbp - 0x38], rax
add rax, rbx
mov qword [rbp - 0x78], rax
mov rax, qword [r9 + 0x60]
mov qword [rbp - 0x48], rax
cmp edx, 4
jle 0x140078619
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 0x140078611
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 - 0x60]
mov r8, qword [rbp - 0x68]
lea rax, [rbx + 8]
cmp rax, r11
jae 0x140079ade
mov qword [rsp + 0x130], rdi
mov qword [rsp + 0x128], r12
nop word [rax + rax]
mov rax, r11
mov r11, r8
sub rax, rbx
cmp rbx, r8
cmovb r11, rbx
mov qword [rsp + 0x20], rax
lea rax, [rcx + rbx]
cmp rax, r8
mov rcx, r8
mov qword [rsp], r11
cmovb rcx, rax
xor dil, dil
mov qword [rbp - 0x58], rcx
xor ecx, ecx
mov byte [rbp + 0x70], dil
mov dword [rsp + 0x48], ecx
cmp dword [r9 + 0x270], ecx
je 0x1400786d8
cmp rbx, 1
jb 0x140078695
lea rax, [rbx - 1]
and rax, r15
movzx edi, byte [rax + r13]
jmp 0x140078698
xor dil, dil
mov byte [rbp + 0x70], dil
cmp rbx, 2
jb 0x1400786ae
lea rax, [rbx - 2]
and rax, r15
movzx ecx, byte [rax + r13]
movzx eax, cl
mov rcx, qword [rbp + 0x90]
movzx edx, byte [rax + rcx + 0x100]
movzx eax, dil
movzx ecx, byte [rax + rcx]
or rdx, rcx
movzx ecx, byte [rdx + r9 + 0x275]
mov dword [rsp + 0x48], ecx
movsxd rsi, dword [r14 + 0x70]
mov r12, qword [r14 + 0x88]
xor r8d, r8d
mov eax, 0x7e4
xor r10d, r10d
mov qword [rsp + 0x70], r8
mov r8, qword [r14 + 0x80]
mov qword [rsp + 0x10], rax
mov rax, qword [r9 + 0x48]
mov qword [rbp - 0x70], rax
movsxd rax, ecx
mov qword [rsp + 0x40], r8
mov rcx, qword [r9 + rax*8 + 0x2b8]
mov eax, 0x7e4
mov r9, rbx
and r9, r15
mov qword [rsp + 0x30], rax
xor eax, eax
xor ebx, ebx
mov qword [rsp + 0x58], rcx
mov qword [rsp + 0x60], r12
mov qword [rsp + 0x68], rax
mov dword [rbp - 0x80], eax
mov qword [rsp + 8], r9
mov qword [rsp + 0x18], r10
test rsi, rsi
je 0x14007889f
mov rax, qword [rbp + 0x78]
mov r14, qword [rsp + 0x20]
mov r12, qword [rbp + 0xa8]
movsxd rdi, dword [r12 + rbx*4]
mov rdx, rax
sub rdx, rdi
cmp rdx, rax
jae 0x140078889
cmp rdi, r11
ja 0x140078889
lea rax, [r10 + r9]
and rdx, r15
cmp rax, r15
ja 0x140078885
lea rax, [rdx + r10]
cmp rax, r15
ja 0x140078885
movzx eax, byte [rax + r13]
lea rcx, [r9 + r13]
cmp byte [r10 + rcx], al
jne 0x140078885
lea r10, [rcx + r14]
xor r8d, r8d
lea r11, [rdx + r13]
lea r9, [r10 - 4]
cmp rcx, r9
ja 0x1400787da
mov rdx, r11
sub rdx, rcx
mov eax, dword [rdx + rcx]
cmp dword [rcx], eax
jne 0x1400787da
add rcx, 4
add r8, 4
cmp rcx, r9
jbe 0x1400787c6
cmp rcx, r10
jae 0x1400787f4
nop
movzx eax, byte [rcx]
cmp byte [r8 + r11], al
jne 0x1400787f4
inc rcx
inc r8
cmp rcx, r10
jb 0x1400787e0
cmp r8, 3
jae 0x140078805
cmp r8, 2
jne 0x140078877
cmp rbx, r8
jae 0x140078877
mov r11, qword [rsp + 0x30]
mov r9, r8
imul r9, r9, 0x87
add r9, 0x78f
cmp r11, r9
jae 0x140078877
test rbx, rbx
je 0x140078843
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 0x1400788e8
mov qword [rsp + 0x30], r9
mov qword [rsp + 0x10], r9
mov r9, qword [rsp + 8]
mov r10, r8
mov qword [rsp + 0x18], r8
mov qword [rsp + 0x68], r8
mov qword [rsp + 0x70], rdi
jmp 0x140078889
mov r10, qword [rsp + 0x18]
mov r9, qword [rsp + 8]
mov r11, qword [rsp]
mov rax, qword [rbp + 0x78]
inc rbx
cmp rbx, rsi
jb 0x140078760
mov r12, qword [rsp + 0x60]
mov r8, qword [rsp + 0x40]
mov rbx, qword [rbp + 0xa0]
mov r14, qword [r9 + r13]
lea rdx, [r9 + r13]
mov ecx, dword [rbx + 0x6c]
mov qword [rsp + 0x28], rdx
imul r14, qword [rbx + 0x60]
shr r14, 0x31
mov rax, r14
mov qword [rsp + 0x60], r14
shl rax, cl
movzx ecx, word [r8 + r14*2]
lea r15, [r12 + rax*4]
mov rax, qword [rbx + 0x58]
mov qword [rsp + 0x50], rcx
cmp rcx, rax
jbe 0x1400788f4
mov esi, ecx
sub rsi, rax
jmp 0x1400788f6
mov r10, qword [rsp + 0x18]
mov r9, qword [rsp + 8]
jmp 0x140078889
xor esi, esi
mov r13d, dword [rdx]
mov rdi, rcx
cmp rcx, rsi
jbe 0x140078a49
mov r12d, dword [rbx + 0x68]
mov r14, rdx
nop dword [rax]
mov rbx, qword [rbp + 0x78]
dec rdi
mov rax, rdi
and rax, r12
mov edx, dword [r15 + rax*4]
sub rbx, rdx
cmp rbx, r11
ja 0x140078a2e
mov rcx, qword [rbp + 0x88]
lea rax, [r10 + r9]
and rdx, rcx
cmp rax, rcx
ja 0x140078a25
lea rax, [rdx + r10]
cmp rax, rcx
ja 0x140078a25
mov r8, qword [rbp + 0x80]
movzx eax, byte [rax + r8]
cmp byte [r10 + r14], al
jne 0x140078a25
cmp r13d, dword [rdx + r8]
jne 0x140078a25
mov rax, qword [rsp + 0x20]
lea rcx, [r14 + 4]
lea r11, [rdx + r8 + 4]
lea r10, [rcx + rax - 4]
xor edx, edx
lea r9, [r10 - 4]
cmp rcx, r9
ja 0x1400789aa
mov r8, r11
sub r8, rcx
mov eax, dword [rcx + r8]
cmp dword [rcx], eax
jne 0x1400789aa
add rcx, 4
add rdx, 4
cmp rcx, r9
jbe 0x140078995
cmp rcx, r10
jae 0x1400789c4
nop
movzx eax, byte [rcx]
cmp byte [rdx + r11], al
jne 0x1400789c4
inc rcx
inc rdx
cmp rcx, r10
jb 0x1400789b0
mov rax, rbx
add rdx, 4
xor ecx, ecx
shr rax, 1
je 0x1400789d9
inc ecx
shr rax, 1
jne 0x1400789d2
mov r9, qword [rsp + 8]
mov r11, qword [rsp]
imul ecx, ecx, 0x1e
mov eax, ecx
mov rcx, rdx
imul rcx, rcx, 0x87
sub rcx, rax
add rcx, 0x780
cmp qword [rsp + 0x30], rcx
jae 0x140078a20
mov qword [rsp + 0x30], rcx
mov r10, rdx
mov qword [rsp + 0x18], rdx
mov qword [rsp + 0x68], rdx
mov qword [rsp + 0x70], rbx
mov qword [rsp + 0x10], rcx
jmp 0x140078a25
mov r10, qword [rsp + 0x18]
cmp rdi, rsi
ja 0x140078910
mov r14, qword [rsp + 0x60]
mov rcx, qword [rsp + 0x50]
mov rdx, qword [rsp + 0x28]
mov r8, qword [rsp + 0x40]
mov rbx, qword [rbp + 0xa0]
mov eax, dword [rbx + 0x68]
mov rbx, qword [rbp + 0x78]
mov r11, qword [rsp + 0x10]
and rax, rcx
mov dword [r15 + rax*4], ebx
inc word [r8 + r14*2]
mov r14, qword [rbp + 0xa0]
cmp r11, 0x7e4
jne 0x140078c0d
mov r12, qword [r14 + 0x78]
mov r13, qword [r12 + 0x28]
mov rax, r13
shr rax, 7
cmp qword [r12 + 0x30], rax
jb 0x140078c0d
mov esi, dword [rdx]
mov r15, qword [rsp + 0x58]
mov r14d, 2
imul esi, esi, 0x1e35a7bd
shr rsi, 0x11
and esi, 0x7ffe
nop dword [rax]
inc r13
mov qword [r12 + 0x28], r13
mov rax, qword [r15 + 0x20]
movzx ecx, byte [rsi + rax]
test cl, cl
je 0x140078bf1
mov rax, qword [r15 + 0x18]
movzx r11d, cl
movzx edi, word [rax + rsi*2]
cmp r11, qword [rsp + 0x20]
ja 0x140078bec
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 0x140078b29
sub rdx, rcx
nop dword [rax + rax]
mov eax, dword [rcx + rdx]
cmp dword [rcx], eax
jne 0x140078b24
add rcx, 4
add r9, 4
cmp rcx, r8
jbe 0x140078b10
mov rdx, qword [rsp + 0x28]
cmp rcx, r10
jae 0x140078b44
nop
movzx eax, byte [rcx]
cmp byte [r9 + rdx], al
jne 0x140078b44
inc rcx
inc r9
cmp rcx, r10
jb 0x140078b30
mov eax, dword [r15 + 0xc]
add rax, r9
cmp rax, r11
jbe 0x140078bec
test r9, r9
je 0x140078bec
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 - 0x48]
shl rdx, cl
add rdx, rdi
add rdx, qword [rbp - 0x58]
lea r8, [rdx + rax + 1]
cmp r8, qword [rbp - 0x70]
ja 0x140078bec
mov rax, r8
xor ecx, ecx
shr rax, 1
je 0x140078bac
inc ecx
shr rax, 1
jne 0x140078ba5
imul ecx, ecx, 0x1e
mov eax, ecx
mov rcx, r9
imul rcx, rcx, 0x87
sub rcx, rax
add rcx, 0x780
cmp rcx, qword [rsp + 0x10]
jb 0x140078bec
sub r11d, r9d
inc qword [r12 + 0x30]
mov qword [rsp + 0x68], r9
mov dword [rbp - 0x80], r11d
mov qword [rsp + 0x70], r8
mov qword [rsp + 0x10], rcx
mov r11, rcx
jmp 0x140078bf1
mov r11, qword [rsp + 0x10]
mov rdx, qword [rsp + 0x28]
inc rsi
dec r14
jne 0x140078ab0
mov r14, qword [rbp + 0xa0]
mov rbx, qword [rbp + 0x78]
mov r13, qword [rsp + 0x20]
mov r15, qword [rbp + 0x88]
cmp r13, 0x20
jb 0x140078dca
mov rbx, qword [r14 + 0xa0]
cmp rbx, qword [rbp + 0x78]
ja 0x140078dbb
mov r12, qword [rsp + 8]
mov r13, qword [rsp]
mov r10, qword [rbp + 0x80]
lea rsi, [rbx + 0x20]
nop dword [rax + rax]
mov r8d, dword [r14 + 0x90]
mov rax, rbx
and rax, r15
mov r9d, r8d
movzx edx, byte [rax + r10]
mov rax, rsi
and r9d, 0x3fffffff
and rax, r15
inc edx
movzx ecx, byte [rax + r10]
mov eax, dword [r14 + 0xac]
imul edx, dword [r14 + 0xb0]
sub ecx, edx
imul eax, r8d
lea eax, [rcx + rax + 1]
mov dword [r14 + 0x90], eax
cmp r9d, 0x1000000
jae 0x140078da6
mov rax, qword [r14 + 0x98]
mov r8d, dword [rax + r9*4]
mov dword [rax + r9*4], ebx
mov r9, qword [rbp + 0x78]
cmp rbx, r9
jne 0x140078da6
mov eax, 0xffffffff
cmp r8, rax
je 0x140078da6
mov edi, r9d
sub edi, r8d
cmp rdi, r13
ja 0x140078da6
mov rax, qword [rsp + 0x20]
lea rcx, [r12 + r10]
and r8, r15
add r8, r10
lea r11, [rcx + rax]
xor edx, edx
lea r10, [r11 - 4]
cmp rcx, r10
ja 0x140078d18
mov r9, r8
sub r9, rcx
mov eax, dword [rcx + r9]
cmp dword [rcx], eax
jne 0x140078d18
add rcx, 4
add rdx, 4
cmp rcx, r10
jbe 0x140078d03
cmp rcx, r11
jae 0x140078d34
nop dword [rax]
movzx eax, byte [rcx]
cmp byte [rdx + r8], al
jne 0x140078d34
inc rcx
inc rdx
cmp rcx, r11
jb 0x140078d20
cmp rdx, 4
jb 0x140078d9a
cmp rdx, qword [rsp + 0x68]
jbe 0x140078d9a
mov rcx, rdi
xor eax, eax
shr rcx, 1
je 0x140078d57
nop dword [rax + rax]
inc eax
shr rcx, 1
jne 0x140078d50
mov r11, qword [rsp + 0x10]
mov r10, qword [rbp + 0x80]
imul eax, eax, 0x1e
mov rcx, rdx
imul rcx, rcx, 0x87
sub rcx, rax
add rcx, 0x780
cmp rcx, r11
jbe 0x140078da6
mov qword [rsp + 0x68], rdx
mov qword [rsp + 0x70], rdi
mov r11, rcx
mov qword [rsp + 0x10], rcx
mov dword [rbp - 0x80], 0
jmp 0x140078da6
mov r11, qword [rsp + 0x10]
mov r10, qword [rbp + 0x80]
inc rbx
inc rsi
cmp rbx, qword [rbp + 0x78]
jbe 0x140078c50
mov r13, qword [rsp + 0x20]
mov rbx, qword [rbp + 0x78]
lea rax, [rbx + 1]
mov qword [r14 + 0xa0], rax
cmp r11, 0x7e4
jbe 0x140079b11
xor esi, esi
dec r13
mov dword [rbp - 0x58], esi
mov rdi, qword [rbp + 0x98]
mov qword [rsp + 0x20], r13
cmp dword [rdi + 4], 5
jge 0x140078e05
mov rax, qword [rsp + 0x68]
mov r10, r13
dec rax
cmp rax, r13
cmovb r10, rax
jmp 0x140078e08
mov r10, rsi
mov rdx, qword [rbp - 0x68]
mov rax, qword [rbp - 0x60]
lea r9, [rbx + 1]
cmp r9, rdx
lea rax, [rax + rbx + 1]
mov r13, rdx
cmovb r13, r9
cmp rax, rdx
mov rcx, rdx
cmovb rcx, rax
cmp dword [rdi + 0x270], 0
mov r11d, 0x7e4
mov qword [rsp + 0x18], r10
mov qword [rsp + 0x30], rsi
mov qword [rsp + 8], r9
mov qword [rbp - 0x20], rcx
mov qword [rsp], r11
mov qword [rbp - 0x78], r13
je 0x140078e98
movzx ecx, byte [rbp + 0x70]
mov rax, rbx
and rax, r15
mov r15, qword [rbp + 0x80]
movzx r8d, byte [rax + r15]
mov eax, ecx
mov rcx, qword [rbp + 0x90]
movzx edx, byte [rax + rcx + 0x100]
movzx ecx, byte [r8 + rcx]
mov byte [rbp + 0x70], r8b
or rdx, rcx
movzx eax, byte [rdx + rdi + 0x275]
mov dword [rsp + 0x48], eax
jmp 0x140078e9f
mov r15, qword [rbp + 0x80]
mov rax, qword [rdi + 0x48]
mov r8, qword [r14 + 0x80]
mov r12, qword [r14 + 0x88]
mov qword [rbp - 0x10], rax
movsxd rax, dword [rsp + 0x48]
mov qword [rsp + 0x28], rsi
mov rcx, qword [rdi + rax*8 + 0x2b8]
mov rax, r9
mov dword [rbp + 0x10], esi
mov qword [rbp - 0x18], rcx
mov rcx, qword [rbp + 0x88]
mov rbx, rsi
movsxd rsi, dword [r14 + 0x70]
and rax, rcx
mov qword [rsp + 0x60], r8
mov qword [rsp + 0x40], rax
mov rax, r11
mov qword [rbp - 0x70], r12
mov qword [rsp + 0x58], rax
test rsi, rsi
je 0x140079070
mov r12, qword [rsp + 0x40]
mov r14, qword [rsp + 0x20]
mov rax, qword [rbp + 0xa8]
movsxd rdi, dword [rax + rbx*4]
mov rdx, r9
sub rdx, rdi
cmp rdx, r9
jae 0x140079054
cmp rdi, r13
ja 0x140079054
lea rax, [r10 + r12]
and rdx, rcx
cmp rax, rcx
ja 0x14007904d
lea rax, [rdx + r10]
cmp rax, rcx
ja 0x14007904d
movzx eax, byte [rax + r15]
lea rcx, [r12 + r15]
cmp byte [r10 + rcx], al
jne 0x140079046
lea r10, [rcx + r14]
xor r8d, r8d
lea r11, [rdx + r15]
lea r9, [r10 - 4]
cmp rcx, r9
ja 0x140078f8c
mov rdx, r11
sub rdx, rcx
mov eax, dword [rcx + rdx]
cmp dword [rcx], eax
jne 0x140078f8c
add rcx, 4
add r8, 4
cmp rcx, r9
jbe 0x140078f78
cmp rcx, r10
jae 0x140078fa5
movzx eax, byte [rcx]
cmp byte [r8 + r11], al
jne 0x140078fa5
inc rcx
inc r8
cmp rcx, r10
jb 0x140078f91
cmp r8, 3
jae 0x140078fbe
cmp r8, 2
jne 0x140079038
cmp rbx, r8
jae 0x140079038
mov r11, qword [rsp + 0x58]
mov r9, r8
imul r9, r9, 0x87
add r9, 0x78f
cmp r11, r9
jae 0x140079038
test rbx, rbx
je 0x140078ffc
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 0x1400790bb
mov qword [rsp + 0x58], r9
mov r11, r9
mov qword [rsp], r9
mov r9, qword [rsp + 8]
mov r10, r8
mov qword [rsp + 0x18], r8
mov qword [rsp + 0x28], r8
mov qword [rsp + 0x30], rdi
jmp 0x140079054
mov r10, qword [rsp + 0x18]
mov r9, qword [rsp + 8]
mov r11, qword [rsp]
mov rcx, qword [rbp + 0x88]
mov rax, qword [rbp + 0xa8]
inc rbx
cmp rbx, rsi
jb 0x140078f12
mov r12, qword [rbp - 0x70]
mov r8, qword [rsp + 0x60]
mov r14, qword [rbp + 0xa0]
mov ecx, dword [r14 + 0x6c]
mov rdx, qword [rsp + 0x40]
mov rbx, qword [rbp + 0xa0]
add rdx, r15
mov r15, qword [r14 + 0x60]
mov qword [rsp + 0x50], rdx
imul r15, qword [rdx]
shr r15, 0x31
mov rax, r15
mov qword [rbp - 0x70], r15
shl rax, cl
movzx ecx, word [r8 + r15*2]
lea r14, [r12 + rax*4]
mov rax, qword [rbx + 0x58]
mov qword [rbp - 0x30], rcx
cmp rcx, rax
jbe 0x1400790cb
mov esi, ecx
sub rsi, rax
jmp 0x1400790cd
mov r10, qword [rsp + 0x18]
mov r9, qword [rsp + 8]
mov r11, qword [rsp]
jmp 0x140079054
xor esi, esi
mov r13d, dword [rdx]
mov rdi, rcx
cmp rcx, rsi
jbe 0x140079239
mov r12d, dword [rbx + 0x68]
mov r15, rdx
nop word [rax + rax]
dec rdi
mov rbx, r9
mov rax, rdi
and rax, r12
mov edx, dword [r14 + rax*4]
sub rbx, rdx
cmp rbx, qword [rbp - 0x78]
ja 0x140079220
mov rcx, qword [rbp + 0x88]
mov rax, qword [rsp + 0x40]
add rax, r10
and rdx, rcx
cmp rax, rcx
ja 0x140079217
lea rax, [rdx + r10]
cmp rax, rcx
ja 0x140079217
mov r8, qword [rbp + 0x80]
movzx eax, byte [rax + r8]
cmp byte [r10 + r15], al
jne 0x140079217
cmp r13d, dword [rdx + r8]
jne 0x140079217
mov rax, qword [rsp + 0x20]
lea rcx, [r15 + 4]
lea r11, [rdx + r8 + 4]
lea r10, [rcx + rax - 4]
xor edx, edx
lea r9, [r10 - 4]
cmp rcx, r9
ja 0x140079195
mov r8, r11
sub r8, rcx
nop dword [rax]
mov eax, dword [rcx + r8]
cmp dword [rcx], eax
jne 0x140079195
add rcx, 4
add rdx, 4
cmp rcx, r9
jbe 0x140079180
cmp rcx, r10
jae 0x1400791b4
nop word [rax + rax]
movzx eax, byte [rcx]
cmp byte [rdx + r11], al
jne 0x1400791b4
inc rcx
inc rdx
cmp rcx, r10
jb 0x1400791a0
mov rax, rbx
add rdx, 4
xor ecx, ecx
shr rax, 1
je 0x1400791c9
inc ecx
shr rax, 1
jne 0x1400791c2
mov r9, qword [rsp + 8]
imul ecx, ecx, 0x1e
mov eax, ecx
mov rcx, rdx
imul rcx, rcx, 0x87
sub rcx, rax
add rcx, 0x780
cmp qword [rsp + 0x58], rcx
jae 0x14007920e
mov qword [rsp + 0x58], rcx
mov r10, rdx
mov qword [rsp + 0x18], rdx
mov qword [rsp + 0x28], rdx
mov qword [rsp + 0x30], rbx
mov r11, rcx
mov qword [rsp], rcx
jmp 0x140079217
mov r10, qword [rsp + 0x18]
mov r11, qword [rsp]
cmp rdi, rsi
ja 0x1400790f0
mov r15, qword [rbp - 0x70]
mov rcx, qword [rbp - 0x30]
mov rdx, qword [rsp + 0x50]
mov r8, qword [rsp + 0x60]
mov rbx, qword [rbp + 0xa0]
mov eax, dword [rbx + 0x68]
and rax, rcx
mov dword [r14 + rax*4], r9d
inc word [r8 + r15*2]
mov r14, qword [rbp + 0xa0]
cmp r11, 0x7e4
jne 0x1400793fb
mov r12, qword [r14 + 0x78]
mov r13, qword [r12 + 0x28]
mov rax, r13
shr rax, 7
cmp qword [r12 + 0x30], rax
jb 0x1400793fb
mov esi, dword [rdx]
mov r15, qword [rbp - 0x18]
mov r14d, 2
imul esi, esi, 0x1e35a7bd
shr rsi, 0x11
and esi, 0x7ffe
nop word [rax + rax]
inc r13
mov qword [r12 + 0x28], r13
mov rax, qword [r15 + 0x20]
movzx ecx, byte [rsi + rax]
test cl, cl
je 0x1400793de
mov rax, qword [r15 + 0x18]
movzx r11d, cl
movzx edi, word [rax + rsi*2]
cmp r11, qword [rsp + 0x20]
ja 0x1400793da
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 0x140079319
sub rdx, rcx
nop dword [rax + rax]
mov eax, dword [rcx + rdx]
cmp dword [rcx], eax
jne 0x140079314
add rcx, 4
add r9, 4
cmp rcx, r8
jbe 0x140079300
mov rdx, qword [rsp + 0x50]
cmp rcx, r10
jae 0x140079334
nop
movzx eax, byte [rcx]
cmp byte [r9 + rdx], al
jne 0x140079334
inc rcx
inc r9
cmp rcx, r10
jb 0x140079320
mov eax, dword [r15 + 0xc]
add rax, r9
cmp rax, r11
jbe 0x1400793da
test r9, r9
je 0x1400793da
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 - 0x48]
shl rdx, cl
add rdx, rdi
add rdx, qword [rbp - 0x20]
lea r8, [rdx + rax + 1]
cmp r8, qword [rbp - 0x10]
ja 0x1400793da
mov rax, r8
xor ecx, ecx
shr rax, 1
je 0x14007939c
inc ecx
shr rax, 1
jne 0x140079395
imul ecx, ecx, 0x1e
mov eax, ecx
mov rcx, r9
imul rcx, rcx, 0x87
sub rcx, rax
add rcx, 0x780
cmp rcx, qword [rsp]
jb 0x1400793da
sub r11d, r9d
inc qword [r12 + 0x30]
mov qword [rsp + 0x28], r9
mov dword [rbp + 0x10], r11d
mov qword [rsp + 0x30], r8
mov qword [rsp], rcx
mov r11, rcx
jmp 0x1400793de
mov r11, qword [rsp]
mov rdx, qword [rsp + 0x50]
inc rsi
dec r14
jne 0x1400792a0
mov r9, qword [rsp + 8]
mov r14, qword [rbp + 0xa0]
mov r13, qword [rsp + 0x20]
cmp r13, 0x20
jb 0x1400795a4
mov rbx, qword [r14 + 0xa0]
cmp rbx, r9
ja 0x140079599
mov r10, qword [rbp + 0x80]
mov r12, qword [rbp + 0x88]
lea rsi, [rbx + 0x20]
nop dword [rax]
mov r8d, dword [r14 + 0x90]
mov rax, rbx
and rax, r12
mov r9d, r8d
movzx edx, byte [rax + r10]
mov rax, rsi
and r9d, 0x3fffffff
and rax, r12
inc edx
movzx ecx, byte [rax + r10]
mov eax, dword [r14 + 0xac]
imul edx, dword [r14 + 0xb0]
sub ecx, edx
imul eax, r8d
lea eax, [rcx + rax + 1]
mov dword [r14 + 0x90], eax
cmp r9d, 0x1000000
jae 0x140079585
mov rax, qword [r14 + 0x98]
mov ecx, r9d
mov r9d, dword [rax + r9*4]
mov dword [rax + rcx*4], ebx
mov rax, qword [rsp + 8]
cmp rbx, rax
jne 0x140079585
mov ecx, 0xffffffff
cmp r9, rcx
je 0x140079585
sub eax, r9d
mov edi, eax
cmp rdi, qword [rbp - 0x78]
ja 0x140079585
mov rcx, qword [rsp + 0x40]
and r9, r12
xor edx, edx
add rcx, r10
add r9, r10
lea r11, [rcx + r13]
lea r10, [r11 - 4]
cmp rcx, r10
ja 0x1400794fa
mov r8, r9
sub r8, rcx
mov eax, dword [rcx + r8]
cmp dword [rcx], eax
jne 0x1400794fa
add rcx, 4
add rdx, 4
cmp rcx, r10
jbe 0x1400794e5
cmp rcx, r11
jae 0x140079514
nop
movzx eax, byte [rcx]
cmp byte [rdx + r9], al
jne 0x140079514
inc rcx
inc rdx
cmp rcx, r11
jb 0x140079500
cmp rdx, 4
jb 0x14007957a
cmp rdx, qword [rsp + 0x28]
jbe 0x14007957a
mov rax, rdi
xor ecx, ecx
shr rax, 1
je 0x140079537
nop dword [rax + rax]
inc ecx
shr rax, 1
jne 0x140079530
mov r11, qword [rsp]
mov r10, qword [rbp + 0x80]
imul ecx, ecx, 0x1e
mov eax, ecx
mov rcx, rdx
imul rcx, rcx, 0x87
sub rcx, rax
add rcx, 0x780
cmp rcx, r11
jbe 0x140079585
mov qword [rsp + 0x28], rdx
mov qword [rsp + 0x30], rdi
mov r11, rcx
mov qword [rsp], rcx
mov dword [rbp + 0x10], 0
jmp 0x140079585
mov r10, qword [rbp + 0x80]
mov r11, qword [rsp]
mov r9, qword [rsp + 8]
inc rbx
inc rsi
cmp rbx, r9
jbe 0x140079430
lea rax, [r9 + 1]
mov qword [r14 + 0xa0], rax
mov rax, qword [rsp + 0x10]
add rax, 0xaf
cmp r11, rax
jb 0x140079609
mov ecx, dword [rbp - 0x58]
mov r15, qword [rsp + 0x28]
mov r10, qword [rsp + 0x30]
mov rax, qword [rbp + 0x10]
inc qword [rsp + 0x38]
inc ecx
mov rbx, r9
mov qword [rsp + 0x68], r15
mov qword [rsp + 0x70], r10
mov qword [rsp + 0x10], r11
mov qword [rbp - 0x80], rax
mov dword [rbp - 0x58], ecx
mov qword [rbp + 0x78], rbx
cmp ecx, 4
jge 0x140079617
lea rax, [r9 + 8]
cmp rax, qword [rbp - 0x50]
jae 0x140079617
mov r15, qword [rbp + 0x88]
dec r13
xor esi, esi
jmp 0x140078ddf
mov rbx, qword [rbp + 0x78]
mov r15, qword [rsp + 0x68]
mov r10, qword [rsp + 0x70]
mov rax, qword [rbp - 0x38]
mov rdx, qword [rbp - 0x68]
mov r11, qword [rbp + 0xa8]
lea r12, [rax + r15*2]
mov rax, qword [rbp - 0x60]
mov r9, rdx
add rax, rbx
add r12, rbx
cmp rax, rdx
mov qword [rbp - 0x78], r12
cmovb r9, rax
add r9, qword [rbp - 0x48]
cmp r10, r9
ja 0x1400796c9
movsxd rax, dword [r11]
movsxd r8, dword [r11 + 4]
lea rcx, [r10 + 3]
mov rdx, rcx
sub rcx, r8
sub rdx, rax
cmp r10, rax
jne 0x140079669
xor r8d, r8d
jmp 0x1400796cd
cmp r10, r8
jne 0x140079676
mov r8d, 1
jmp 0x1400796cd
cmp rdx, 7
jae 0x140079691
movzx ecx, dl
mov r8d, 0x9750468
shl cl, 2
sar r8, cl
and r8d, 0xf
jmp 0x1400796cd
cmp rcx, 7
jae 0x1400796a9
shl cl, 2
mov r8d, 0xfdb1ace
sar r8, cl
and r8d, 0xf
jmp 0x1400796cd
movsxd rax, dword [r11 + 8]
cmp r10, rax
jne 0x1400796ba
mov r8d, 2
jmp 0x1400796cd
movsxd rax, dword [r11 + 0xc]
mov r8d, 3
cmp r10, rax
je 0x1400796cd
lea r8, [r10 + 0xf]
cmp r10, r9
ja 0x140079761
test r8, r8
je 0x140079761
mov eax, dword [r11 + 8]
mov edx, dword [r11]
mov ecx, dword [rsp + 0x70]
mov dword [r11 + 0xc], eax
mov eax, dword [r11 + 4]
mov dword [r11], ecx
mov dword [r11 + 8], eax
mov dword [r11 + 4], edx
mov r9d, dword [r14 + 0x70]
cmp r9d, 4
jle 0x140079761
lea eax, [rcx - 1]
mov dword [r11 + 0x10], eax
lea eax, [rcx + 1]
mov dword [r11 + 0x14], eax
lea eax, [rcx - 2]
mov dword [r11 + 0x18], eax
lea eax, [rcx + 2]
mov dword [r11 + 0x1c], eax
lea eax, [rcx - 3]
mov dword [r11 + 0x20], eax
lea eax, [rcx + 3]
mov dword [r11 + 0x24], eax
cmp r9d, 0xa
jle 0x140079761
lea eax, [rdx - 1]
mov dword [r11 + 0x28], eax
lea eax, [rdx + 1]
mov dword [r11 + 0x2c], eax
lea eax, [rdx - 2]
mov dword [r11 + 0x30], eax
lea eax, [rdx + 2]
mov dword [r11 + 0x34], eax
lea eax, [rdx - 3]
mov dword [r11 + 0x38], eax
lea eax, [rdx + 3]
mov dword [r11 + 0x3c], eax
movzx eax, byte [rbp - 0x80]
mov r13, qword [rbp + 0xb8]
mov esi, dword [rsp + 0x68]
mov r12, qword [rsp + 0x38]
shl eax, 0x19
or eax, esi
mov dword [r13], r12d
mov dword [r13 + 4], eax
mov rax, qword [rbp + 0x98]
mov r11d, dword [rax + 0x3c]
mov edi, dword [rax + 0x38]
lea rax, [r11 + 0x10]
cmp r8, rax
jae 0x1400797ab
mov word [r13 + 0xe], r8w
mov dword [r13 + 8], 0
jmp 0x14007983a
lea ecx, [rdi + 2]
mov edx, 1
shl rdx, cl
xor ecx, ecx
sub rdx, r11
lea rbx, [rdx + r8 - 0x10]
mov rax, rbx
shr rax, 1
je 0x1400797cf
inc ecx
shr rax, 1
jne 0x1400797c8
lea eax, [rcx - 1]
mov r9, rbx
mov ecx, eax
mov r8d, eax
mov r10d, eax
shr r9, cl
sub r8, rdi
mov rcx, rdi
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, bx
mov ecx, r10d
add dx, ax
lea rax, [r9 + 2]
add dx, r11w
shl rax, cl
mov rcx, rdi
add dx, 0x10
sub rbx, rax
or dx, r8w
shr rbx, cl
mov word [r13 + 0xe], dx
mov dword [r13 + 8], ebx
mov rbx, qword [rbp + 0x78]
mov eax, 0x3ff
mov r10d, 0
test word [r13 + 0xe], ax
mov eax, dword [rbp - 0x80]
lea ecx, [rsi + rax]
sete r10b
movsxd r8, ecx
cmp r12, 6
jae 0x14007986b
movzx r9d, r12w
mov eax, reloc.WS2_32.dll_socket
jmp 0x1400798f0
cmp r12, 0x82
jae 0x1400798a0
lea r9, [r12 - 2]
xor ecx, ecx
mov rax, r9
shr rax, 1
je 0x14007988a
inc ecx
shr rax, 1
jne 0x140079883
dec ecx
mov eax, reloc.WS2_32.dll_socket
shr r9, cl
inc cx
add cx, cx
add r9w, cx
jmp 0x1400798f0
cmp r12, 0x842
jae 0x1400798c7
lea rcx, [r12 - 0x42]
xor eax, eax
shr rcx, 1
je 0x1400798bc
inc eax
shr rcx, 1
jne 0x1400798b5
lea r9d, [rax + 0xa]
mov eax, reloc.WS2_32.dll_socket
jmp 0x1400798f0
mov eax, reloc.WS2_32.dll_socket
cmp r12, 0x1842
jae 0x1400798db
lea r9d, [rax - 2]
jmp 0x1400798f0
cmp r12, 0x5842
jae 0x1400798ec
mov r9d, reloc.WS2_32.dll_shutdown
jmp 0x1400798f0
movzx r9d, ax
cmp r8, 0xa
jae 0x1400798fd
sub r8w, 2
jmp 0x140079952
cmp r8, 0x86
jae 0x14007992d
add r8, 0xfffffffffffffffa
xor ecx, ecx
mov rax, r8
shr rax, 1
je 0x14007991b
inc ecx
shr rax, 1
jne 0x140079914
dec ecx
shr r8, cl
add cx, 2
add cx, cx
add r8w, cx
jmp 0x140079952
cmp r8, 0x846
jae 0x14007994e
lea rcx, [r8 - 0x46]
xor eax, eax
shr rcx, 1
je 0x140079948
inc eax
shr rcx, 1
jne 0x140079941
lea r8d, [rax + 0xc]
jmp 0x140079952
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 0x140079989
cmp r9w, 8
jae 0x140079989
cmp r8w, 0x10
jae 0x140079989
cmp r8w, 8
jb 0x1400799bd
or dx, 0x40
jmp 0x1400799bd
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 [rsp + 0x70]
lea rdi, [r15 + rbx]
xor esi, esi
mov word [r13 + 0xc], dx
add qword [rax], r12
mov r12, qword [rbp - 0x40]
add r13, 0x10
lea r11, [rbx + 2]
cmp rdi, r12
mov rbx, r12
mov rax, r15
cmovb rbx, rdi
shr rax, 2
mov qword [rbp + 0xb8], r13
mov qword [rsp + 0x38], rsi
cmp r8, rax
jae 0x140079a25
lea rax, [r8*4]
sub r15, rax
add r15, qword [rbp + 0x78]
cmp r11, r15
cmova r15, r11
mov r11, r15
cmp rbx, r15
cmovb r11, rbx
cmp r11, rbx
jae 0x140079a92
mov rsi, qword [rbp + 0x80]
mov r15, qword [rbp + 0x88]
nop dword [rax + rax]
mov rcx, qword [r14 + 0x80]
mov edx, dword [r14 + 0x68]
mov r10, qword [r14 + 0x88]
mov rax, r11
and rax, r15
mov r9, qword [rax + rsi]
imul r9, qword [r14 + 0x60]
shr r9, 0x31
lea r8, [rcx + r9*2]
mov ecx, dword [r14 + 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 0x140079a40
mov rsi, qword [rsp + 0x38]
mov rbx, rdi
mov qword [rbp + 0x78], rbx
mov r13, qword [rbp + 0x80]
mov r15, qword [rbp + 0x88]
mov r11, qword [rbp - 0x50]
mov r9, qword [rbp + 0x98]
mov r8, qword [rbp - 0x68]
mov rcx, qword [rbp - 0x60]
lea rax, [rbx + 8]
cmp rax, r11
jb 0x140078640
mov r10, qword [rbp + 0xb8]
mov r12, qword [rsp + 0x128]
mov rdi, qword [rsp + 0x130]
mov rax, qword [rbp + 0xb0]
sub r10, qword [rbp - 0x28]
sub r11, rbx
add r11, rsi
sar r10, 4
mov qword [rax], r11
mov rax, qword [rbp + 0xc0]
add qword [rax], r10
add rsp, 0x138
pop r15
pop r14
pop r13
pop rsi
pop rbx
pop rbp
ret
mov rsi, qword [rsp + 0x38]
mov r12, qword [rbp - 0x78]
inc rbx
inc rsi
mov qword [rbp + 0x78], rbx
mov qword [rbp + 0x70], rbx
mov qword [rsp + 0x38], rsi
cmp rbx, r12
jbe 0x140079a99
mov rax, qword [rbp - 0x38]
mov r11, qword [rbp - 0x50]
lea rax, [r12 + rax*4]
sub r11, 7
cmp rbx, rax
jbe 0x140079be7
mov r13, qword [rbp + 0x80]
mov r15, qword [rbp + 0x88]
lea rax, [rbx + 0x10]
cmp rax, r11
cmovb r11, rax
cmp rbx, r11
jae 0x140079aa7
mov rax, r11
sub rax, rbx
dec rax
shr rax, 2
lea rsi, [rsi + rax*4 + 4]
mov qword [rsp + 0x38], rsi
nop dword [rax + rax]
mov rcx, qword [r14 + 0x80]
mov edx, dword [r14 + 0x68]
mov r10, qword [r14 + 0x88]
mov rax, rbx
and rax, r15
mov r9, qword [rax + r13]
imul r9, qword [r14 + 0x60]
shr r9, 0x31
lea r8, [rcx + r9*2]
mov ecx, dword [r14 + 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 0x140079b90
mov qword [rbp + 0x78], rbx
jmp 0x140079aa7
lea rax, [rbx + 8]
cmp rax, r11
cmovb r11, rax
cmp rbx, r11
jae 0x140079a99
mov r13, qword [rbp + 0x80]
mov r15, qword [rbp + 0x88]
mov rax, r11
sub rax, rbx
dec rax
shr rax, 1
lea rsi, [rsi + rax*2 + 2]
mov qword [rsp + 0x38], rsi
nop
mov rcx, qword [r14 + 0x80]
mov edx, dword [r14 + 0x68]
mov r10, qword [r14 + 0x88]
mov rax, rbx
and rax, r15
mov r9, qword [rax + r13]
imul r9, qword [r14 + 0x60]
shr r9, 0x31
lea r8, [rcx + r9*2]
mov ecx, dword [r14 + 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 0x140079c20
mov qword [rbp + 0x78], rbx
jmp 0x140079aa7