Function at 0x18006e630
Capabilities:
Reference absolute stream path on windows

Disassembly:
mov qword [rsp + 0x18], rbx
push rbp
push rsi
push rdi
push r12
push r13
push r14
push r15
lea rbp, [rsp - 0x1900]
mov eax, 0x1a00
call fcn.1800aaf30
sub rsp, rax
mov rax, qword [0x1800d73f8]
xor rax, rsp
mov qword [rbp + 0x18f0], rax
mov r14, r9
mov qword [rbp - 0x68], r9
mov esi, r8d
mov dword [rbp - 0x80], r8d
mov r9, rdx
mov qword [rbp - 0x58], rdx
mov r8, rcx
mov qword [rbp - 0x70], rcx
mov rdi, qword [rbp + 0x1960]
mov qword [rsp + 0x60], rdi
mov r11, qword [rbp + 0x1968]
mov qword [rbp - 0x50], r11
mov qword [rbp - 0x20], 0
mov eax, 0xf
mov qword [rbp - 0x18], rax
mov byte [rbp - 0x30], 0
mov r13d, esi
lea ebx, [rsi + 0xb]
mov dword [rbp - 0x78], ebx
mov r10, qword [rsp + 0x60]
mov qword [rsp + 0x68], r10
cmp esi, ebx
jae 0x18006ebc7
lea r12d, [rsi - 0x6f]
movzx eax, byte [rsp + 0x40]
mov byte [rsp + 0x40], al
mov rax, qword [rsp + 0x60]
mov qword [rsp + 0x58], rax
mov rsi, qword [rsp + 0x60]
lea rdx, [0x180000000]
cmp r12d, 0x26
ja case.0x18006e709.11
movzx eax, byte [rdx + r12 + 0x6f26c]
mov ecx, dword [rdx + rax*4 + 0x6f23c]
add rcx, rdx
jmp rcx
lea r8, [rbp - 0x30]
mov rdx, rdi
mov ecx, 0xb7
call fcn.18007ff10
mov byte [rsp + 0x70], al
jmp 0x18006ea5c
mov byte [rsp + 0x40], 1
mov ecx, 0xec
call fcn.18005e740
mov r10, rax
mov qword [rsp + 0x68], rax
jmp 0x18006ea61
mov rcx, qword [rdi + 8]
mov eax, dword [r14]
cmp rax, qword [rcx + 8]
jb case.0x18006e709.11
mov ecx, 0x10d
mov eax, ecx
sub eax, 0x10d
je 0x18006e76b
cmp eax, 0x58
je case.0x18006e709.10
jmp 0x18006e770
mov byte [rsp + 0x70], 0
add ecx, 0x58
cmp ecx, 0x1bd
jb 0x18006e757
jmp case.0x18006e709.11
mov rax, qword [rbp - 0x48]
mov rax, qword [rax + 8]
mov qword [rbp - 0x60], rax
jmp case.0x18006e709.11
mov r8, rdi
mov rdx, r10
mov ecx, 0x92
call fcn.18005c920
mov rdx, qword [rbp - 0x70]
mov rax, qword [rdx + 8]
mov qword [rsp + 0x78], rax
xor edx, edx
mov r8d, 0xa6
lea rcx, [rsp + 0x78]
call fcn.18003b930
mov rdx, rax
mov qword [rsp + 0x58], rax
mov r10, qword [rsp + 0x68]
mov r8, qword [rbp - 0x70]
jmp 0x18006ea6a
mov r8d, 0x89
mov rdx, rdi
xor ecx, ecx
call fcn.180066e10
test al, al
je 0x18006eaa0
mov rdx, qword [rbp - 0x70]
mov rcx, rdx
cmp qword [rdx + 0x18], 0x10
jb 0x18006e7ff
mov rcx, qword [rdx]
lea r9, [rbp - 0x30]
mov r8d, 0x4e
mov rdx, qword [rdi + 0x80]
call fcn.180015050
jmp 0x18006ea5c
mov rax, qword [rdi]
mov qword [rbp - 0x48], rax
mov rax, qword [r8]
mov qword [rbp - 0x40], rax
jmp case.0x18006e709.11
mov rax, qword [rbp - 0x38]
mov eax, dword [rax]
cmp dword [rsp + 0x50], eax
jl 0x18006eb10
jle 0x18006e86f
mov eax, 0x40
cmp eax, 0x40
je 0x18006e856
cmp eax, 0x1500
je case.0x18006e709.10
jmp 0x18006e85e
mov dword [rsp + 0x70], 1
add eax, 0x14c0
cmp eax, 0x2980
jbe 0x18006e844
jmp case.0x18006e709.11
mov eax, 0x56
cmp eax, 0x56
je 0x18006e886
cmp eax, 0x422e
je case.0x18006e709.10
jmp 0x18006e88e
mov dword [rsp + 0x70], 0
add eax, 0x41d8
cmp eax, 0x83b0
jbe 0x18006e874
jmp case.0x18006e709.11
mov rax, qword [rbp - 0x40]
mov rax, qword [rax + 8]
mov qword [rbp - 0x38], rax
mov rax, qword [rbp - 0x60]
mov eax, dword [rax]
mov dword [rsp + 0x50], eax
jmp case.0x18006e709.11
mov qword [rsp + 0x78], 0
lea r9, [rbp - 0x10]
lea r8, [rsp + 0x78]
lea rdx, [rbp + 0x2f0]
mov ecx, 0xe5
call fcn.180078b10
xor r15d, r15d
cmp dword [0x1800d708c], r15d
jle 0x18006ea5c
nop dword [rax]
mov r14d, 0x11f
nop word [rax + rax]
mov eax, r14d
sub eax, 0x11c
je 0x18006e9f5
sub eax, 1
je 0x18006e9d1
sub eax, 1
je 0x18006e96e
cmp eax, 1
jne 0x18006ea30
xor r9d, r9d
xor edx, edx
xor ecx, ecx
mov r8d, 0x8d
call fcn.1800224f0
and eax, 0xf
add eax, 1
mov esi, eax
je 0x18006ea30
lea rbx, [rbp - 0x10]
mov edi, esi
nop dword [rax + rax]
xor r8d, r8d
mov rdx, rbx
lea ecx, [r8 + 0x10]
call fcn.18005a570
add rbx, 0x30
sub rdi, 1
jne 0x18006e950
jmp 0x18006ea30
mov qword [rsp + 0x78], rsi
lea r9, [rbp - 0x10]
lea r8, [rsp + 0x78]
lea rdx, [rbp + 0x2f0]
mov ecx, 0xe5
call fcn.180078b10
xor edi, edi
test rsi, rsi
je 0x18006ea30
xor ebx, ebx
nop word [rax + rax]
lea r8, [rbp - 0x10]
add r8, rbx
lea rcx, [rbp + 0x2f0]
add rcx, rbx
mov edx, 0x97
call fcn.18005fa60
test eax, eax
je 0x18006eb52
inc rdi
add rbx, 0x30
cmp rdi, rsi
jb 0x18006e9a0
jmp 0x18006ea30
mov qword [rsp + 0x78], rsi
lea r9, [rbp + 0x2f0]
lea r8, [rsp + 0x78]
lea rdx, [rbp + 0x5f0]
mov ecx, 0xe5
call fcn.180078b10
jmp 0x18006ea30
xor edi, edi
test rsi, rsi
je 0x18006ea30
xor ebx, ebx
nop
lea rdx, [rbp - 0x10]
add rdx, rbx
lea rcx, [rbp + 0x5f0]
add rcx, rbx
mov r8d, 0x30
call fcn.180016340
test eax, eax
je 0x18006eb90
inc rdi
add rbx, 0x30
cmp rdi, rsi
jb 0x18006ea00
dec r14d
cmp r14d, 0x11b
ja 0x18006e900
inc r15d
cmp r15d, dword [0x1800d708c]
jl 0x18006e8f0
mov ebx, dword [rbp - 0x78]
mov rdi, qword [rsp + 0x60]
mov r14, qword [rbp - 0x68]
mov r10, qword [rsp + 0x68]
mov r8, qword [rbp - 0x70]
mov rdx, qword [rsp + 0x58]
inc r13d
inc r12d
cmp r13d, ebx
jb 0x18006e6e5
mov rax, qword [rbp - 0x18]
mov esi, dword [rbp - 0x80]
movzx ebx, byte [rsp + 0x40]
mov r9, qword [rbp - 0x58]
mov r11, qword [rbp - 0x50]
jmp 0x18006ebda
mov byte [rsp + 0x70], 0
mov rdx, qword [rbp - 0x18]
cmp rdx, 0x10
jb 0x18006eae0
inc rdx
mov rcx, qword [rbp - 0x30]
mov rax, rcx
cmp rdx, 0x1000
jb 0x18006eadb
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x18006f234
call fcn.1800aa7ec
mov eax, dword [rsp + 0x70]
mov rcx, qword [rbp + 0x18f0]
xor rcx, rsp
call fcn.1800aafa0
mov rbx, qword [rsp + 0x1a50]
add rsp, 0x1a00
pop r15
pop r14
pop r13
pop r12
pop rdi
pop rsi
pop rbp
ret
mov rdx, qword [rbp - 0x18]
cmp rdx, 0x10
jb 0x18006eb4b
inc rdx
mov rcx, qword [rbp - 0x30]
mov r8, rcx
cmp rdx, 0x1000
jb 0x18006eb46
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub r8, rcx
add r8, 0xfffffffffffffff8
cmp r8, 0x1f
ja 0x18006f234
call fcn.1800aa7ec
mov eax, 0xffffffff
jmp 0x18006eae4
mov ecx, 2
call qword [sym.imp.api_ms_win_crt_stdio_l1_1_0.dll___acrt_iob_func]
mov rcx, rax
lea rax, str.D:drmemory_packagedynamoriocorewin32module.c:2277
mov qword [rsp + 0x20], rax
xor r9d, r9d
lea r8, [0x1800c0e21]
lea rdx, str.mswrd8.wpc
call fcn.1800aa5d0
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll_abort]
int3
mov ecx, 2
call qword [sym.imp.api_ms_win_crt_stdio_l1_1_0.dll___acrt_iob_func]
mov rcx, rax
lea rax, str.W20121207_HC168504416_PR4004_DT20121214_REF431395205_
mov qword [rsp + 0x20], rax
xor r9d, r9d
lea r8, [0x1800c0e21]
lea rdx, str.shl_rm8h_1
call fcn.1800aa5d0
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll_abort]
int3
movzx ebx, byte [rsp + 0x40]
mov byte [rsp + 0x40], bl
mov rdx, qword [rsp + 0x60]
mov qword [rsp + 0x58], rdx
lea ecx, [rsi + 0x390]
mov dword [rsp + 0x50], ecx
cmp esi, ecx
jae 0x18006f1f9
mov r13, qword [rsp + 0x60]
mov r12d, dword [rbp - 0x78]
mov r15, qword [rsp + 0x60]
nop word [rax + rax]
cmp esi, 0x243
ja 0x18006f12a
je 0x18006f0cd
cmp esi, 0x15f
ja 0x18006f06b
je 0x18006efe9
mov eax, esi
sub eax, 0x7b
je 0x18006ef33
sub eax, 0x4c
je 0x18006ef06
cmp eax, 0x4c
jne 0x18006eede
mov eax, dword [r9]
and eax, 0x1f
cmp eax, 2
jne 0x18006ed39
mov ebx, 0xc
cmp ebx, 0xc
je 0x18006ecff
cmp ebx, 0xca
je 0x18006ecd4
cmp ebx, 0x188
jne 0x18006ed22
xor r8d, r8d
mov rax, qword [r10 + 8]
cmp qword [rax + 8], r8
jbe 0x18006ed22
xor r9d, r9d
nop word [rax + rax]
mov edx, 0x11
mov eax, edx
sub eax, 0x10
je 0x18006ecae
cmp eax, 1
jne 0x18006ecbb
mov rax, qword [r10 + 8]
mov rcx, qword [rax]
mov r13, qword [rcx + r9*8]
jmp 0x18006ecbb
cmp r8d, dword [r14]
je 0x18006ecbb
mov dword [r13 + 0x30], 0
dec edx
cmp edx, 0xf
ja 0x18006ec95
mov rax, qword [r10 + 8]
inc r8d
mov r9d, r8d
cmp r9, qword [rax + 8]
jb 0x18006ec90
jmp 0x18006ed22
mov qword [rsp + 0x60], 1
mov r8d, 0x37
lea rdx, [0x18005f090]
lea rcx, [rsp + 0x60]
call fcn.180091820
mov r10, qword [rsp + 0x68]
mov qword [r10 + 0x10], rax
jmp 0x18006ed22
mov rcx, qword [r10 + 0x10]
test rcx, rcx
je 0x18006ed22
mov byte [rsp + 0x48], 1
mov r8d, 0x109
lea rdx, [rsp + 0x48]
call fcn.1800a9250
mov r10, qword [rsp + 0x68]
add ebx, 0xbe
cmp ebx, 0x246
jb 0x18006ec55
jmp 0x18006eed5
cmp eax, 3
jne 0x18006eede
mov r14d, 0xc
nop dword [rax + rax]
cmp r14d, 0xc
je 0x18006eeb7
cmp r14d, 0x6a8
je 0x18006ee94
cmp r14d, 0xd44
je 0x18006ee70
cmp r14d, 0x13e0
jne 0x18006eebe
test r12d, r12d
je 0x18006ee1d
xor edi, edi
mov esi, r12d
nop
mov ebx, 0xc7
cmp ebx, 0xc7
je 0x18006edf6
cmp ebx, 0x61f2
je 0x18006eded
cmp ebx, 0xc31d
jne 0x18006ee01
cmp qword [r15 + 8], 0
je 0x18006ee01
mov byte [rsp + 0x48], 1
mov rax, qword [r15 + 8]
lea rcx, [rsp + 0x48]
mov qword [rsp + 0x28], rcx
mov qword [rsp + 0x20], rax
mov r9d, 0xdc
xor r8d, r8d
xor edx, edx
xor ecx, ecx
call fcn.1800883b0
mov qword [r15 + 8], 0
mov r10, qword [rsp + 0x68]
jmp 0x18006ee01
mov qword [r15], 0xffffffffffffffff
jmp 0x18006ee01
mov rax, qword [r10 + 0x10]
mov rcx, qword [rax]
mov r15, qword [rdi + rcx]
add ebx, 0x612b
cmp ebx, 0x12381
jbe 0x18006ed95
add rdi, 8
sub rsi, 1
jne 0x18006ed90
xor r8d, r8d
mov edx, r8d
mov rax, qword [r10 + 8]
cmp qword [rax + 8], rdx
jbe 0x18006eebe
mov ecx, r8d
nop dword [rax]
nop dword [rax + rax]
mov rax, qword [rax]
mov r13, qword [rax + rcx*8]
mov rax, qword [rbp - 0x68]
cmp edx, dword [rax]
je 0x18006ee60
mov dword [r13 + 0x30], r8d
nop dword [rax]
nop word [rax + rax]
inc edx
mov rax, qword [r10 + 8]
mov ecx, edx
cmp rcx, qword [rax + 8]
jb 0x18006ee40
jmp 0x18006eebe
lea ecx, [r12 + 1]
mov qword [rsp + 0x60], rcx
lea r8, [rsp + 0x60]
mov edx, 0xb1
mov rcx, qword [r10 + 0x10]
call fcn.1800a8f50
mov r10, qword [rsp + 0x68]
jmp 0x18006eebe
mov rcx, qword [r10 + 0x10]
mov eax, r12d
cmp rax, qword [rcx + 8]
jb 0x18006eebe
xor bl, bl
mov byte [rsp + 0x40], bl
mov ecx, dword [rsp + 0x50]
mov rdx, qword [rsp + 0x58]
mov esi, 0x327
jmp 0x18006eede
mov rax, qword [rbp - 0x68]
mov r12d, dword [rax]
add r14d, 0x69c
cmp r14d, 0x1a70
jbe 0x18006ed50
mov esi, dword [rbp - 0x80]
mov rdx, qword [rsp + 0x58]
mov ecx, dword [rsp + 0x50]
add esi, 0x4c
mov dword [rbp - 0x80], esi
cmp esi, ecx
jae 0x18006f1f5
mov r14, qword [rbp - 0x68]
movzx ebx, byte [rsp + 0x40]
mov r8, qword [rbp - 0x70]
mov r9, qword [rbp - 0x58]
mov r11, qword [rbp - 0x50]
jmp 0x18006ec00
mov byte [rsp + 0x48], 1
lea rax, [rsp + 0x48]
mov qword [rsp + 0x28], rax
mov qword [rsp + 0x20], rdx
mov r9d, 0xdc
xor r8d, r8d
xor edx, edx
xor ecx, ecx
call fcn.1800883b0
mov r10, qword [rsp + 0x68]
jmp 0x18006eed5
mov r9, rdx
xor edx, edx
mov ecx, 0xb1
call fcn.18005aaa0
xor edi, edi
mov r10, qword [rsp + 0x68]
mov rax, qword [r10 + 8]
cmp qword [rax + 8], rdi
jbe 0x18006eed5
xor esi, esi
mov ebx, 0x47
nop word [rax + rax]
cmp ebx, 0x47
je 0x18006ef98
cmp ebx, 0x27a9
jne 0x18006efc4
cmp edi, dword [r14]
jne 0x18006efc4
mov rcx, qword [rsp + 0x58]
mov rax, qword [rcx + 8]
mov qword [rsp + 0x60], rax
lea r9, [rsp + 0x60]
mov r8, qword [rcx]
mov rdx, qword [r13 + 0x28]
mov ecx, 0x116
call fcn.180008530
jmp 0x18006efbf
mov rax, qword [r10 + 8]
mov rcx, qword [rax]
mov r13, qword [rcx + rsi*8]
mov qword [rsp + 0x60], 0
lea r8, [rsp + 0x60]
mov edx, 0x1a
mov rcx, qword [r13 + 0x28]
call fcn.1800607d0
mov r10, qword [rsp + 0x68]
add ebx, 0x2762
cmp ebx, 0x4ec4
jbe 0x18006ef60
mov rax, qword [r10 + 8]
inc edi
mov esi, edi
cmp rsi, qword [rax + 8]
jb 0x18006ef55
jmp 0x18006eed2
test byte [r9], 0x80
je 0x18006eede
mov ebx, 0xc6
nop dword [rax + rax]
mov eax, ebx
sub eax, 0xc6
je 0x18006f02a
cmp eax, 0x55
jne 0x18006f05b
mov qword [rsp + 0x60], 1
lea r8, [rsp + 0x60]
lea edx, [rax + 0x5c]
mov rcx, qword [r10 + 8]
call fcn.1800a8f50
jmp 0x18006f056
mov eax, dword [r14]
test eax, eax
je 0x18006f05b
mov qword [rbp - 0x60], rax
mov qword [rsp + 0x60], 0
lea r9, [rsp + 0x60]
mov r8d, 0xe
mov rdx, qword [r10 + 8]
lea rcx, [rbp - 0x60]
call fcn.180038630
mov r10, qword [rsp + 0x68]
add ebx, 0x55
cmp ebx, 0x170
jb 0x18006f000
jmp 0x18006eed5
mov eax, esi
sub eax, 0x1ab
je 0x18006f0a3
cmp eax, 0x4c
jne 0x18006eede
mov rax, qword [rsp + 0x78]
mov qword [rsp + 0x20], rax
xor r9d, r9d
xor r8d, r8d
mov rdx, r10
lea ecx, [r9 + 0x38]
call fcn.180051590
mov r10, qword [rsp + 0x68]
jmp 0x18006eed5
mov qword [rsp + 0x60], 0x200
xor edx, edx
mov r8d, 0xa6
lea rcx, [rsp + 0x60]
call fcn.18003b930
mov qword [rsp + 0x78], rax
mov r10, qword [rsp + 0x68]
jmp 0x18006eed5
mov eax, dword [r9]
mov dword [rbp - 0x78], eax
xor eax, eax
mov qword [rsp + 0x30], rax
mov qword [rsp + 0x28], rax
mov qword [rsp + 0x20], rax
xor r9d, r9d
mov rbx, qword [rsp + 0x78]
mov r8, rbx
mov edx, 0xdb
lea rcx, [rbp - 0x78]
call fcn.180072b50
mov rax, qword [rbx + 8]
mov qword [rsp + 0x60], rax
lea r9, [rsp + 0x60]
mov r8d, 0x15
lea rdx, [rbp + 0x8f0]
mov rcx, qword [rbx]
call fcn.1800a7530
mov r10, qword [rsp + 0x68]
jmp 0x18006eed5
mov eax, esi
sub eax, 0x28f
je 0x18006f1c7
sub eax, 0x4c
je 0x18006f173
sub eax, 0x4c
je 0x18006eeb0
sub eax, 0x4c
je 0x18006f158
cmp eax, 0x4c
je case.0x18006e709.10
jmp 0x18006eede
mov rdx, r10
mov ecx, 0x19
call fcn.18005d140
mov byte [rsp + 0x70], bl
mov r10, qword [rsp + 0x68]
jmp 0x18006eed5
mov qword [rsp + 0x60], 0x20
mov r9d, 0xa7
lea r8, [rsp + 0x60]
mov rdx, r11
mov rcx, r11
call fcn.18001b0a0
mov byte [rsp + 0x48], 1
lea rax, [rsp + 0x48]
mov qword [rsp + 0x28], rax
mov rax, qword [rsp + 0x78]
mov qword [rsp + 0x20], rax
mov r9d, 0xdc
xor r8d, r8d
xor edx, edx
xor ecx, ecx
call fcn.1800883b0
mov r10, qword [rsp + 0x68]
jmp 0x18006eed5
mov rbx, qword [rsp + 0x78]
mov rax, qword [rbx + 8]
mov qword [rsp + 0x60], rax
mov r9d, 0xa7
lea r8, [rsp + 0x60]
mov rdx, r11
mov rcx, qword [rbx]
call fcn.18001b0a0
mov r10, qword [rsp + 0x68]
jmp 0x18006eed5
mov rax, qword [rbp - 0x18]
cmp rax, 0x10
jb 0x18006eae0
lea rdx, [rax + 1]
mov rcx, qword [rbp - 0x30]
mov rax, rcx
cmp rdx, 0x1000
jb 0x18006eadb
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
jbe 0x18006eadb
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
int3