Function at 0x140718f60
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
xor r14d, r14d
mov qword [rsp + 0x110], rcx
mov qword [rsp + 0x118], rdx
mov dword [rsp + 0x120], r8d
mov qword [rsp + 0x128], r9
mov dword [rsp + 0x3c], r8d
mov qword [rsp + 0x68], 0
mov dword [rsp + 0x4c], 1
nop dword [rax]
mov rax, qword [rsp + 0x110]
mov r15, qword [rsp + 0x118]
mov qword [rsp + 0xa8], 0
mov dword [rax + 0x24], 0
mov eax, dword [rsp + 0x3c]
mov ebx, eax
test eax, eax
jle 0x140719ddb
nop dword [rax]
movzx eax, byte [r15]
lea edx, [rax - 9]
cmp dl, 4
jbe 0x1407192d0
cmp al, 0x20
je 0x1407192d0
lea rsi, [0x140bc3f00]
xor eax, eax
lea r12, [rsi + 0x40]
test al, 0xfe
jne 0x140719068
movzx r13d, byte [rsi + 8]
cmp ebx, r13d
jl 0x140719068
movzx edi, r13b
mov rdx, qword [rsi]
mov rcx, r15
mov r8, rdi
call sub.msvcrt.dll_memcmp
test eax, eax
jne 0x140719068
movzx edx, byte [rsi + 0xa]
cmp dl, 1
je 0x140719700
mov eax, 0xa
movzx ecx, byte [r15 + rdi]
cmp cl, 0x29
ja 0x140719068
movabs rdi, 0x30500003e01
bt rdi, rcx
jb 0x140719c60
nop dword [rax]
add rsi, 0x10
cmp rsi, r12
je 0x140719082
movzx eax, byte [rsi + 9]
test al, 0xfe
je 0x140719011
add rsi, 0x10
cmp rsi, r12
jne 0x140719071
movzx eax, byte [r15]
cmp al, 0x22
je 0x1407192e8
cmp al, 0x28
je 0x140719780
cmp al, 0x29
mov rax, qword [rsp + 0x110]
je 0x140719ca7
mov eax, dword [rax + 0x20]
mov dword [rsp + 0x40], eax
mov rax, qword [rsp + 0x110]
movsxd rsi, dword [rax + 0x1c]
test esi, esi
jle 0x140719638
mov rdi, qword [rax + 0x10]
xor r12d, r12d
jmp 0x1407190dd
add r12, 1
cmp rsi, r12
je 0x140719638
mov r13, qword [rdi + r12*8]
mov rcx, r13
call sub.msvcrt.dll_strlen
mov rbp, rax
cmp ebx, eax
jle 0x1407190d0
cdqe
cmp byte [r15 + rax], 0x3a
jne 0x1407190d0
mov r8d, ebp
mov rdx, r15
mov rcx, r13
call fcn.1406a4900
test eax, eax
jne 0x1407190d0
mov r10, r15
sub r10, qword [rsp + 0x118]
mov edi, dword [rsp + 0x3c]
mov dword [rsp + 0x40], r12d
lea eax, [r10 + rbp + 1]
mov dword [rsp + 0x48], eax
movsxd rbp, eax
sub edi, eax
add rbp, qword [rsp + 0x118]
nop dword [rax]
mov rax, qword [rsp + 0x110]
mov rcx, qword [rax]
mov rax, qword [rcx]
mov r13, rax
test edi, edi
jle 0x140719d4a
mov rdx, rbp
xor ebx, ebx
jmp 0x14071916f
cmp al, 0x22
je 0x14071917c
add ebx, 1
add rdx, 1
cmp ebx, edi
je 0x14071917c
movzx eax, byte [rdx]
lea r8d, [rax - 0x28]
cmp r8b, 1
ja 0x140719160
mov rax, qword [rsp + 0x110]
mov r9d, ebx
mov r8, rbp
xor r15d, r15d
mov edx, dword [rax + 8]
lea rax, [rsp + 0xb0]
mov qword [rsp + 0x20], rax
call fcn.1406a0ff0
mov esi, eax
test eax, eax
jne 0x140719240
lea rax, [rsp + 0xa4]
lea r12, [rsp + 0xb8]
mov dword [rsp + 0x98], 0
mov rcx, qword [rsp + 0xb0]
mov qword [rsp + 0x28], rax
mov rdx, r12
lea rax, [rsp + 0xa0]
lea r9, [rsp + 0x9c]
mov qword [rsp + 0x20], rax
lea r8, [rsp + 0x98]
mov dword [rsp + 0x9c], 0
mov dword [rsp + 0xa0], 0
mov dword [rsp + 0xa4], 0
call qword [r13 + 0x28]
test eax, eax
je 0x140719b3d
test ebx, ebx
je 0x140719b33
cmp eax, 0x65
jne 0x140719b33
mov rax, r13
mov rcx, qword [rsp + 0xb0]
call qword [rax + 0x20]
add ebx, dword [rsp + 0x48]
mov qword [rsp + 0xa8], r15
mov dword [rsp + 0x48], ebx
test esi, esi
jne 0x140719492
mov r9, qword [rsp + 0xa8]
test r9, r9
je 0x1407197f8
mov edx, dword [r9]
cmp edx, 5
je 0x14071927c
cmp qword [r9 + 0x10], 0
je 0x14071996b
cmp dword [rsp + 0x4c], 1
jne 0x140719840
xor eax, eax
test r14, r14
jne 0x140719d67
cmp qword [rsp + 0x68], 0
mov r14, qword [rsp + 0xa8]
je 0x1407198ff
mov qword [rax + 0x18], r14
mov dword [rsp + 0x4c], 0
mov qword [r14 + 8], rax
movsxd rbx, dword [rsp + 0x48]
sub dword [rsp + 0x3c], ebx
add qword [rsp + 0x118], rbx
jmp 0x140718fb0
add r15, 1
sub ebx, 1
jne 0x140718fe8
jmp 0x140719cc0
lea rdx, [r15 + 1]
mov eax, 1
mov ecx, 1
cmp ebx, 1
jg 0x14071930f
jmp 0x140719316
add eax, 1
add rdx, 1
cmp ebx, eax
je 0x140719810
cmp byte [rdx], 0x22
jne 0x140719300
mov ecx, eax
mov rdx, r15
sub rdx, qword [rsp + 0x118]
lea edi, [rcx + rdx + 1]
mov dword [rsp + 0x48], edi
cmp ebx, eax
je 0x140719824
lea r9d, [rax - 1]
mov rax, qword [rsp + 0x110]
lea r8, [r15 + 1]
mov dword [rsp + 0x74], r9d
mov rcx, qword [rax]
mov qword [rsp + 0x78], r8
mov rax, qword [rcx]
mov qword [rsp + 0xb0], 0
mov qword [rsp + 0x40], rax
mov rax, qword [rsp + 0x110]
mov edx, dword [rax + 8]
lea rax, [rsp + 0xb0]
mov qword [rsp + 0x20], rax
call fcn.1406a0ff0
mov dword [rsp + 0x70], 0
mov esi, eax
test eax, eax
jne 0x1407199d2
lea rax, [rsp + 0xa4]
mov ecx, 0xc0
mov qword [rsp + 0x60], 0
lea r12, [rsp + 0xb8]
mov qword [rsp + 0x58], rax
lea rax, [rsp + 0xa0]
xor ebp, ebp
lea rdi, [rsp + 0x9c]
mov qword [rsp + 0x50], rax
lea r13, [rsp + 0x98]
mov qword [rsp + 0x80], r15
mov r15, rcx
mov qword [rsp + 0x88], r14
mov r14, r12
nop dword [rax]
mov rax, qword [rsp + 0x58]
mov r9, rdi
mov r8, r13
mov rdx, r14
mov dword [rsp + 0x98], 0
mov rcx, qword [rsp + 0xb0]
mov qword [rsp + 0x28], rax
mov rax, qword [rsp + 0x50]
mov dword [rsp + 0x9c], 0
mov qword [rsp + 0x20], rax
mov rax, qword [rsp + 0x40]
mov dword [rsp + 0xa0], 0
mov dword [rsp + 0xa4], 0
call qword [rax + 0x28]
mov r12d, eax
test eax, eax
je 0x1407194b0
mov rax, qword [rsp + 0x40]
mov r14, qword [rsp + 0x88]
mov rcx, qword [rsp + 0xb0]
call qword [rax + 0x20]
mov eax, esi
mov esi, r12d
mov qword [rsp + 0xb0], 0
cmp esi, 0x65
je 0x1407199e8
mov qword [rsp + 0xa8], rbp
test esi, esi
je 0x140719258
mov edi, dword [rsp + 0x48]
sub dword [rsp + 0x3c], edi
cmp esi, 0x65
je 0x140719cc0
mov dword [rsp + 0x4c], esi
jmp 0x1407196a0
mov r10d, dword [0x1407d8034]
test r10d, r10d
jne 0x140719918
call fcn.1406a2ba0
test eax, eax
jne 0x140719658
call fcn.1406e90c0
test eax, eax
jne 0x140719658
test rbp, rbp
je 0x140719924
cmp r15, 0x7ffffeff
ja 0x140719658
mov rdx, r15
mov rcx, rbp
call fcn.1406a6540
mov rbx, rax
test rbx, rbx
je 0x140719658
mov eax, dword [0x1407d8034]
mov ebp, dword [rsp + 0x98]
test eax, eax
jne 0x140719938
call fcn.1406a2ba0
test eax, eax
jne 0x1407197c0
call fcn.1406e90c0
test eax, eax
jne 0x1407197c0
lea edx, [rbp + rsi]
cmp qword [rsp + 0x60], 0
movsxd rdx, edx
je 0x14071994e
test rdx, rdx
je 0x140719d30
cmp rdx, 0x7ffffeff
ja 0x1407197c0
mov rcx, qword [rsp + 0x60]
call fcn.1406a6540
mov rbp, rax
test rbp, rbp
je 0x1407197c0
lea rax, [rbx + r15 - 0x28]
movsxd rcx, esi
mov qword [rax], 0
add rcx, rbp
mov qword [rax + 8], 0
mov qword [rax + 0x10], 0
mov qword [rax + 0x18], 0
mov qword [rax + 0x20], 0
mov rdx, qword [rsp + 0xb8]
movsxd r8, dword [rsp + 0x98]
call sub.msvcrt.dll_memcpy
movsxd rax, dword [rsp + 0x70]
mov edx, dword [rsp + 0x98]
lea rcx, [rax + rax*4]
add esi, edx
mov dword [rbx + rcx*8 + 0xa0], edx
movsxd rdx, dword [rsp + 0xa0]
cmp dword [rsp + 0x74], edx
jg 0x1407197e0
xor edx, edx
lea rcx, [rax + rax*4]
mov dword [rbx + rcx*8 + 0xa4], edx
movsxd rdx, dword [rsp + 0x9c]
test edx, edx
jle 0x140719613
mov rcx, qword [rsp + 0x80]
xor r12d, r12d
cmp byte [rcx + rdx], 0x5e
sete r12b
lea rax, [rax + rax*4]
mov qword [rsp + 0x60], rbp
add r15, 0x28
mov rbp, rbx
add dword [rsp + 0x70], 1
mov dword [rbx + rax*8 + 0xa8], r12d
jmp 0x1407193f0
mov dword [rsp + 0x48], 0
mov rbp, qword [rsp + 0x118]
mov edi, dword [rsp + 0x3c]
jmp 0x140719138
mov rcx, rbp
xor edi, edi
call fcn.1406a4060
mov rcx, qword [rsp + 0xb0]
test rcx, rcx
je 0x140719677
mov rax, qword [rsp + 0x40]
call qword [rax + 0x20]
mov rcx, qword [rsp + 0x60]
call fcn.1406a4060
mov rcx, rdi
call fcn.1406a4060
mov edi, dword [rsp + 0x48]
sub dword [rsp + 0x3c], edi
mov dword [rsp + 0x4c], 7
nop dword [rax]
mov rdi, qword [rsp + 0x130]
mov eax, dword [rsp + 0x120]
sub eax, dword [rsp + 0x3c]
mov dword [rdi], eax
mov rcx, qword [rsp + 0x68]
call fcn.140718e10
xor ecx, ecx
call fcn.140718e10
mov qword [rsp + 0x68], 0
mov rax, qword [rsp + 0x128]
mov rdi, qword [rsp + 0x68]
mov qword [rax], rdi
mov eax, dword [rsp + 0x4c]
add rsp, 0xc8
pop rbx
pop rsi
pop rdi
pop rbp
pop r12
pop r13
pop r14
pop r15
ret
cmp byte [r15 + 4], 0x2f
jne 0x14071903e
movzx ecx, byte [r15 + 5]
sub ecx, 0x30
cmp cl, 9
ja 0x14071903e
movzx ecx, byte [r15 + rdi + 1]
sub ecx, 0x30
cmp cl, 9
ja 0x140719dd0
movsx rax, cl
mov r8d, 1
lea r10, [r15 + rdi]
jmp 0x14071975c
movsx rcx, cl
lea rax, [rax + rax*4]
add r8, 1
lea rax, [rcx + rax*2]
mov ecx, 0x80000000
cmp rax, rcx
jae 0x14071903e
movzx ecx, byte [r10 + r8 + 1]
mov r9d, r8d
sub ecx, 0x30
cmp cl, 9
jbe 0x14071973e
add r9d, 1
add r13d, r9d
movsxd rdi, r13d
jmp 0x140719043
mov rax, qword [rsp + 0x110]
mov rdi, qword [rsp + 0x110]
mov dword [rsp + 0xb8], 0
mov eax, dword [rax + 0x30]
mov dword [rsp + 0x48], eax
add eax, 1
mov dword [rdi + 0x30], eax
cmp eax, 0x3e8
jle 0x140719acd
mov dword [rsp + 0x4c], 1
jmp 0x1407196a0
mov rdi, rbx
mov rcx, qword [rsp + 0x60]
call fcn.1406a4060
mov qword [rsp + 0x60], 0
jmp 0x140719662
mov rcx, qword [rsp + 0x78]
cmp byte [rcx + rdx], 0x2a
sete dl
movzx edx, dl
jmp 0x1407195e9
movsxd rbx, dword [rsp + 0x48]
sub dword [rsp + 0x3c], ebx
add qword [rsp + 0x118], rbx
jmp 0x140718fb0
mov r10, r15
sub r10, qword [rsp + 0x118]
lea eax, [rbx + r10 + 1]
mov dword [rsp + 0x48], eax
mov edi, dword [rsp + 0x48]
mov dword [rsp + 0x4c], 1
sub dword [rsp + 0x3c], edi
jmp 0x1407196a0
mov r8d, dword [0x1407d8034]
test r8d, r8d
jne 0x140719d00
call fcn.1406a2ba0
test eax, eax
jne 0x140719b19
call fcn.1406e90c0
test eax, eax
jne 0x140719b19
mov ecx, 0x40
call fcn.1406a6690
test rax, rax
je 0x140719b19
mov qword [rax], 0
mov qword [rax + 8], 0
mov qword [rax + 0x10], 0
mov qword [rax + 0x18], 0
mov qword [rax + 0x20], 0
mov qword [rax + 0x28], 0
mov qword [rax + 0x30], 0
mov qword [rax + 0x38], 0
mov dword [rax], 3
jmp 0x1407198d2
cmp dword [r14], 3
jg 0x14071995e
mov rdx, r14
mov r14, qword [r14 + 8]
test r14, r14
jne 0x1407198c8
mov qword [rsp + 0x68], rax
cmp qword [rsp + 0x68], 0
mov qword [rax + 0x10], rdx
mov r14, qword [rsp + 0xa8]
mov qword [rdx + 8], rax
jne 0x1407192a6
mov qword [rsp + 0x68], r14
mov dword [rsp + 0x4c], 0
jmp 0x1407192b6
mfence
test rbp, rbp
jne 0x1407194e3
mov rcx, r15
call fcn.1406a6690
mov rbx, rax
jmp 0x1407194fe
mfence
lea edx, [rbp + rsi]
movsxd rdx, edx
cmp qword [rsp + 0x60], 0
jne 0x140719549
mov rcx, rdx
call fcn.1406a6690
mov rbp, rax
jmp 0x14071956c
mov qword [r14 + 0x18], rax
mov qword [rax + 8], r14
jmp 0x1407198e3
mov ecx, dword [rsp + 0x4c]
test ecx, ecx
jne 0x140719d74
test r14, r14
je 0x14071998b
cmp edx, 1
jne 0x14071998b
cmp dword [r14], 5
jne 0x140719d87
mov rax, qword [rsp + 0xa8]
jmp 0x14071999f
mov edi, dword [rax]
cmp dword [r14], edi
jg 0x1407199c8
mov rdx, r14
mov r14, qword [r14 + 8]
test r14, r14
jne 0x140719998
mov qword [rsp + 0x68], rax
mov qword [rax + 0x10], rdx
mov r14, rax
mov qword [rdx + 8], rax
mov dword [rsp + 0x4c], 1
jmp 0x1407192b6
mov qword [r14 + 0x18], rax
mov qword [rax + 8], r14
jmp 0x1407199b0
mov qword [rsp + 0x60], 0
xor eax, eax
xor ebp, ebp
cmp esi, 0x65
jne 0x140719482
movsxd rdx, dword [rsp + 0x70]
movsxd rbx, eax
mov rcx, rbp
lea rsi, [rdx + rdx*4]
shl rsi, 3
lea rdx, [rbx + rsi + 0xc0]
call fcn.1406ea1a0
test rax, rax
je 0x140719da1
xor edx, edx
mov r8d, 0x98
lea rdi, [rax + 0x40]
mov rcx, rax
call sub.msvcrt.dll_memset
cmp qword [rsp + 0x60], 0
lea rsi, [rdi + rsi + 0x58]
mov qword [rax + 0x20], rdi
mov r9, rax
mov dword [rax], 5
mov rax, qword [rsp + 0x110]
mov eax, dword [rax + 0x20]
mov dword [r9 + 0x94], eax
mov eax, dword [rsp + 0x70]
mov dword [r9 + 0x90], eax
je 0x140719a8c
mov rdi, qword [rsp + 0x60]
mov r8, rbx
mov rcx, rsi
mov qword [rsp + 0x40], r9
mov rdx, rdi
call sub.msvcrt.dll_memcpy
mov rcx, rdi
call fcn.1406a4060
mov r9, qword [rsp + 0x40]
mov rdi, qword [r9 + 0x20]
mov eax, dword [rdi + 0x50]
mov dword [rsp + 0x70], eax
mov ecx, dword [rsp + 0x70]
test ecx, ecx
jle 0x140719dc0
lea edx, [rcx - 1]
lea rax, [rdi + 0x58]
lea rdx, [rdx + rdx*4]
lea rcx, [rdi + rdx*8 + 0x80]
nop dword [rax + rax]
movsxd rdx, dword [rax + 8]
mov qword [rax], rsi
add rax, 0x28
add rsi, rdx
cmp rcx, rax
jne 0x140719ab0
mov rbp, r9
xor esi, esi
jmp 0x140719482
mov rcx, qword [rsp + 0x110]
lea rdx, [r15 + 1]
lea r8d, [rbx - 1]
lea r12, [rsp + 0xb8]
lea r9, [rsp + 0xa8]
mov qword [rsp + 0x20], r12
call fcn.140718f60
mov r10, r15
sub r10, qword [rsp + 0x118]
mov esi, eax
mov eax, dword [rsp + 0xb8]
lea eax, [rax + r10 + 1]
mov dword [rsp + 0x48], eax
jmp 0x140719250
mov rcx, qword [rsp + 0xa8]
call fcn.140718e10
mov dword [rsp + 0x4c], 7
jmp 0x1407196b5
mov esi, eax
xor r15d, r15d
jmp 0x140719232
mov r9d, dword [0x1407d8034]
movsxd rbx, dword [rsp + 0x98]
test r9d, r9d
jne 0x140719d42
call fcn.1406a2ba0
test eax, eax
jne 0x140719c4f
call fcn.1406e90c0
test eax, eax
jne 0x140719c4f
add rbx, 0xc0
mov rcx, rbx
call fcn.1406a6690
mov r15, rax
test rax, rax
je 0x140719c4f
mov r8, rbx
xor edx, edx
mov rcx, rax
call sub.msvcrt.dll_memset
lea rax, [r15 + 0x40]
mov dword [r15], 5
lea rcx, [r15 + 0xc0]
mov qword [r15 + 0x20], rax
mov eax, dword [rsp + 0x40]
mov dword [r15 + 0x90], 1
mov dword [r15 + 0x94], eax
movsxd r8, dword [rsp + 0x98]
mov qword [r15 + 0x98], rcx
mov rdx, qword [rsp + 0xb8]
mov dword [r15 + 0xa0], r8d
call sub.msvcrt.dll_memcpy
mov ebx, dword [rsp + 0xa0]
cmp ebx, edi
jl 0x140719d08
mov rax, qword [rsp + 0x110]
mov esi, dword [rax + 0x18]
test esi, esi
je 0x140719232
movsxd rax, dword [rsp + 0x9c]
xor edx, edx
jmp 0x140719c37
sub rax, 1
cmp byte [rbp + rax], 0x5e
jne 0x140719d51
mov dword [r15 + 0xa8], 1
mov edx, 1
mov ecx, eax
test eax, eax
jg 0x140719c18
test dl, dl
je 0x140719c48
mov dword [rsp + 0x9c], eax
xor esi, esi
jmp 0x140719232
mov ebx, dword [rsp + 0xa0]
mov esi, 7
jmp 0x140719232
mov ecx, 0x40
mov byte [rsp + 0x48], dl
mov ebp, eax
call fcn.1406e9b40
movzx edx, byte [rsp + 0x48]
test rax, rax
mov r9, rax
je 0x140719691
mov r10, r15
sub r10, qword [rsp + 0x118]
mov dword [rax], edx
mov dword [rax + 4], ebp
mov qword [rsp + 0xa8], rax
lea eax, [r13 + r10]
mov dword [rsp + 0x48], eax
jmp 0x14071926c
mov r10, r15
sub r10, qword [rsp + 0x118]
sub dword [rax + 0x30], 1
lea eax, [r10 + 1]
sub dword [rsp + 0x3c], eax
nop
mov eax, dword [rsp + 0x120]
sub eax, dword [rsp + 0x3c]
cmp qword [rsp + 0x68], 0
mov rdi, qword [rsp + 0x130]
je 0x140719db1
test byte [rsp + 0x4c], 1
je 0x140719db1
mov dword [rdi], eax
mov dword [rsp + 0x4c], 1
jmp 0x1407196b5
mfence
jmp 0x14071986a
movsxd rax, ebx
cmp byte [rbp + rax], 0x2a
jne 0x140719bf5
mov dword [r15 + 0xa4], 1
add ebx, 1
mov dword [rsp + 0xa0], ebx
jmp 0x140719bf5
mov rcx, qword [rsp + 0x60]
mov rdi, rbx
call fcn.1406a4060
jmp 0x1407197c3
mfence
jmp 0x140719b6f
xor ebx, ebx
jmp 0x14071917c
test dl, dl
je 0x140719c48
mov dword [rsp + 0x9c], ecx
xor esi, esi
jmp 0x140719232
cmp edx, 5
jne 0x140719d81
mov rax, r14
jmp 0x140719292
mov rcx, r9
call fcn.140718e10
jmp 0x1407196b5
cmp dword [r14], 1
jne 0x140719d6c
mov rcx, qword [rsp + 0xa8]
call fcn.140718e10
mov dword [rsp + 0x4c], 1
jmp 0x1407196b5
mov rcx, rbp
mov rdi, rax
call fcn.1406a4060
jmp 0x140719662
mov dword [rdi], eax
mov dword [rsp + 0x4c], 0
jmp 0x1407196cf
mov qword [rsp + 0xa8], r9
mov edx, dword [r9]
jmp 0x14071926c
mov r9d, 1
jmp 0x140719771
je 0x140719cc0
jmp 0x140719000