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

Disassembly:
push r15
push r14
push r13
push r12
push rbp
push rdi
push rsi
push rbx
sub rsp, 0x48
mov rsi, qword [rcx]
mov rbx, qword [rcx + 8]
mov r12, rcx
mov edi, edx
sub rbx, rsi
je 0x42f170
movzx r10d, byte [rsi]
mov byte [rcx + 0x3c], r10b
cmp rbx, 1
je 0x42f170
movzx eax, byte [rsi + 1]
mov edx, 2
xor r8d, r8d
mov byte [rcx + 0x3d], al
xor ecx, ecx
jmp 0x42f033
mov rdx, rax
cmp rdx, rbx
jae 0x42f170
lea rax, [rdx + 1]
movzx r11d, byte [rsi + rax - 1]
mov r9, r11
and r9d, 0x7f
shl r9, cl
add ecx, 7
or r8, r9
test r11b, r11b
js 0x42f030
lea rcx, [rdx + 0x21]
mov qword [r12 + 0x40], r8
cmp rcx, rbx
ja 0x42f170
add rax, rsi
mov dword [r12 + 0x1c], ecx
mov qword [r12 + 0x48], rax
lea rax, [rdx + 0x25]
mov qword [r12 + 0x50], 0x20
cmp rax, rbx
ja 0x42f170
mov r8d, dword [r12 + 0x18]
cmp r8d, 7
je 0x42f1b0
cmp r8d, 8
je 0x42f160
mov dword [r12 + 0x20], eax
xor ecx, ecx
xor edx, edx
nop word [rax + rax]
cmp rbx, rax
jbe 0x42f170
add rax, 1
movzx r10d, byte [rsi + rax - 1]
mov r9, r10
and r9d, 0x7f
shl r9, cl
add ecx, 7
or rdx, r9
test r10b, r10b
js 0x42f0b8
mov qword [r12 + 0x70], rdx
cmp r8d, 9
jne 0x42f178
xor ecx, ecx
xor ebp, ebp
jmp 0x42f0fb
mov rax, rdx
cmp rbx, rax
jbe 0x42f170
lea rdx, [rax + 1]
movzx r10d, byte [rsi + rdx - 1]
mov r9, r10
and r9d, 0x7f
shl r9, cl
add ecx, 7
or rbp, r9
test r10b, r10b
js 0x42f0f8
mov qword [r12 + 0x80], rbp
cmp rbp, 1
jne 0x42f147
cmp rbx, rdx
jbe 0x42f170
movzx edx, byte [rsi + rdx]
mov byte [r12 + 0x88], dl
cmp dl, 0xff
je 0x42f1f0
xor eax, eax
add rsp, 0x48
pop rbx
pop rsi
pop rdi
pop rbp
pop r12
pop r13
pop r14
pop r15
ret
lea rax, [rdx + 0x9d]
cmp rbx, rax
jae 0x42f0a9
call fcn.008b0140
nop dword [rax]
xor ecx, ecx
xor r10d, r10d
nop dword [rax]
cmp rax, rbx
jae 0x42f170
add rax, 1
movzx r9d, byte [rsi + rax - 1]
mov rdx, r9
and edx, 0x7f
shl rdx, cl
add ecx, 7
or r10, rdx
test r9b, r9b
js 0x42f180
mov qword [r12 + 0x78], r10
jmp 0x42f0ef
cmp r10b, 0x11
jbe 0x42f0a9
lea rcx, [rdx + 0x65]
cmp rbx, rcx
jb 0x42f170
mov qword [r12 + 0x60], 0x40
add rax, rsi
mov qword [r12 + 0x58], rax
lea rax, [rdx + 0x67]
cmp rbx, rax
jb 0x42f170
movzx edx, word [rsi + rdx + 0x65]
mov word [r12 + 0x68], dx
jmp 0x42f0a9
add rax, 2
xor ecx, ecx
xor r14d, r14d
nop dword [rax]
cmp rax, rbx
jae 0x42f170
add rax, 1
movzx r9d, byte [rsi + rax - 1]
mov rdx, r9
and edx, 0x7f
shl rdx, cl
add ecx, 7
or r14, rdx
test r9b, r9b
js 0x42f200
mov qword [r12 + 0x90], r14
xor ecx, ecx
xor r9d, r9d
nop dword [rax]
cmp rax, rbx
jae 0x42f170
add rax, 1
movzx r10d, byte [rsi + rax - 1]
mov rdx, r10
and edx, 0x7f
shl rdx, cl
add ecx, 7
or r9, rdx
test r10b, r10b
js 0x42f238
mov qword [r12 + 0x98], r9
cmp r8d, 8
je 0x42f4a0
cmp r9, 1
jne 0x42f147
xor ecx, ecx
xor r13d, r13d
jmp 0x42f28b
mov rax, r10
cmp rbx, rax
jbe 0x42f170
lea r10, [rax + 1]
movzx r11d, byte [rsi + r10 - 1]
mov rdx, r11
and edx, 0x7f
shl rdx, cl
add ecx, 7
or r13, rdx
test r11b, r11b
js 0x42f288
mov qword [r12 + 0xa0], r13
cmp rbx, r10
jbe 0x42f170
movzx ecx, byte [rsi + r10]
lea edx, [rcx - 2]
mov byte [r12 + 0xa8], cl
cmp dl, 1
ja 0x42f147
lea r10, [rax + 2]
lea rdx, [rax + 0x22]
mov dword [r12 + 0x28], r10d
cmp rbx, rdx
jb 0x42f170
mov qword [r12 + 0xb8], 0x20
add r10, rsi
mov qword [r12 + 0xb0], r10
cmp r8d, 8
je 0x42f4b0
cmp cl, 3
je 0x42f6f0
cmp r8d, 9
je 0x42f70e
xor ecx, ecx
xor r11d, r11d
nop dword [rax + rax]
cmp rbx, rdx
jbe 0x42f170
add rdx, 1
movzx r9d, byte [rsi + rdx - 1]
mov rax, r9
and eax, 0x7f
shl rax, cl
add ecx, 7
or r11, rax
test r9b, r9b
js 0x42f330
mov eax, edx
mov qword [r12 + 0xc8], r11
mov qword [rsp + 0x28], rax
lea r15, [rsi + rax]
lea rax, [rdx + r11]
mov dword [r12 + 0x2c], edx
mov qword [rsp + 0x38], rax
cmp rbx, rax
jb 0x42f170
mov byte [rsp + 0x37], 1
xor r9d, r9d
test r11, r11
je 0x42f408
xor ecx, ecx
xor r13d, r13d
jmp 0x42f39b
mov r9, rax
cmp r9, r11
jae 0x42f170
lea rax, [r9 + 1]
movzx r10d, byte [r15 + rax - 1]
mov rdx, r10
and edx, 0x7f
shl rdx, cl
add ecx, 7
or r13, rdx
test r10b, r10b
js 0x42f398
cmp r13, 2
je 0x42f688
cmp r13, 3
je 0x42f620
cmp r13, 1
jne 0x42f147
cmp byte [rsp + 0x37], 0
je 0x42f3f1
add rax, qword [rsp + 0x28]
mov dword [r12 + 0x30], eax
add r9, 0x21
cmp r9, r11
ja 0x42f170
mov byte [rsp + 0x37], 0
cmp r9, r11
jb 0x42f38e
mov rax, qword [rsp + 0x38]
cmp r8d, 8
je 0x42f5b0
mov dword [r12 + 0x24], eax
cmp rbx, rax
je 0x42f170
movzx edx, byte [rsi + rax]
lea r13, [rax + 1]
cmp r8d, 9
je 0x42f749
test dl, dl
jne 0x42f147
mov rcx, qword [rsp + 0x38]
mov eax, ecx
cmp rcx, rax
jne 0x42f147
cmp byte [rsi + rcx], 0
jne 0x42f147
xor ecx, ecx
xor r8d, r8d
cmp rbx, r13
jbe 0x42f170
add r13, 1
movzx edx, byte [rsi + r13 - 1]
mov rax, rdx
and eax, 0x7f
shl rax, cl
add ecx, 7
or r8, rax
test dl, dl
js 0x42f45e
mov qword [r12 + 0xf0], r8
test dil, dil
jne 0x42f773
mov eax, 1
jmp 0x42f149
cmp r9, 1
ja 0x42f27b
jmp 0x42f147
cmp cl, 2
jne 0x42f147
xor ecx, ecx
xor r11d, r11d
nop
cmp rbx, rdx
je 0x42f170
add rdx, 1
movzx r10d, byte [rsi + rdx - 1]
mov rax, r10
and eax, 0x7f
shl rax, cl
add ecx, 7
or r11, rax
test r10b, r10b
js 0x42f4c0
add r11, rdx
cmp rbx, r11
jb 0x42f170
je 0x42f170
movzx eax, byte [rsi + r11]
lea rdx, [r11 + 1]
mov byte [r12 + 0xc0], al
cmp r9, 1
jbe 0x42f326
mov r10d, 1
jmp 0x42f523
mov rdx, rax
cmp rbx, rdx
jbe 0x42f170
cmp byte [rsi + rdx], 0
lea rax, [rdx + 1]
js 0x42f520
cmp rbx, rax
jbe 0x42f170
cmp byte [rsi + rax], 2
jne 0x42f147
add rdx, 0x22
cmp rbx, rdx
jb 0x42f170
xor ecx, ecx
xor r13d, r13d
nop dword [rax + rax]
cmp rbx, rdx
je 0x42f170
add rdx, 1
movzx r11d, byte [rsi + rdx - 1]
mov rax, r11
and eax, 0x7f
shl rax, cl
add ecx, 7
or r13, rax
test r11b, r11b
js 0x42f560
add rdx, r13
cmp rbx, rdx
jb 0x42f170
je 0x42f170
add r10, 1
add rdx, 1
cmp r10, r9
jne 0x42f523
jmp 0x42f326
cmp rbx, rax
je 0x42f170
add rax, 1
cmp byte [rsi + rax - 1], 0
js 0x42f5b0
nop dword [rax]
cmp rbx, rax
jbe 0x42f170
add rax, 1
cmp byte [rsi + rax - 1], 0
js 0x42f5c8
nop dword [rax]
mov rdx, rax
cmp rbx, rax
jbe 0x42f170
cmp byte [rsi + rdx], 0
lea rax, [rax + 1]
js 0x42f5e0
mov qword [rsp + 0x38], rdx
mov dword [r12 + 0x24], eax
cmp rbx, rax
jbe 0x42f170
mov r13, rdx
mov qword [rsp + 0x38], rax
movzx edx, byte [rsi + rax]
add r13, 2
jmp 0x42f437
xor ecx, ecx
xor r10d, r10d
nop dword [rax]
cmp rax, r11
jae 0x42f170
add rax, 1
movzx r9d, byte [r15 + rax - 1]
mov rdx, r9
and edx, 0x7f
shl rdx, cl
add ecx, 7
or r10, rdx
test r9b, r9b
js 0x42f628
mov rcx, qword [rsp + 0x28]
lea r9, [rax + r10]
lea rdx, [rax + rcx]
mov dword [r12 + 0x38], edx
cmp r9, r11
ja 0x42f170
add rax, r15
mov qword [r12 + 0xe8], r10
mov qword [r12 + 0xe0], rax
jmp 0x42f403
xor ecx, ecx
xor r10d, r10d
nop dword [rax]
cmp rax, r11
jae 0x42f170
add rax, 1
movzx r9d, byte [r15 + rax - 1]
mov rdx, r9
and edx, 0x7f
shl rdx, cl
add ecx, 7
or r10, rdx
test r9b, r9b
js 0x42f690
mov rcx, qword [rsp + 0x28]
lea r9, [rax + r10]
lea rdx, [rax + rcx]
mov dword [r12 + 0x34], edx
cmp r9, r11
ja 0x42f170
add rax, r15
mov qword [r12 + 0xd8], r10
mov qword [r12 + 0xd0], rax
jmp 0x42f403
cmp rbx, rdx
je 0x42f170
movzx edx, byte [rsi + rdx]
mov byte [r12 + 0xc0], dl
lea rdx, [rax + 0x23]
jmp 0x42f31c
xor ecx, ecx
xor r10d, r10d
nop dword [rax + rax]
cmp rbx, rdx
jbe 0x42f170
add rdx, 1
movzx r9d, byte [rsi + rdx - 1]
mov rax, r9
and eax, 0x7f
shl rax, cl
add ecx, 7
or r10, rax
test r9b, r9b
js 0x42f718
mov qword [r12 + 0x78], r10
jmp 0x42f326
movabs rax, 0x4fa4fa4fa4fa4fa5
imul r14, rax
movabs rax, 0x5b05b05b05b05b
ror r14, 4
cmp r14, rax
ja 0x42f437
jmp 0x42f495
lea rdx, [r8 + 1]
lea rcx, [r12 + 0xf8]
shl rdx, 5
call fcn.008743d0
mov rax, qword [r12]
mov edx, dword [r12 + 0x24]
mov ecx, dword [r12 + 0x20]
mov r8, qword [r12 + 0xf8]
add rdx, rax
add rcx, rax
call fcn.0042e830
cmp qword [r12 + 0xf0], 0
je 0x42f7f4
mov rdx, r13
add r13, 0x20
cmp rbx, r13
jb 0x42f170
add rdx, rsi
mov rax, rbp
add rbp, 1
movdqu xmm0, xmmword [rdx]
shl rax, 5
add rax, qword [r12 + 0xf8]
movups xmmword [rax], xmm0
movdqu xmm1, xmmword [rdx + 0x10]
movups xmmword [rax + 0x10], xmm1
cmp qword [r12 + 0xf0], rbp
jae 0x42f7b4
mov rcx, r12
call fcn.0042ed20
mov eax, edi
jmp 0x42f149