Function at 0x1400784a0
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 0x140078521
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 0x1400785c9
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 0x1400785c1
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 0x140079a8e
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 0x140078688
cmp rbx, 1
jb 0x140078645
lea rax, [rbx - 1]
and rax, r15
movzx edi, byte [rax + r13]
jmp 0x140078648
xor dil, dil
mov byte [rbp + 0x70], dil
cmp rbx, 2
jb 0x14007865e
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 0x14007884f
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 0x140078839
cmp rdi, r11
ja 0x140078839
lea rax, [r10 + r9]
and rdx, r15
cmp rax, r15
ja 0x140078835
lea rax, [rdx + r10]
cmp rax, r15
ja 0x140078835
movzx eax, byte [rax + r13]
lea rcx, [r9 + r13]
cmp byte [r10 + rcx], al
jne 0x140078835
lea r10, [rcx + r14]
xor r8d, r8d
lea r11, [rdx + r13]
lea r9, [r10 - 4]
cmp rcx, r9
ja 0x14007878a
mov rdx, r11
sub rdx, rcx
mov eax, dword [rdx + rcx]
cmp dword [rcx], eax
jne 0x14007878a
add rcx, 4
add r8, 4
cmp rcx, r9
jbe 0x140078776
cmp rcx, r10
jae 0x1400787a4
nop
movzx eax, byte [rcx]
cmp byte [r8 + r11], al
jne 0x1400787a4
inc rcx
inc r8
cmp rcx, r10
jb 0x140078790
cmp r8, 3
jae 0x1400787b5
cmp r8, 2
jne 0x140078827
cmp rbx, r8
jae 0x140078827
mov r11, qword [rsp + 0x30]
mov r9, r8
imul r9, r9, 0x87
add r9, 0x78f
cmp r11, r9
jae 0x140078827
test rbx, rbx
je 0x1400787f3
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 0x140078898
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 0x140078839
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 0x140078710
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 0x1400788a4
mov esi, ecx
sub rsi, rax
jmp 0x1400788a6
mov r10, qword [rsp + 0x18]
mov r9, qword [rsp + 8]
jmp 0x140078839
xor esi, esi
mov r13d, dword [rdx]
mov rdi, rcx
cmp rcx, rsi
jbe 0x1400789f9
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 0x1400789de
mov rcx, qword [rbp + 0x88]
lea rax, [r10 + r9]
and rdx, rcx
cmp rax, rcx
ja 0x1400789d5
lea rax, [rdx + r10]
cmp rax, rcx
ja 0x1400789d5
mov r8, qword [rbp + 0x80]
movzx eax, byte [rax + r8]
cmp byte [r10 + r14], al
jne 0x1400789d5
cmp r13d, dword [rdx + r8]
jne 0x1400789d5
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 0x14007895a
mov r8, r11
sub r8, rcx
mov eax, dword [rcx + r8]
cmp dword [rcx], eax
jne 0x14007895a
add rcx, 4
add rdx, 4
cmp rcx, r9
jbe 0x140078945
cmp rcx, r10
jae 0x140078974
nop
movzx eax, byte [rcx]
cmp byte [rdx + r11], al
jne 0x140078974
inc rcx
inc rdx
cmp rcx, r10
jb 0x140078960
mov rax, rbx
add rdx, 4
xor ecx, ecx
shr rax, 1
je 0x140078989
inc ecx
shr rax, 1
jne 0x140078982
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 0x1400789d0
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 0x1400789d5
mov r10, qword [rsp + 0x18]
cmp rdi, rsi
ja 0x1400788c0
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 0x140078bbd
mov r12, qword [r14 + 0x78]
mov r13, qword [r12 + 0x28]
mov rax, r13
shr rax, 7
cmp qword [r12 + 0x30], rax
jb 0x140078bbd
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 0x140078ba1
mov rax, qword [r15 + 0x18]
movzx r11d, cl
movzx edi, word [rax + rsi*2]
cmp r11, qword [rsp + 0x20]
ja 0x140078b9c
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 0x140078ad9
sub rdx, rcx
nop dword [rax + rax]
mov eax, dword [rcx + rdx]
cmp dword [rcx], eax
jne 0x140078ad4
add rcx, 4
add r9, 4
cmp rcx, r8
jbe 0x140078ac0
mov rdx, qword [rsp + 0x28]
cmp rcx, r10
jae 0x140078af4
nop
movzx eax, byte [rcx]
cmp byte [r9 + rdx], al
jne 0x140078af4
inc rcx
inc r9
cmp rcx, r10
jb 0x140078ae0
mov eax, dword [r15 + 0xc]
add rax, r9
cmp rax, r11
jbe 0x140078b9c
test r9, r9
je 0x140078b9c
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 0x140078b9c
mov rax, r8
xor ecx, ecx
shr rax, 1
je 0x140078b5c
inc ecx
shr rax, 1
jne 0x140078b55
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 0x140078b9c
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 0x140078ba1
mov r11, qword [rsp + 0x10]
mov rdx, qword [rsp + 0x28]
inc rsi
dec r14
jne 0x140078a60
mov r14, qword [rbp + 0xa0]
mov rbx, qword [rbp + 0x78]
mov r13, qword [rsp + 0x20]
mov r15, qword [rbp + 0x88]
cmp r13, 0x20
jb 0x140078d7a
mov rbx, qword [r14 + 0xa0]
cmp rbx, qword [rbp + 0x78]
ja 0x140078d6b
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 0x140078d56
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 0x140078d56
mov eax, 0xffffffff
cmp r8, rax
je 0x140078d56
mov edi, r9d
sub edi, r8d
cmp rdi, r13
ja 0x140078d56
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 0x140078cc8
mov r9, r8
sub r9, rcx
mov eax, dword [rcx + r9]
cmp dword [rcx], eax
jne 0x140078cc8
add rcx, 4
add rdx, 4
cmp rcx, r10
jbe 0x140078cb3
cmp rcx, r11
jae 0x140078ce4
nop dword [rax]
movzx eax, byte [rcx]
cmp byte [rdx + r8], al
jne 0x140078ce4
inc rcx
inc rdx
cmp rcx, r11
jb 0x140078cd0
cmp rdx, 4
jb 0x140078d4a
cmp rdx, qword [rsp + 0x68]
jbe 0x140078d4a
mov rcx, rdi
xor eax, eax
shr rcx, 1
je 0x140078d07
nop dword [rax + rax]
inc eax
shr rcx, 1
jne 0x140078d00
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 0x140078d56
mov qword [rsp + 0x68], rdx
mov qword [rsp + 0x70], rdi
mov r11, rcx
mov qword [rsp + 0x10], rcx
mov dword [rbp - 0x80], 0
jmp 0x140078d56
mov r11, qword [rsp + 0x10]
mov r10, qword [rbp + 0x80]
inc rbx
inc rsi
cmp rbx, qword [rbp + 0x78]
jbe 0x140078c00
mov r13, qword [rsp + 0x20]
mov rbx, qword [rbp + 0x78]
lea rax, [rbx + 1]
mov qword [r14 + 0xa0], rax
cmp r11, 0x7e4
jbe 0x140079ac1
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 0x140078db5
mov rax, qword [rsp + 0x68]
mov r10, r13
dec rax
cmp rax, r13
cmovb r10, rax
jmp 0x140078db8
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 0x140078e48
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 0x140078e4f
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 0x140079020
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 0x140079004
cmp rdi, r13
ja 0x140079004
lea rax, [r10 + r12]
and rdx, rcx
cmp rax, rcx
ja 0x140078ffd
lea rax, [rdx + r10]
cmp rax, rcx
ja 0x140078ffd
movzx eax, byte [rax + r15]
lea rcx, [r12 + r15]
cmp byte [r10 + rcx], al
jne 0x140078ff6
lea r10, [rcx + r14]
xor r8d, r8d
lea r11, [rdx + r15]
lea r9, [r10 - 4]
cmp rcx, r9
ja 0x140078f3c
mov rdx, r11
sub rdx, rcx
mov eax, dword [rcx + rdx]
cmp dword [rcx], eax
jne 0x140078f3c
add rcx, 4
add r8, 4
cmp rcx, r9
jbe 0x140078f28
cmp rcx, r10
jae 0x140078f55
movzx eax, byte [rcx]
cmp byte [r8 + r11], al
jne 0x140078f55
inc rcx
inc r8
cmp rcx, r10
jb 0x140078f41
cmp r8, 3
jae 0x140078f6e
cmp r8, 2
jne 0x140078fe8
cmp rbx, r8
jae 0x140078fe8
mov r11, qword [rsp + 0x58]
mov r9, r8
imul r9, r9, 0x87
add r9, 0x78f
cmp r11, r9
jae 0x140078fe8
test rbx, rbx
je 0x140078fac
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 0x14007906b
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 0x140079004
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 0x140078ec2
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 0x14007907b
mov esi, ecx
sub rsi, rax
jmp 0x14007907d
mov r10, qword [rsp + 0x18]
mov r9, qword [rsp + 8]
mov r11, qword [rsp]
jmp 0x140079004
xor esi, esi
mov r13d, dword [rdx]
mov rdi, rcx
cmp rcx, rsi
jbe 0x1400791e9
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 0x1400791d0
mov rcx, qword [rbp + 0x88]
mov rax, qword [rsp + 0x40]
add rax, r10
and rdx, rcx
cmp rax, rcx
ja 0x1400791c7
lea rax, [rdx + r10]
cmp rax, rcx
ja 0x1400791c7
mov r8, qword [rbp + 0x80]
movzx eax, byte [rax + r8]
cmp byte [r10 + r15], al
jne 0x1400791c7
cmp r13d, dword [rdx + r8]
jne 0x1400791c7
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 0x140079145
mov r8, r11
sub r8, rcx
nop dword [rax]
mov eax, dword [rcx + r8]
cmp dword [rcx], eax
jne 0x140079145
add rcx, 4
add rdx, 4
cmp rcx, r9
jbe 0x140079130
cmp rcx, r10
jae 0x140079164
nop word [rax + rax]
movzx eax, byte [rcx]
cmp byte [rdx + r11], al
jne 0x140079164
inc rcx
inc rdx
cmp rcx, r10
jb 0x140079150
mov rax, rbx
add rdx, 4
xor ecx, ecx
shr rax, 1
je 0x140079179
inc ecx
shr rax, 1
jne 0x140079172
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 0x1400791be
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 0x1400791c7
mov r10, qword [rsp + 0x18]
mov r11, qword [rsp]
cmp rdi, rsi
ja 0x1400790a0
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 0x1400793ab
mov r12, qword [r14 + 0x78]
mov r13, qword [r12 + 0x28]
mov rax, r13
shr rax, 7
cmp qword [r12 + 0x30], rax
jb 0x1400793ab
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 0x14007938e
mov rax, qword [r15 + 0x18]
movzx r11d, cl
movzx edi, word [rax + rsi*2]
cmp r11, qword [rsp + 0x20]
ja 0x14007938a
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 0x1400792c9
sub rdx, rcx
nop dword [rax + rax]
mov eax, dword [rcx + rdx]
cmp dword [rcx], eax
jne 0x1400792c4
add rcx, 4
add r9, 4
cmp rcx, r8
jbe 0x1400792b0
mov rdx, qword [rsp + 0x50]
cmp rcx, r10
jae 0x1400792e4
nop
movzx eax, byte [rcx]
cmp byte [r9 + rdx], al
jne 0x1400792e4
inc rcx
inc r9
cmp rcx, r10
jb 0x1400792d0
mov eax, dword [r15 + 0xc]
add rax, r9
cmp rax, r11
jbe 0x14007938a
test r9, r9
je 0x14007938a
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 0x14007938a
mov rax, r8
xor ecx, ecx
shr rax, 1
je 0x14007934c
inc ecx
shr rax, 1
jne 0x140079345
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 0x14007938a
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 0x14007938e
mov r11, qword [rsp]
mov rdx, qword [rsp + 0x50]
inc rsi
dec r14
jne 0x140079250
mov r9, qword [rsp + 8]
mov r14, qword [rbp + 0xa0]
mov r13, qword [rsp + 0x20]
cmp r13, 0x20
jb 0x140079554
mov rbx, qword [r14 + 0xa0]
cmp rbx, r9
ja 0x140079549
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 0x140079535
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 0x140079535
mov ecx, 0xffffffff
cmp r9, rcx
je 0x140079535
sub eax, r9d
mov edi, eax
cmp rdi, qword [rbp - 0x78]
ja 0x140079535
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 0x1400794aa
mov r8, r9
sub r8, rcx
mov eax, dword [rcx + r8]
cmp dword [rcx], eax
jne 0x1400794aa
add rcx, 4
add rdx, 4
cmp rcx, r10
jbe 0x140079495
cmp rcx, r11
jae 0x1400794c4
nop
movzx eax, byte [rcx]
cmp byte [rdx + r9], al
jne 0x1400794c4
inc rcx
inc rdx
cmp rcx, r11
jb 0x1400794b0
cmp rdx, 4
jb 0x14007952a
cmp rdx, qword [rsp + 0x28]
jbe 0x14007952a
mov rax, rdi
xor ecx, ecx
shr rax, 1
je 0x1400794e7
nop dword [rax + rax]
inc ecx
shr rax, 1
jne 0x1400794e0
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 0x140079535
mov qword [rsp + 0x28], rdx
mov qword [rsp + 0x30], rdi
mov r11, rcx
mov qword [rsp], rcx
mov dword [rbp + 0x10], 0
jmp 0x140079535
mov r10, qword [rbp + 0x80]
mov r11, qword [rsp]
mov r9, qword [rsp + 8]
inc rbx
inc rsi
cmp rbx, r9
jbe 0x1400793e0
lea rax, [r9 + 1]
mov qword [r14 + 0xa0], rax
mov rax, qword [rsp + 0x10]
add rax, 0xaf
cmp r11, rax
jb 0x1400795b9
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 0x1400795c7
lea rax, [r9 + 8]
cmp rax, qword [rbp - 0x50]
jae 0x1400795c7
mov r15, qword [rbp + 0x88]
dec r13
xor esi, esi
jmp 0x140078d8f
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 0x140079679
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 0x140079619
xor r8d, r8d
jmp 0x14007967d
cmp r10, r8
jne 0x140079626
mov r8d, 1
jmp 0x14007967d
cmp rdx, 7
jae 0x140079641
movzx ecx, dl
mov r8d, 0x9750468
shl cl, 2
sar r8, cl
and r8d, 0xf
jmp 0x14007967d
cmp rcx, 7
jae 0x140079659
shl cl, 2
mov r8d, 0xfdb1ace
sar r8, cl
and r8d, 0xf
jmp 0x14007967d
movsxd rax, dword [r11 + 8]
cmp r10, rax
jne 0x14007966a
mov r8d, 2
jmp 0x14007967d
movsxd rax, dword [r11 + 0xc]
mov r8d, 3
cmp r10, rax
je 0x14007967d
lea r8, [r10 + 0xf]
cmp r10, r9
ja 0x140079711
test r8, r8
je 0x140079711
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 0x140079711
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 0x140079711
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 0x14007975b
mov word [r13 + 0xe], r8w
mov dword [r13 + 8], 0
jmp 0x1400797ea
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 0x14007977f
inc ecx
shr rax, 1
jne 0x140079778
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 0x14007981b
movzx r9d, r12w
mov eax, reloc.WS2_32.dll_socket
jmp 0x1400798a0
cmp r12, 0x82
jae 0x140079850
lea r9, [r12 - 2]
xor ecx, ecx
mov rax, r9
shr rax, 1
je 0x14007983a
inc ecx
shr rax, 1
jne 0x140079833
dec ecx
mov eax, reloc.WS2_32.dll_socket
shr r9, cl
inc cx
add cx, cx
add r9w, cx
jmp 0x1400798a0
cmp r12, 0x842
jae 0x140079877
lea rcx, [r12 - 0x42]
xor eax, eax
shr rcx, 1
je 0x14007986c
inc eax
shr rcx, 1
jne 0x140079865
lea r9d, [rax + 0xa]
mov eax, reloc.WS2_32.dll_socket
jmp 0x1400798a0
mov eax, reloc.WS2_32.dll_socket
cmp r12, 0x1842
jae 0x14007988b
lea r9d, [rax - 2]
jmp 0x1400798a0
cmp r12, 0x5842
jae 0x14007989c
mov r9d, reloc.WS2_32.dll_shutdown
jmp 0x1400798a0
movzx r9d, ax
cmp r8, 0xa
jae 0x1400798ad
sub r8w, 2
jmp 0x140079902
cmp r8, 0x86
jae 0x1400798dd
add r8, 0xfffffffffffffffa
xor ecx, ecx
mov rax, r8
shr rax, 1
je 0x1400798cb
inc ecx
shr rax, 1
jne 0x1400798c4
dec ecx
shr r8, cl
add cx, 2
add cx, cx
add r8w, cx
jmp 0x140079902
cmp r8, 0x846
jae 0x1400798fe
lea rcx, [r8 - 0x46]
xor eax, eax
shr rcx, 1
je 0x1400798f8
inc eax
shr rcx, 1
jne 0x1400798f1
lea r8d, [rax + 0xc]
jmp 0x140079902
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 0x140079939
cmp r9w, 8
jae 0x140079939
cmp r8w, 0x10
jae 0x140079939
cmp r8w, 8
jb 0x14007996d
or dx, 0x40
jmp 0x14007996d
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 0x1400799d5
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 0x140079a42
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 0x1400799f0
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 0x1400785f0
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 0x140079a49
mov rax, qword [rbp - 0x38]
mov r11, qword [rbp - 0x50]
lea rax, [r12 + rax*4]
sub r11, 7
cmp rbx, rax
jbe 0x140079b97
mov r13, qword [rbp + 0x80]
mov r15, qword [rbp + 0x88]
lea rax, [rbx + 0x10]
cmp rax, r11
cmovb r11, rax
cmp rbx, r11
jae 0x140079a57
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 0x140079b40
mov qword [rbp + 0x78], rbx
jmp 0x140079a57
lea rax, [rbx + 8]
cmp rax, r11
cmovb r11, rax
cmp rbx, r11
jae 0x140079a49
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 0x140079bd0
mov qword [rbp + 0x78], rbx
jmp 0x140079a57