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

Disassembly:
push rsi
sub rsp, 0x30
mov r11, qword [rcx]
mov rsi, rcx
mov r9, qword [rcx + 8]
sub r9, r11
je 0x140044999
movzx eax, byte [r11]
mov byte [rcx + 0x3c], al
cmp r9, 1
jbe 0x14004499f
movzx eax, byte [r11 + 1]
mov r8d, 2
mov qword [rsp + 0x48], rbp
xor ebp, ebp
mov byte [rcx + 0x3d], al
mov r10d, ebp
mov ecx, ebp
cmp r9, r8
jbe 0x140044957
nop dword [rax]
movzx edx, byte [r8 + r11]
inc r8
mov eax, edx
and eax, 0x7f
shl rax, cl
add ecx, 7
or r10, rax
test dl, dl
jns 0x140044255
cmp r8, r9
jae 0x140044957
jmp 0x140044230
lea rax, [r8 + 0x20]
mov qword [rsi + 0x40], r10
cmp rax, r9
ja 0x1400449a5
lea rax, [r8 + r11]
add r8, 0x20
mov qword [rsi + 0x48], rax
mov qword [rsi + 0x50], 0x20
mov dword [rsi + 0x1c], r8d
add r8, 4
cmp r8, r9
ja 0x1400449ab
mov eax, dword [rsi + 0x18]
mov r10, r8
cmp eax, 7
jne 0x1400442d5
cmp byte [rsi + 0x3c], 0x12
jb 0x1400442ea
lea rax, [r8 + 0x40]
cmp rax, r9
ja 0x1400449b1
lea rax, [r8 + r11]
lea r10, [r8 + 0x42]
mov qword [rsi + 0x58], rax
mov qword [rsi + 0x60], 0x40
cmp r10, r9
ja 0x1400449b7
movzx eax, word [r8 + r11 + 0x40]
mov r8, r10
mov word [rsi + 0x68], ax
jmp 0x1400442ea
cmp eax, 8
jne 0x1400442ea
add r8, 0x78
cmp r8, r9
ja 0x1400449bd
mov r10, r8
mov qword [rsp + 0x40], rbx
mov ecx, ebp
mov rbx, rbp
mov dword [rsi + 0x20], r8d
nop dword [rax + rax]
cmp r10, r9
jae 0x140044993
movzx edx, byte [r8 + r11]
inc r8
mov eax, edx
mov r10, r8
and eax, 0x7f
shl rax, cl
add ecx, 7
or rbx, rax
test dl, dl
js 0x140044300
mov qword [rsp + 0x50], rdi
mov edi, dword [rsi + 0x18]
mov qword [rsi + 0x70], rbx
cmp edi, 9
je 0x14004437c
mov rbx, rbp
mov ecx, ebp
cmp r8, r9
jae 0x14004495d
nop word [rax + rax]
movzx edx, byte [r8 + r11]
inc r8
mov eax, edx
mov r10, r8
and eax, 0x7f
shl rax, cl
add ecx, 7
or rbx, rax
test dl, dl
jns 0x140044378
cmp r8, r9
jae 0x14004495d
jmp 0x140044350
mov qword [rsi + 0x78], rbx
mov rbx, rbp
mov ecx, ebp
cmp r10, r9
jae 0x140044963
nop word [rax + rax]
movzx edx, byte [r8 + r11]
inc r8
mov eax, edx
and eax, 0x7f
shl rax, cl
add ecx, 7
or rbx, rax
test dl, dl
jns 0x1400443b5
cmp r8, r9
jae 0x140044963
jmp 0x140044390
mov qword [rsp + 0x58], r12
mov qword [rsp + 0x28], r14
mov qword [rsp + 0x20], r15
mov qword [rsi + 0x80], rbx
cmp rbx, 1
jne 0x140044487
cmp r8, r9
jae 0x1400449c3
movzx eax, byte [r8 + r11]
inc r8
mov byte [rsi + 0x88], al
cmp al, 0xff
jne 0x140044487
mov r10, rbp
mov ecx, ebp
cmp r8, r9
jae 0x140044969
nop dword [rax]
nop word [rax + rax]
movzx edx, byte [r8 + r11]
inc r8
mov eax, edx
and eax, 0x7f
shl rax, cl
add ecx, 7
or r10, rax
test dl, dl
jns 0x140044435
cmp r8, r9
jae 0x140044969
jmp 0x140044410
mov qword [rsi + 0x90], r10
mov r10, rbp
mov ecx, ebp
cmp r8, r9
jae 0x14004496f
nop word [rax + rax]
movzx edx, byte [r8 + r11]
inc r8
mov eax, edx
and eax, 0x7f
shl rax, cl
add ecx, 7
or r10, rax
test dl, dl
jns 0x140044475
cmp r8, r9
jae 0x14004496f
jmp 0x140044450
mov qword [rsi + 0x98], r10
cmp edi, 8
jne 0x1400444ad
cmp r10, 2
jae 0x1400444b3
xor al, al
mov r14, qword [rsp + 0x28]
mov r12, qword [rsp + 0x58]
mov r15, qword [rsp + 0x20]
mov rdi, qword [rsp + 0x50]
mov rbx, qword [rsp + 0x40]
mov rbp, qword [rsp + 0x48]
add rsp, 0x30
pop rsi
ret
cmp r10, 1
jne 0x140044487
mov rbx, rbp
mov ecx, ebp
mov r10, r8
nop dword [rax + rax]
cmp r10, r9
jae 0x140044951
movzx edx, byte [r8 + r11]
inc r8
mov eax, edx
mov r10, r8
and eax, 0x7f
shl rax, cl
add ecx, 7
or rbx, rax
test dl, dl
js 0x1400444c0
mov qword [rsi + 0xa0], rbx
cmp r8, r9
jae 0x1400449c9
movzx eax, byte [r8 + r11]
inc r8
mov byte [rsi + 0xa8], al
sub al, 2
cmp al, 1
ja 0x140044487
lea rax, [r8 + 0x20]
mov dword [rsi + 0x28], r8d
cmp rax, r9
ja 0x1400449cf
lea rax, [r8 + r11]
add r8, 0x20
mov qword [rsi + 0xb0], rax
mov qword [rsi + 0xb8], 0x20
movzx eax, byte [rsi + 0xa8]
cmp edi, 8
jne 0x140044695
cmp al, 2
jne 0x140044487
mov r10, rbp
mov ecx, ebp
cmp r8, r9
jae 0x140044975
nop
movzx edx, byte [r8 + r11]
inc r8
mov eax, edx
and eax, 0x7f
shl rax, cl
add ecx, 7
or r10, rax
test dl, dl
jns 0x140044585
cmp r8, r9
jae 0x140044975
jmp 0x140044560
lea rax, [r8 + r10]
cmp rax, r9
ja 0x1400449d5
add r8, r10
cmp r8, r9
jae 0x1400449db
movzx eax, byte [r8 + r11]
mov edi, 1
mov r14, qword [rsi + 0x98]
inc r8
mov byte [rsi + 0xc0], al
mov r10, r8
cmp r14, rdi
jbe 0x14004465d
mov rcx, r8
cmp rcx, r9
jae 0x1400449ff
lea rax, [r8 + r11]
inc r8
mov rcx, r8
cmp byte [rax], bpl
jl 0x1400445c7
cmp rcx, r9
jae 0x1400449f9
cmp byte [r8 + r11], 2
jne 0x140044487
add r8, 0x21
cmp r8, r9
ja 0x1400449f3
mov rbx, rbp
mov ecx, ebp
mov r10, r8
nop dword [rax + rax]
cmp r10, r9
jae 0x1400449ed
movzx edx, byte [r8 + r11]
inc r8
mov eax, edx
mov r10, r8
and eax, 0x7f
shl rax, cl
add ecx, 7
or rbx, rax
test dl, dl
js 0x140044610
add r8, rbx
cmp r8, r9
ja 0x1400449e7
jae 0x1400449e1
inc r8
inc rdi
mov rcx, r8
cmp rdi, r14
jb 0x1400445c7
mov r10, r8
mov rbx, rbp
mov ecx, ebp
cmp r10, r9
jae 0x14004497b
nop dword [rax + rax]
movzx edx, byte [r8 + r11]
inc r8
mov eax, edx
and eax, 0x7f
shl rax, cl
add ecx, 7
or rbx, rax
test dl, dl
jns 0x140044701
cmp r8, r9
jae 0x14004497b
jmp 0x140044670
mov r10, r8
cmp al, 3
jne 0x1400446b7
cmp r8, r9
jae 0x140044a05
movzx eax, byte [r8 + r11]
lea r10, [r8 + 1]
mov byte [rsi + 0xc0], al
mov r8, r10
cmp edi, 9
jne 0x14004465d
mov rbx, rbp
mov ecx, ebp
cmp r10, r9
jae 0x140044981
nop word [rax + rax]
movzx edx, byte [r8 + r11]
inc r8
mov eax, edx
mov r10, r8
and eax, 0x7f
shl rax, cl
add ecx, 7
or rbx, rax
test dl, dl
jns 0x1400446f8
cmp r8, r9
jae 0x140044981
jmp 0x1400446d0
mov qword [rsi + 0x78], rbx
jmp 0x14004465d
mov qword [rsi + 0xc8], rbx
mov r10, rbp
mov dword [rsi + 0x2c], r8d
mov rbx, qword [rsi + 0xc8]
mov r15d, r8d
add r8, rbx
add r15, r11
cmp r8, r9
ja 0x140044a0b
mov r12b, 1
test rbx, rbx
je 0x14004485b
nop dword [rax]
nop dword [rax + rax]
mov rdi, rbp
mov ecx, ebp
cmp r10, rbx
jae 0x140044a2f
movzx edx, byte [r15 + r10]
inc r10
mov eax, edx
and eax, 0x7f
shl rax, cl
add ecx, 7
or rdi, rax
test dl, dl
js 0x140044745
sub rdi, 1
je 0x140044834
sub rdi, 1
je 0x1400447de
cmp rdi, 1
jne 0x140044487
mov r14, rbp
mov ecx, ebp
mov rdi, r10
nop word [rax + rax]
cmp rdi, rbx
jae 0x140044a17
movzx edx, byte [r15 + r10]
inc r10
mov eax, edx
mov rdi, r10
and eax, 0x7f
shl rax, cl
add ecx, 7
or r14, rax
test dl, dl
js 0x140044790
mov ecx, dword [rsi + 0x2c]
add r10, r14
add ecx, edi
mov dword [rsi + 0x38], ecx
cmp r10, rbx
ja 0x140044a11
lea rax, [r15 + rdi]
mov qword [rsi + 0xe0], rax
mov qword [rsi + 0xe8], r14
jmp 0x140044852
mov r14, rbp
mov ecx, ebp
mov rdi, r10
cmp rdi, rbx
jae 0x140044a23
movzx edx, byte [r15 + r10]
inc r10
mov eax, edx
mov rdi, r10
and eax, 0x7f
shl rax, cl
add ecx, 7
or r14, rax
test dl, dl
js 0x1400447e6
mov ecx, dword [rsi + 0x2c]
add r10, r14
add ecx, edi
mov dword [rsi + 0x34], ecx
cmp r10, rbx
ja 0x140044a1d
lea rax, [r15 + rdi]
mov qword [rsi + 0xd0], rax
mov qword [rsi + 0xd8], r14
jmp 0x140044852
test r12b, r12b
je 0x140044845
mov ecx, dword [rsi + 0x2c]
xor r12b, r12b
add ecx, r10d
mov dword [rsi + 0x30], ecx
add r10, 0x20
cmp r10, rbx
ja 0x140044a29
cmp r10, rbx
jb 0x140044740
cmp dword [rsi + 0x18], 8
jne 0x1400448b7
cmp r8, r9
jae 0x140044a35
lea rax, [r8 + r11]
inc r8
cmp byte [rax], bpl
jl 0x140044861
cmp r8, r9
jae 0x140044987
nop
lea rax, [r8 + r11]
inc r8
cmp byte [rax], bpl
jge 0x140044897
cmp r8, r9
jae 0x140044987
jmp 0x140044880
cmp r8, r9
jae 0x14004498d
lea rax, [r8 + r11]
inc r8
cmp byte [rax], bpl
jge 0x1400448b7
cmp r8, r9
jae 0x14004498d
jmp 0x1400448a0
mov dword [rsi + 0x24], r8d
cmp r8, r9
jae 0x140044a3b
movzx r10d, byte [r8 + r11]
inc r8
cmp dword [rsi + 0x18], 9
jne 0x1400448f6
mov rcx, qword [rsi + 0x90]
movabs rax, 0x2d82d82d82d82d83
mul rcx
shr rdx, 7
imul rax, rdx, 0x2d0
cmp rcx, rax
je 0x14004494a
test r10b, r10b
jne 0x140044487
mov ecx, dword [rsi + 0x24]
lea rax, [rcx + 1]
cmp r8, rax
jne 0x140044487
cmp byte [rcx + r11], bpl
jne 0x140044487
mov ecx, ebp
nop dword [rax + rax]
cmp r8, r9
jae 0x140044a41
movzx edx, byte [r8 + r11]
inc r8
mov eax, edx
and eax, 0x7f
shl rax, cl
add ecx, 7
or rbp, rax
test dl, dl
js 0x140044920
mov qword [rsi + 0xf0], rbp
mov al, 1
jmp 0x140044489
call fcn.140044a50
int3
call fcn.140044a50
int3
call fcn.140044a50
int3
call fcn.140044a50
int3
call fcn.140044a50
int3
call fcn.140044a50
int3
call fcn.140044a50
int3
call fcn.140044a50
int3
call fcn.140044a50
int3
call fcn.140044a50
int3
call fcn.140044a50
int3
call fcn.140044a50
int3
call fcn.140044a50
int3
call fcn.140044a50
int3
call fcn.140044a50
int3
call fcn.140044a50
int3
call fcn.140044a50
int3
call fcn.140044a50
int3
call fcn.140044a50
int3
call fcn.140044a50
int3
call fcn.140044a50
int3
call fcn.140044a50
int3
call fcn.140044a50
int3
call fcn.140044a50
int3
call fcn.140044a50
int3
call fcn.140044a50
int3
call fcn.140044a50
int3
call fcn.140044a50
int3
call fcn.140044a50
int3
call fcn.140044a50
int3
call fcn.140044a50
int3
call fcn.140044a50
int3
call fcn.140044a50
int3
call fcn.140044a50
int3
call fcn.140044a50
int3
call fcn.140044a50
int3
call fcn.140044a50
int3
call fcn.140044a50
int3
call fcn.140044a50
int3
call fcn.140044a50
int3
call fcn.140044a50
int3