Function at 0x91da40
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, 0xc8
lea rax, [0x00872900]
mov esi, dword [rdx + 8]
cmp byte [rcx + 0x1cf], 0
mov qword [rsp + 0x118], rdx
lea rdx, [0x00872950]
cmovne rax, rdx
mov qword [rsp + 0x110], rcx
mov dword [rsp + 0x84], esi
mov qword [rsp + 0x58], rax
test esi, esi
je 0x91dce0
mov rax, qword [rsp + 0x118]
mov rax, qword [rax + 0x10]
mov qword [rsp + 0x70], rax
mov eax, dword [rax + 0x10]
mov edi, eax
mov dword [rsp + 0x98], eax
and edi, 2
mov dword [rsp + 0x94], edi
mov edi, eax
and edi, 1
mov dword [rsp + 0x60], edi
mov edi, eax
and edi, 4
mov dword [rsp + 0x64], edi
mov edi, eax
and edi, 8
mov dword [rsp + 0x9c], edi
mov edi, eax
and eax, 0x20
mov dword [rsp + 0x6c], eax
mov rax, qword [rsp + 0x118]
and edi, 0x10
mov dword [rsp + 0x90], edi
mov r13d, dword [rax + 0xc]
mov r15, qword [rax]
lea eax, [rsi - 2]
add rax, 2
mov qword [rsp + 0x88], rax
mov r14d, r13d
mov r13, r15
test r14d, r14d
jle 0x91db70
mov rdi, qword [rsp + 0x110]
mov rsi, qword [rsp + 0x118]
xor ebx, ebx
jmp 0x91db45
mov rcx, rdx
call fcn.008c8d90
mov r14d, dword [rsi + 0xc]
add rbx, 1
cmp r14d, ebx
jle 0x91db70
mov rdx, qword [r13 + rbx*8]
cmp byte [rdx + 4], 0
jne 0x91db30
mov rcx, rdi
call fcn.0091d700
test eax, eax
je 0x91db38
add rsp, 0xc8
pop rbx
pop rsi
pop rdi
pop rbp
pop r12
pop r13
pop r14
pop r15
ret
mov edx, dword [rsp + 0x84]
lea r9, [0x00869040]
mov r8d, r14d
mov rcx, r13
call fcn.00866b50
mov r12, qword [r13]
mov rax, qword [rsp + 0x118]
cmp qword [r12 + 0x28], 0
mov dword [rax + 0xc], 0
je 0x91dce0
mov ebx, dword [r12 + 0x48]
mov rsi, qword [r12 + 0x50]
mov r8d, dword [rsp + 0x90]
mov dword [rax + 0x40], ebx
mov qword [rax + 0x38], rsi
mov rax, qword [rsp + 0x70]
mov rdx, qword [rax]
test r8d, r8d
jne 0x91dc04
test rdx, rdx
je 0x91dc04
movsxd r8, dword [rax + 8]
cmp ebx, r8d
jl 0x91dce0
mov ecx, dword [rsp + 0x9c]
test ecx, ecx
jne 0x91dbf4
cmp ebx, r8d
jg 0x91dce0
mov rcx, rsi
call sub.msvcrt.dll_memcmp
test eax, eax
jne 0x91dce0
cmp dword [rsp + 0x84], 1
jle 0x91e362
mov r15, qword [rsp + 0x88]
mov ebp, 1
movsxd rdi, ebx
jmp 0x91dc51
cmp ebx, dword [rax + 0x48]
jne 0x91dc60
mov rdx, qword [rax + 0x50]
mov r8, rdi
mov rcx, rsi
call sub.msvcrt.dll_memcmp
test eax, eax
jne 0x91dc60
add rbp, 1
add r14d, 1
cmp r15, rbp
je 0x91dce7
mov rax, qword [r13 + rbp*8]
mov r14d, ebp
cmp qword [rax + 0x28], 0
jne 0x91dc28
cmp r14d, 1
sete al
mov edx, dword [rsp + 0x94]
test edx, edx
sete byte [rsp + 0x6b]
test byte [rsp + 0x98], 0x22
jne 0x91dcf5
test al, al
je 0x91dcf5
mov rdi, qword [rsp + 0x110]
mov rax, qword [r12 + 0x40]
cmp byte [rdi + 0x1cf], 0
je 0x91e234
test rax, rax
jne 0x91e2c0
mov eax, dword [r12 + 0x68]
mov rdi, qword [rsp + 0x118]
mov r12, qword [r12 + 0x60]
mov dword [rdi + 0x50], eax
mov rax, qword [rsp + 0x118]
mov qword [rax + 0x48], r12
mov rax, qword [rsp + 0x118]
mov dword [rax + 0xc], 1
mov eax, 0x64
jmp 0x91db5c
xor eax, eax
jmp 0x91db5c
mov eax, dword [rsp + 0x94]
test eax, eax
sete byte [rsp + 0x6b]
lea rsi, [r13 + 8]
lea eax, [r14 - 1]
mov rdi, qword [rsp + 0x110]
mov rdx, r12
lea rbx, [rsi + rax*8]
jmp 0x91dd17
mov rdx, qword [rsi]
add rsi, 8
movzx ecx, byte [rdi + 0x1cf]
call fcn.008ca0d0
cmp rbx, rsi
jne 0x91dd10
mov r9, qword [rsp + 0x58]
mov edx, r14d
mov r8d, r14d
mov rcx, r13
call fcn.00866b50
mov rdx, qword [r13]
cmp qword [rdx + 0x70], 0
je 0x91dfe7
mov rax, qword [rsp + 0x110]
mov dword [rsp + 0x2c], 0
mov qword [rsp + 0x40], 0
lea rdi, [rax + 0x1cf]
lea rax, [rsp + 0xac]
mov dword [rsp + 0x3c], r14d
mov qword [rsp + 0x48], rax
lea rax, [rsp + 0xb0]
mov qword [rsp + 0x50], rax
lea eax, [r14 - 2]
lea r12, [rax + 2]
nop dword [rax]
mov r9, qword [rsp + 0x48]
mov rcx, rdi
mov r8, qword [rsp + 0x50]
mov qword [rsp + 0xb0], 0
mov dword [rsp + 0xac], 0
mov rsi, qword [rdx + 0x80]
call fcn.008ca180
cmp dword [rsp + 0x3c], 1
je 0x91e2ac
mov ebp, 1
jmp 0x91de03
cmp qword [rdx + 0x80], rsi
jne 0x91de11
xor r9d, r9d
xor r8d, r8d
mov rcx, rdi
add rbp, 1
call fcn.008ca180
add ebx, 1
cmp r12, rbp
je 0x91de11
mov rdx, qword [r13 + rbp*8]
mov ebx, ebp
cmp qword [rdx + 0x70], 0
jne 0x91dde0
mov eax, dword [rsp + 0x64]
test eax, eax
jne 0x91e0a0
cmp byte [rsp + 0x6b], 0
jne 0x91de33
mov eax, dword [rsp + 0xac]
test eax, eax
jle 0x91dfb3
mov rax, qword [rsp + 0x110]
cmp byte [rax + 0x1cf], 0
je 0x91e078
mov r15d, dword [rsp + 0x2c]
test r15d, r15d
jle 0x91e08d
mov rax, qword [rsp + 0x40]
cmp rsi, rax
jge 0x91e2a2
mov r15, rax
sub r15, rsi
mov rax, r15
xor edx, edx
nop
add edx, 1
shr rax, 7
jne 0x91de70
mov ebp, dword [rsp + 0x60]
test ebp, ebp
je 0x91de8c
mov eax, dword [rsp + 0xac]
lea edx, [rdx + rax + 1]
mov eax, dword [rsp + 0x2c]
lea edx, [rax + rdx + 0x14]
mov rax, qword [rsp + 0x118]
mov rcx, qword [rax + 0x18]
cmp edx, dword [rax + 0x20]
jg 0x91e158
movsxd rax, dword [rsp + 0x2c]
mov r11d, dword [rsp + 0x6c]
add rax, rcx
mov qword [rsp + 0x30], rax
test r11d, r11d
je 0x91e0c0
mov rax, qword [rsp + 0xb0]
movsxd rdx, dword [rsp + 0xac]
mov dword [rsp + 0x38], 0
xor ebp, ebp
movzx ecx, byte [rax]
add rdx, rax
mov r11, rdx
cmp cl, 1
je 0x91e1c8
cmp cl, 2
je 0x91e1e0
test cl, 0xfe
je 0x91df16
nop
add rax, 1
mov edx, ecx
movzx ecx, byte [rax]
and edx, 0xffffff80
or edx, ecx
and edx, 0xfe
jne 0x91df00
cmp r11, rax
jbe 0x91df8d
mov qword [rsp + 0x78], r15
lea rdx, [rsp + 0xb8]
mov r14, r11
mov dword [rsp + 0x80], ebx
mov rbx, qword [rsp + 0x30]
nop word [rax + rax]
lea r15, [rax + 1]
mov rcx, r15
call fcn.00865ba0
cdqe
add rax, r15
movzx ecx, byte [rax]
cmp cl, 2
je 0x91e000
test cl, 0xfe
je 0x91df81
nop word [rax + rax]
and ecx, 0xffffff80
add rax, 1
mov r8d, ecx
movzx ecx, byte [rax]
or r8d, ecx
and r8d, 0xfe
jne 0x91df68
cmp r14, rax
ja 0x91df40
mov ebx, dword [rsp + 0x80]
mov r8d, dword [rsp + 0x38]
test r8d, r8d
je 0x91dfa6
mov rdx, qword [rsp + 0x30]
movsxd rax, ebp
add ebp, 1
mov byte [rdx + rax], 0
test ebp, ebp
je 0x91dfb3
add dword [rsp + 0x2c], ebp
mov qword [rsp + 0x40], rsi
mov edx, dword [rsp + 0x3c]
mov r9, qword [rsp + 0x58]
mov r8d, ebx
mov rcx, r13
call fcn.00866b50
mov rdx, qword [r13]
cmp qword [rdx + 0x70], 0
jne 0x91dd98
mov edx, dword [rsp + 0x2c]
mov r14d, dword [rsp + 0x3c]
test edx, edx
jg 0x91e2fd
mov rax, qword [rsp + 0x118]
mov dword [rax + 0xc], r14d
jmp 0x91db0f
mov r10d, dword [rsp + 0x38]
movsxd r9, ebp
add r9, rbx
test r10d, r10d
je 0x91e180
add ebp, 1
mov byte [r9], 1
mov rcx, qword [rsp + 0xb8]
movsxd r15, ebp
add r15, rbx
mov r8, r15
nop dword [rax]
mov r9d, ecx
mov r11, r8
mov r10d, ecx
add r8, 1
or r9d, 0xffffff80
shr rcx, 7
mov byte [r8 - 1], r9b
jne 0x91e030
sub r8, r15
and r10d, 0x7f
mov dword [rsp + 0x38], 1
add r8d, ebp
mov byte [r11], r10b
lea ebp, [r8 + 1]
movsxd r8, r8d
mov byte [rbx + r8], 2
movzx ecx, byte [rax]
jmp 0x91df5d
mov r14d, dword [rsp + 0x2c]
test r14d, r14d
jle 0x91e08d
cmp rsi, qword [rsp + 0x40]
jle 0x91e2a2
mov r15, rsi
sub r15, qword [rsp + 0x40]
jmp 0x91de6a
mov rax, qword [rsp + 0x70]
mov r9, qword [rsp + 0x48]
xor edx, edx
mov r8, qword [rsp + 0x50]
mov ecx, dword [rax + 0xc]
call fcn.00867a20
jmp 0x91de1d
mov rax, qword [rsp + 0x30]
nop dword [rax]
mov edx, r15d
mov r8, rax
mov ecx, r15d
add rax, 1
or edx, 0xffffff80
shr r15, 7
mov byte [rax - 1], dl
jne 0x91e0c8
and ecx, 0x7f
sub rax, qword [rsp + 0x30]
mov qword [rsp + 0x40], rsi
mov byte [r8], cl
mov ecx, dword [rsp + 0x60]
add dword [rsp + 0x2c], eax
test ecx, ecx
je 0x91dfb3
movsxd rcx, dword [rsp + 0x2c]
mov rax, qword [rsp + 0x118]
mov rdx, qword [rsp + 0xb0]
movsxd r8, dword [rsp + 0xac]
mov rsi, rcx
add rcx, qword [rax + 0x18]
call sub.msvcrt.dll_memcpy
mov eax, dword [rsp + 0xac]
add eax, esi
lea esi, [rax + 1]
cdqe
mov dword [rsp + 0x2c], esi
mov rsi, qword [rsp + 0x118]
mov rdx, qword [rsi + 0x18]
mov byte [rdx + rax], 0
jmp 0x91dfb3
add edx, edx
mov dword [rax + 0x20], edx
call fcn.008a8510
mov rcx, rax
test rax, rax
je 0x91e2b6
mov rax, qword [rsp + 0x118]
mov qword [rax + 0x18], rcx
jmp 0x91dea9
mov rcx, qword [rsp + 0x78]
mov r8, r9
nop dword [rax + rax]
mov r10d, ecx
mov r15, r8
mov r11d, ecx
add r8, 1
or r10d, 0xffffff80
shr rcx, 7
mov byte [r8 - 1], r10b
jne 0x91e190
sub r8, r9
and r11d, 0x7f
add ebp, r8d
mov byte [r15], r11b
movsxd r9, ebp
add r9, rbx
jmp 0x91e014
cmp rax, rdx
jb 0x91df1b
jmp 0x91dfb3
mov rcx, qword [rsp + 0x30]
mov rdx, r15
nop dword [rax + rax]
mov r8d, edx
mov r10, rcx
mov r9d, edx
add rcx, 1
or r8d, 0xffffff80
shr rdx, 7
mov byte [rcx - 1], r8b
jne 0x91e1f0
mov rdx, qword [rsp + 0x30]
and r9d, 0x7f
mov dword [rsp + 0x38], 1
mov byte [r10], r9b
sub rcx, rdx
lea ebp, [rcx + 1]
movsxd rcx, ecx
mov byte [rdx + rcx], 2
movzx ecx, byte [rax]
jmp 0x91def9
mov ebx, dword [r12 + 0x68]
mov rdi, qword [rsp + 0x118]
mov r12, qword [r12 + 0x60]
mov dword [rdi + 0x50], ebx
test rax, rax
je 0x91dcbb
mov rcx, qword [rdi + 0x18]
cmp ebx, dword [rdi + 0x20]
jle 0x91e27a
lea edx, [rbx + rbx]
mov dword [rdi + 0x20], edx
call fcn.008a8510
mov rcx, rax
mov rax, qword [rsp + 0x118]
test rcx, rcx
je 0x91e2dc
mov qword [rax + 0x18], rcx
movsxd r8, ebx
mov rdx, r12
call sub.msvcrt.dll_memcpy
mov rax, qword [rsp + 0x118]
mov rdi, qword [rsp + 0x118]
mov rax, qword [rax + 0x18]
mov qword [rdi + 0x48], rax
jmp 0x91dcc7
mov eax, 0x10b
jmp 0x91db5c
mov ebx, 1
jmp 0x91de11
mov eax, 7
jmp 0x91db5c
mov rax, qword [rsp + 0x110]
mov rdx, r12
movzx ecx, byte [rax + 0x1cf]
call fcn.008ca0d0
jmp 0x91dd28
mov rax, qword [rax + 0x18]
mov rdi, qword [rsp + 0x118]
mov qword [rdi + 0x48], rax
mov eax, 7
mov dword [rdi + 0xc], 1
jmp 0x91db5c
mov eax, dword [rsp + 0x2c]
mov r13d, r14d
lea edx, [rax + 0x14]
mov rax, qword [rsp + 0x118]
mov rcx, qword [rax + 0x18]
cmp edx, dword [rax + 0x20]
jg 0x91e372
movsxd rax, dword [rsp + 0x2c]
mov rsi, qword [rsp + 0x118]
add rcx, rax
mov rdi, rax
mov rax, qword [rsp + 0x118]
mov qword [rcx], 0
mov qword [rcx + 8], 0
mov dword [rcx + 0x10], 0
mov rax, qword [rax + 0x18]
mov dword [rsi + 0x50], edi
mov qword [rsi + 0x48], rax
mov eax, 0x64
mov dword [rsi + 0xc], r13d
jmp 0x91db5c
mov eax, 1
mov r14d, 1
jmp 0x91dc67
add edx, edx
mov dword [rax + 0x20], edx
call fcn.008a8510
mov rcx, rax
test rax, rax
je 0x91e2b6
mov rax, qword [rsp + 0x118]
mov qword [rax + 0x18], rcx
jmp 0x91e318