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

Disassembly:
push r15
push r14
push r13
push r12
push rsi
push rdi
push rbp
push rbx
sub rsp, 0x118
mov r12, r9
mov rsi, rdx
mov r14, rcx
mov r15b, byte [rsp + 0x180]
lea rbx, [rsp + 0x80]
mov qword [rsp + 0x78], r8
mov qword [rbx], r8
mov qword [rbx + 8], r9
mov rcx, rbx
call fcn.1401d8f60
mov edi, eax
mov r13, qword [rbx]
mov rbp, qword [rbx + 8]
cmp eax, 0x5c
je 0x1401daf9d
cmp edi, 0x2f
jne 0x1401db04f
mov qword [rsp + 0x70], r14
mov r14, qword [rsi + 0x30]
cmp edi, 0x5c
jne 0x1401dafbc
test r14, r14
je 0x1401dafbc
mov rax, qword [rsi + 0x38]
mov rcx, r14
xor edx, edx
call qword [rax + 0x28]
lea r15, [rsp + 0x80]
mov qword [r15], r13
mov qword [r15 + 8], rbp
mov rcx, r15
call fcn.1401d8f60
mov rbx, qword [r15]
mov r15, qword [r15 + 8]
cmp eax, 0x2f
je 0x1401dafe8
cmp eax, 0x5c
jne 0x1401db132
cmp eax, 0x5c
jne 0x1401daffe
test r14, r14
je 0x1401daffe
mov rax, qword [rsi + 0x38]
mov rcx, r14
xor edx, edx
call qword [rax + 0x28]
lea rdx, [0x1403e38e8]
mov r8d, 7
mov rcx, rsi
call fcn.1400e5263
lea rdi, [rsp + 0x80]
mov rcx, rdi
mov rdx, rbx
mov r8, r15
call fcn.1401df7b3
mov r15, qword [rdi]
movabs r12, 0x8000000000000000
cmp r15, r12
jne 0x1401db0b6
mov bl, byte [rsp + 0x88]
mov rax, qword [rsp + 0x70]
mov byte [rax + 8], bl
jmp 0x1401db774
mov rbx, qword [rsp + 0x188]
test rbx, rbx
je 0x1401db21d
cmp edi, 0x23
je 0x1401db3c9
cmp edi, 0x3f
je 0x1401db3f6
cmp edi, 0x110000
jne 0x1401db409
cmp dword [rbx + 0x20], 0
je 0x1401db63c
mov r9d, dword [rbx + 0x24]
mov rdx, qword [rbx + 8]
test r9, r9
je 0x1401db833
mov rax, qword [rbx + 0x10]
cmp rax, r9
jbe 0x1401db838
cmp byte [rdx + r9], 0xbf
jg 0x1401db83e
jmp 0x1401dbb65
mov r14, qword [rsp + 0x88]
mov r8, qword [rsp + 0x90]
mov rdi, qword [rsp + 0xa0]
mov r13, qword [rsp + 0xa8]
mov bpl, 1
test r8, r8
je 0x1401db6c0
lea rbx, [rsp + 0x80]
mov rcx, rbx
mov rdx, r14
call fcn.1401d91c5
mov rax, qword [rbx]
movabs rcx, 0x8000000000000002
cmp rax, rcx
jne 0x1401db2dd
mov bl, byte [rsp + 0x88]
test r15, r15
je 0x1401db042
mov rcx, qword [0x1404845c0]
xor edx, edx
mov r8, r14
call qword [0x14033d4d0]
jmp 0x1401db042
lea rdx, [0x1403e38e8]
mov eax, 7
mov qword [rsp + 0xe8], rax
mov r8d, 7
mov rcx, rsi
call fcn.1400e5263
mov rcx, r13
mov rdx, rbp
call fcn.1401dfa5b
xor ebx, ebx
cmp qword [rsp + 0x188], 0
je 0x1401db3b7
test al, al
mov r15b, byte [rsp + 0x180]
jne 0x1401db52a
mov rcx, qword [rsp + 0x188]
call fcn.1401da03e
test rdx, rdx
je 0x1401dbb21
mov r14, rax
cmp byte [rax], 0x2f
jne 0x1401dbb21
inc r14
dec rdx
xor r15d, r15d
lea rax, [rsp + 0x90]
mov qword [rax - 0x10], r15
mov qword [rax - 8], rdx
mov qword [rax], r14
mov qword [rax + 8], rdx
mov qword [rax + 0x10], r15
mov qword [rax + 0x18], rdx
mov qword [rax + 0x20], 1
movabs rcx, 0x2f0000002f
mov qword [rax + 0x28], rcx
mov word [rax + 0x30], 1
lea rbx, [rsp + 0xf0]
mov rcx, rbx
mov rdx, rax
call fcn.14008bc33
cmp qword [rbx], r15
je 0x1401db451
mov rax, qword [rsp + 0xf8]
mov rcx, qword [rsp + 0x80]
add r14, rcx
sub rax, rcx
jmp 0x1401db48d
lea rdx, [0x1403e38e0]
mov r8d, 8
mov rcx, rsi
call fcn.1400e5263
lea r8, [rsp + 0x80]
mov byte [r8], 0
mov qword [rsp + 0x28], r12
mov rax, qword [rsp + 0x78]
mov qword [rsp + 0x20], rax
mov r9d, 7
mov rcx, rsi
xor edx, edx
call fcn.1401dccf4
mov qword [rsp + 0x28], rdx
mov qword [rsp + 0x20], rax
lea rdi, [rsp + 0x80]
mov rcx, rdi
mov rdx, rsi
xor r8d, r8d
mov r9d, 4
call fcn.1401dede9
mov eax, dword [rdi]
cmp eax, 2
je 0x1401db5a7
mov rcx, qword [rsp + 0x84]
mov edx, dword [rsp + 0x8c]
mov r8, qword [rsi + 0x10]
mov qword [r14 + 0x10], r8
movups xmm0, xmmword [rsi]
movups xmmword [r14], xmm0
mov dword [r14 + 0x18], eax
mov qword [r14 + 0x1c], rcx
mov dword [r14 + 0x24], edx
mov word [r14 + 0x28], 0
movaps xmm0, xmmword [0x14033e7d0]
movups xmmword [r14 + 0x2c], xmm0
mov dword [r14 + 0x3c], 7
mov byte [r14 + 0x40], 0
jmp 0x1401db790
mov r8, qword [rsp + 0x88]
mov rcx, qword [rsp + 0x90]
jl 0x1401db314
cmp rcx, 9
jne 0x1401db314
movabs rdx, 0x736f686c61636f6c
xor rdx, qword [r8]
movzx r9d, byte [r8 + 8]
xor r9, 0x74
or r9, rdx
je 0x1401db6a0
lea rdx, [rsp + 0xf0]
mov qword [rdx], rax
mov qword [rdx + 8], r8
mov qword [rdx + 0x10], rcx
lea rax, [rsp + 0x108]
mov qword [rax], rdx
lea rcx, [0x1401d8a19]
mov qword [rax + 8], rcx
lea rcx, [0x1403e5eb0]
lea r8, [rsp + 0x80]
mov qword [r8], rcx
mov ecx, 1
mov qword [r8 + 8], rcx
mov qword [r8 + 0x20], 0
mov qword [r8 + 0x10], rax
mov qword [r8 + 0x18], rcx
lea rdx, [0x1403e3230]
mov rcx, rsi
call fcn.1400944b0
test al, al
jne 0x1401dbb39
mov rax, qword [rsp + 0x100]
lea rdx, [rsp + 0x80]
mov qword [rdx + 0x10], rax
movups xmm0, xmmword [rsp + 0xf0]
movaps xmmword [rdx], xmm0
lea rbx, [rsp + 0xd0]
mov rcx, rbx
call fcn.1401d9142
xor ebp, ebp
mov bl, byte [rbx]
jmp 0x1401db6c2
mov r14, qword [rsp + 0x70]
mov r15b, byte [rsp + 0x180]
jmp 0x1401db52f
lea rdx, [rsp + 0x80]
mov ecx, 9
mov rdi, rdx
rep movsq qword [rdi], qword [rsi]
mov qword [rsp + 0x20], r12
mov rcx, r14
mov r8, rbx
mov r9, qword [rsp + 0x78]
call fcn.1401de895
jmp 0x1401db790
cmp dword [rbx + 0x18], 0
je 0x1401db649
lea rax, [rbx + 0x1c]
jmp 0x1401db657
mov rdi, qword [rsp + 0x78]
mov rcx, rdi
mov rdx, r12
call fcn.1401dfa5b
test al, al
je 0x1401db629
lea rdx, [0x1403e38e0]
mov r8d, 8
mov rcx, rsi
call fcn.1400e5263
lea r8, [rsp + 0x80]
mov byte [r8], 0
mov qword [rsp + 0x28], r12
mov qword [rsp + 0x20], rdi
jmp 0x1401db24d
cmp byte [rsp + 0xc1], 0
jne 0x1401dbb2d
cmp byte [rsp + 0xc0], 0
mov r14, qword [rsp + 0x80]
mov rax, qword [rsp + 0x88]
jne 0x1401db482
cmp rax, r14
je 0x1401dbb2d
sub rax, r14
add r14, qword [rsp + 0x90]
mov r15b, byte [rsp + 0x180]
mov rbx, qword [rsp + 0x188]
cmp rax, 2
jne 0x1401db4ed
movzx eax, byte [r14]
and eax, 0xffffffdf
add eax, 0xffffffbf
cmp eax, 0x19
ja 0x1401db4ed
cmp byte [r14 + 1], 0x3a
jne 0x1401db4ed
mov rdx, qword [rsi + 0x10]
cmp rdx, qword [rsi]
jne 0x1401db4ce
mov rcx, rsi
call fcn.1400e52bb
mov rdx, qword [rsi + 0x10]
mov rax, qword [rsi + 8]
mov byte [rax + rdx], 0x2f
inc qword [rsi + 0x10]
mov r8d, 2
mov rcx, rsi
mov rdx, r14
call fcn.1400e5263
jmp 0x1401db528
mov rcx, rbx
call fcn.1401dfaf8
test rax, rax
je 0x1401db528
mov r8, rdx
mov rcx, rsi
mov rdx, rax
call fcn.1400e5263
mov rax, qword [rsi + 0x10]
mov qword [rsp + 0xe8], rax
mov rax, rbx
mov bl, byte [rbx + 0x40]
movups xmm0, xmmword [rax + 0x41]
movaps xmmword [rsp + 0xd0], xmm0
jmp 0x1401db52a
xor ebx, ebx
mov r14, qword [rsp + 0x70]
add edi, 0xffffffd1
cmp edi, 0x2d
ja 0x1401db54f
movabs rax, 0x200000010001
bt rax, rdi
jae 0x1401db54f
mov r13, qword [rsp + 0x78]
mov rbp, r12
lea r8, [rsp + 0x80]
mov byte [r8], 0
mov qword [rsp + 0x28], rbp
mov qword [rsp + 0x20], r13
mov rcx, rsi
xor edx, edx
mov r12, qword [rsp + 0xe8]
mov r9, r12
call fcn.1401dccf4
mov qword [rsp + 0x28], rdx
mov qword [rsp + 0x20], rax
lea rdi, [rsp + 0x80]
mov rcx, rdi
mov rdx, rsi
mov r8d, r15d
mov r9d, 4
call fcn.1401dede9
mov eax, dword [rdi]
cmp eax, 2
jne 0x1401db5c4
mov al, byte [rsp + 0x84]
mov byte [r14 + 8], al
movabs rax, 0x8000000000000000
mov qword [r14], rax
jmp 0x1401db777
mov rcx, qword [rsp + 0x84]
mov edx, dword [rsp + 0x8c]
mov r8, qword [rsi + 0x10]
mov qword [r14 + 0x10], r8
movups xmm0, xmmword [rsi]
movups xmmword [r14], xmm0
movaps xmm0, xmmword [rsp + 0xd0]
movups xmmword [r14 + 0x41], xmm0
mov dword [r14 + 0x18], eax
mov qword [r14 + 0x1c], rcx
mov dword [r14 + 0x24], edx
mov word [r14 + 0x28], 0
movabs rax, 0x700000004
mov qword [r14 + 0x2c], rax
mov dword [r14 + 0x34], 7
mov dword [r14 + 0x38], r12d
mov dword [r14 + 0x3c], r12d
mov byte [r14 + 0x40], bl
jmp 0x1401db790
cmp dword [rbx + 0x18], 0
je 0x1401db894
lea rax, [rbx + 0x1c]
jmp 0x1401db8a2
mov rdx, qword [rbx + 8]
mov r9, qword [rbx + 0x10]
jmp 0x1401db83e
cmp dword [rbx + 0x20], 0
je 0x1401db8ce
lea rax, [rbx + 0x24]
mov r9d, dword [rax]
mov rdx, qword [rbx + 8]
test r9, r9
je 0x1401db67b
mov r8, qword [rbx + 0x10]
cmp r8, r9
jbe 0x1401db683
cmp byte [rdx + r9], 0xbf
jle 0x1401db689
mov r8, r9
jmp 0x1401db8d6
xor r8d, r8d
jmp 0x1401db8d6
je 0x1401db8d6
lea rax, [0x1403e3e80]
mov qword [rsp + 0x20], rax
mov rcx, rdx
mov rdx, r8
jmp 0x1401dbb80
mov byte [rsp + 0xd0], 0
test rax, rax
je 0x1401db6c0
mov rcx, qword [0x1404845c0]
xor ebx, ebx
xor edx, edx
call qword [0x14033d4d0]
jmp 0x1401db6c2
xor ebx, ebx
movups xmm0, xmmword [rsp + 0xd1]
movaps xmmword [rsp + 0xf0], xmm0
test r15, r15
je 0x1401db6e9
mov rcx, qword [0x1404845c0]
xor edx, edx
mov r8, r14
call qword [0x14033d4d0]
mov r15, qword [rsi + 0x10]
mov rax, r15
shr rax, 0x20
mov rcx, r15
shl rcx, 0x20
or rcx, 0x900
test rax, rax
mov r14d, 0x901
cmove r14, rcx
test r14b, r14b
jne 0x1401db76b
shr r14, 0x20
test bl, bl
setne byte [rsp + 0xd0]
test bpl, bpl
je 0x1401db7a5
mov rax, r15
cmp r15, qword [rsi]
jne 0x1401db73e
mov rcx, rsi
mov rdx, r15
call fcn.1400e52bb
mov rax, qword [rsi + 0x10]
mov rcx, qword [rsi + 8]
mov byte [rcx + rax], 0x2f
inc qword [rsi + 0x10]
mov qword [rsp + 0x28], r13
mov qword [rsp + 0x20], rdi
lea r8, [rsp + 0xd0]
mov rcx, rsi
xor edx, edx
mov r9, r15
call fcn.1401dccf4
jmp 0x1401db7bf
mov rax, qword [rsp + 0x70]
mov byte [rax + 8], 9
mov qword [rax], r12
cmp qword [rsi], 0
je 0x1401db790
mov r8, qword [rsi + 8]
mov rcx, qword [0x1404845c0]
xor edx, edx
call qword [0x14033d4d0]
nop
add rsp, 0x118
pop rbx
pop rbp
pop rdi
pop rsi
pop r12
pop r13
pop r14
pop r15
ret
mov qword [rsp + 0x20], r13
lea r8, [rsp + 0xd0]
mov rcx, rsi
xor edx, edx
mov r9, rdi
call fcn.1401df641
mov rdi, rax
mov r15, rdx
cmp byte [rsp + 0xd0], 0
jne 0x1401dba6e
lea rbx, [rsp + 0x80]
mov r8d, 7
mov rcx, rbx
mov rdx, rsi
mov r9, r14
call fcn.1401d8df8
mov r14, qword [rbx + 0x18]
mov rdx, qword [rbx + 0x20]
cmp r14, rdx
ja 0x1401dba66
mov r13, qword [rsp + 0x90]
mov rax, qword [r13 + 0x10]
mov rbx, rax
sub rbx, rdx
jb 0x1401dba66
mov qword [r13 + 0x10], r14
cmp rdx, r14
jne 0x1401dba47
cmp rax, rdx
jne 0x1401dba5f
jmp 0x1401dba66
xor r9d, r9d
jmp 0x1401db83e
jne 0x1401dbb65
mov rcx, rsi
mov r8, r9
call fcn.1400e5263
mov rax, qword [rsi + 0x10]
mov qword [r14 + 0x10], rax
movups xmm0, xmmword [rsi]
movups xmmword [r14], xmm0
movups xmm0, xmmword [rbx + 0x2c]
movups xmm1, xmmword [rbx + 0x40]
movups xmmword [r14 + 0x40], xmm1
mov al, byte [rbx + 0x50]
mov byte [r14 + 0x50], al
mov eax, dword [rbx + 0x28]
mov ecx, dword [rbx + 0x3c]
mov rdx, qword [rbx + 0x18]
mov qword [r14 + 0x18], rdx
mov dword [r14 + 0x20], 0
mov dword [r14 + 0x28], eax
movups xmmword [r14 + 0x2c], xmm0
mov dword [r14 + 0x3c], ecx
jmp 0x1401db790
cmp dword [rbx + 0x20], 0
je 0x1401db990
lea rax, [rbx + 0x24]
mov r9d, dword [rax]
mov rdx, qword [rbx + 8]
test r9, r9
je 0x1401db8c6
mov rax, qword [rbx + 0x10]
cmp rax, r9
jbe 0x1401db982
cmp byte [rdx + r9], 0xbf
jle 0x1401dbb6e
mov r15, r14
jmp 0x1401db99b
mov rdx, qword [rbx + 8]
mov r8, qword [rbx + 0x10]
mov rcx, rsi
call fcn.1400e5263
mov edi, dword [rbx + 0x2c]
mov qword [rsp + 0x28], r12
mov rax, qword [rsp + 0x78]
mov qword [rsp + 0x20], rax
mov r12, rbx
lea rbx, [rsp + 0x80]
mov rcx, rbx
mov rdx, rsi
mov r8d, r15d
mov r9d, edi
call fcn.1401dede9
mov eax, dword [rbx]
cmp eax, 2
je 0x1401db5a7
mov ecx, dword [rsp + 0x84]
mov rdx, qword [rsp + 0x88]
mov r8, qword [rsi + 0x10]
mov qword [r14 + 0x10], r8
movups xmm0, xmmword [rsi]
movups xmmword [r14], xmm0
mov r8, qword [r12 + 0x30]
mov r9d, dword [r12 + 0x38]
movups xmm0, xmmword [r12 + 0x40]
movups xmmword [r14 + 0x40], xmm0
mov r10b, byte [r12 + 0x50]
mov byte [r14 + 0x50], r10b
mov r10d, dword [r12 + 0x28]
mov r11d, dword [r12 + 0x3c]
mov dword [r14 + 0x18], eax
mov dword [r14 + 0x1c], ecx
mov qword [r14 + 0x20], rdx
mov dword [r14 + 0x28], r10d
mov dword [r14 + 0x2c], edi
mov qword [r14 + 0x30], r8
mov dword [r14 + 0x38], r9d
mov dword [r14 + 0x3c], r11d
jmp 0x1401db790
jne 0x1401dbb6e
mov r15, r14
mov r9, rax
jmp 0x1401db99b
mov r15, r14
mov rdx, qword [rbx + 8]
mov r9, qword [rbx + 0x10]
mov rcx, rsi
mov r8, r9
call fcn.1400e5263
mov r14d, dword [rbx + 0x3c]
mov rcx, rsi
xor edx, edx
mov r8, r14
call fcn.1401df5cf
lea r8, [rsp + 0x80]
mov byte [r8], 1
mov qword [rsp + 0x28], r12
mov qword [rsp + 0x20], rdi
mov rcx, rsi
xor edx, edx
mov r9, r14
call fcn.1401dccf4
lea r8, [rsp + 0x80]
mov ecx, 9
mov rdi, r8
rep movsq qword [rdi], qword [rsi]
mov r9d, dword [rbx + 0x2c]
mov ecx, dword [rbx + 0x30]
mov r10d, dword [rbx + 0x34]
mov r11d, dword [rbx + 0x38]
lea rsi, [rbx + 0x40]
movzx edi, word [rbx + 0x28]
movzx ebx, word [rbx + 0x2a]
mov qword [rsp + 0x60], rdx
mov qword [rsp + 0x58], rax
mov dword [rsp + 0x50], r14d
mov word [rsp + 0x48], bx
mov word [rsp + 0x40], di
mov qword [rsp + 0x38], rsi
mov dword [rsp + 0x30], r11d
mov dword [rsp + 0x28], r10d
mov dword [rsp + 0x20], ecx
mov rcx, r15
mov rdx, r8
xor r8d, r8d
call fcn.1401dd885
jmp 0x1401db790
cmp rax, rdx
je 0x1401dba66
mov rax, qword [r13 + 8]
lea rcx, [rax + r14]
add rdx, rax
mov r8, rbx
call fcn.140330ef0
add rbx, r14
mov qword [r13 + 0x10], rbx
mov r14d, 7
xor ebx, ebx
mov qword [rsp + 0x28], r15
mov qword [rsp + 0x20], rdi
lea rdi, [rsp + 0x80]
mov rcx, rdi
mov rdx, rsi
mov r8b, byte [rsp + 0x180]
mov r9d, 4
call fcn.1401dede9
mov eax, dword [rdi]
cmp eax, 2
jne 0x1401dbab7
mov al, byte [rsp + 0x84]
mov rcx, qword [rsp + 0x70]
mov byte [rcx + 8], al
mov qword [rcx], r12
jmp 0x1401db777
mov rcx, qword [rsp + 0x84]
mov edx, dword [rsp + 0x8c]
mov r8, qword [rsi + 0x10]
mov r9, qword [rsp + 0x70]
mov qword [r9 + 0x10], r8
movups xmm0, xmmword [rsi]
movups xmmword [r9], xmm0
movaps xmm0, xmmword [rsp + 0xf0]
movups xmmword [r9 + 0x41], xmm0
mov dword [r9 + 0x18], eax
mov qword [r9 + 0x1c], rcx
mov dword [r9 + 0x24], edx
mov word [r9 + 0x28], 0
movabs rax, 0x700000004
mov qword [r9 + 0x2c], rax
mov dword [r9 + 0x34], 7
mov dword [r9 + 0x38], r14d
mov dword [r9 + 0x3c], r14d
mov byte [r9 + 0x40], bl
jmp 0x1401db790
lea rcx, [0x1403e38f0]
call fcn.140334660
lea rcx, [0x1403e3908]
call fcn.140334660
lea rax, [0x1403e39d0]
mov qword [rsp + 0x20], rax
lea rcx, [0x1403e5a28]
lea r9, [0x1403e3368]
lea r8, [rsp + 0x80]
mov edx, 0x2b
call fcn.1403345c0
lea rcx, [0x1403e38c8]
jmp 0x1401dbb75
lea rcx, [0x1403e3e80]
mov qword [rsp + 0x20], rcx
mov rcx, rdx
mov rdx, rax
xor r8d, r8d
call fcn.140334880
int3