Function at 0x1400c8830
Capabilities:
Get common file path

Disassembly:
push rbp
push r12
push r13
push r14
push r15
sub rsp, 0x450
mov rax, qword [0x14017c820]
xor rax, rsp
mov qword [rsp + 0x430], rax
mov r13, rcx
mov r12, rdx
lea rcx, [rsp + 0x230]
xor r15d, r15d
mov edx, 0x104
mov rbp, r8
mov r14d, r15d
call qword [sym.imp.KERNEL32.dll_GetSystemDirectoryA]
test eax, eax
je 0x1400c96bb
mov qword [rsp + 0x498], rbx
mov qword [rsp + 0x448], rsi
mov qword [rsp + 0x440], rdi
lea rdi, [rsp + 0x230]
lea rcx, [rsp + 0x30]
mov esi, 0x200
mov byte [rsp + 0x333], r14b
lea rax, [rsp + 0x30]
sub rdi, rcx
mov rdx, rsi
nop
nop
movzx ecx, byte [rdi + rax]
test cl, cl
je 0x1400c88d6
mov byte [rax], cl
add rax, 1
sub rdx, 1
jne 0x1400c88c0
jmp 0x1400c88db
test rdx, rdx
jne 0x1400c88df
sub rax, 1
mov byte [rax], r14b
mov rcx, rsi
lea rax, [rsp + 0x30]
nop
nop
cmp byte [rax], r14b
lea rbx, str.ddraw.dll
je 0x1400c8908
add rax, 1
sub rcx, 1
jne 0x1400c88f0
jmp 0x1400c8949
test rcx, rcx
je 0x1400c8949
mov rax, rsi
mov rdx, rsi
sub rax, rcx
sub rdx, rax
lea rcx, [rsp + rax + 0x30]
je 0x1400c8949
mov r8, rbx
sub r8, rcx
movzx eax, byte [r8 + rcx]
test al, al
je 0x1400c893d
mov byte [rcx], al
add rcx, 1
sub rdx, 1
jne 0x1400c8926
jmp 0x1400c8942
test rdx, rdx
jne 0x1400c8946
sub rcx, 1
mov byte [rcx], r14b
lea rdx, [rsp + 0x20]
lea rcx, [rsp + 0x30]
call fcn.1400c8640
test eax, eax
js 0x1400c8a3f
mov r9w, 0x5f
xor r8d, r8d
mov dx, 2
mov cx, 4
call fcn.1400c8730
mov r11, qword [rsp + 0x20]
mov rcx, r11
mov rdx, rax
call fcn.1400c8760
test eax, eax
js 0x1400c89ae
test r13, r13
je 0x1400c8996
mov dword [r13], 1
test r12, r12
je 0x1400c899f
mov dword [r12], r15d
test rbp, rbp
je 0x1400c89a8
mov byte [rbp], 0x20
mov r14d, 1
mov r9w, 0x448
xor r8d, r8d
mov dx, 3
mov cx, 4
call fcn.1400c8730
mov rcx, r11
mov rdx, rax
call fcn.1400c8760
test eax, eax
js 0x1400c89f7
test r13, r13
je 0x1400c89df
mov dword [r13], 2
test r12, r12
je 0x1400c89e8
mov dword [r12], r15d
test rbp, rbp
je 0x1400c89f1
mov byte [rbp], 0x20
mov r14d, 1
mov dx, 4
mov r9w, 0x44
xor r8d, r8d
movzx ecx, dx
call fcn.1400c8730
mov rcx, r11
mov rdx, rax
call fcn.1400c8760
test eax, eax
js 0x1400c8a3f
test r13, r13
je 0x1400c8a27
mov dword [r13], 3
test r12, r12
je 0x1400c8a30
mov dword [r12], r15d
test rbp, rbp
je 0x1400c8a39
mov byte [rbp], 0x20
mov r14d, 1
mov rdx, rsi
lea rax, [rsp + 0x30]
movzx ecx, byte [rdi + rax]
test cl, cl
je 0x1400c8a5d
mov byte [rax], cl
add rax, 1
sub rdx, 1
jne 0x1400c8a47
jmp 0x1400c8a62
test rdx, rdx
jne 0x1400c8a66
sub rax, 1
mov byte [rax], r15b
mov rcx, rsi
lea rax, [rsp + 0x30]
cmp byte [rax], r15b
je 0x1400c8a82
add rax, 1
sub rcx, 1
jne 0x1400c8a71
jmp 0x1400c8ac7
test rcx, rcx
je 0x1400c8ac7
mov rax, rsi
mov rdx, rsi
sub rax, rcx
sub rdx, rax
lea rcx, [rsp + rax + 0x30]
je 0x1400c8ac7
lea r8, str.d3drg8x.dll
sub r8, rcx
movzx eax, byte [r8 + rcx]
test al, al
je 0x1400c8abb
mov byte [rcx], al
add rcx, 1
sub rdx, 1
jne 0x1400c8aa4
jmp 0x1400c8ac0
test rdx, rdx
jne 0x1400c8ac4
sub rcx, 1
mov byte [rcx], r15b
lea rdx, [rsp + 0x20]
lea rcx, [rsp + 0x30]
call fcn.1400c8640
test eax, eax
js 0x1400c8b24
mov dx, 4
mov r9w, 0x46
xor r8d, r8d
movzx ecx, dx
call fcn.1400c8730
mov rcx, qword [rsp + 0x20]
mov rdx, rax
call fcn.1400c8760
test eax, eax
js 0x1400c8b24
test r13, r13
je 0x1400c8b0c
mov dword [r13], 3
test r12, r12
je 0x1400c8b15
mov dword [r12], r15d
test rbp, rbp
je 0x1400c8b1e
mov byte [rbp], 0x61
mov r14d, 1
mov rdx, rsi
lea rax, [rsp + 0x30]
nop
movzx ecx, byte [rdi + rax]
test cl, cl
je 0x1400c8b46
mov byte [rax], cl
add rax, 1
sub rdx, 1
jne 0x1400c8b30
jmp 0x1400c8b4b
test rdx, rdx
jne 0x1400c8b4f
sub rax, 1
mov byte [rax], r15b
mov rcx, rsi
lea rax, [rsp + 0x30]
nop
nop
cmp byte [rax], r15b
je 0x1400c8b71
add rax, 1
sub rcx, 1
jne 0x1400c8b60
jmp 0x1400c8bb3
test rcx, rcx
je 0x1400c8bb3
mov rax, rsi
mov rdx, rsi
sub rax, rcx
sub rdx, rax
lea rcx, [rsp + rax + 0x30]
je 0x1400c8bb3
mov r8, rbx
sub r8, rcx
nop
movzx eax, byte [r8 + rcx]
test al, al
je 0x1400c8ba7
mov byte [rcx], al
add rcx, 1
sub rdx, 1
jne 0x1400c8b90
jmp 0x1400c8bac
test rdx, rdx
jne 0x1400c8bb0
sub rcx, 1
mov byte [rcx], r15b
lea rdx, [rsp + 0x20]
lea rcx, [rsp + 0x30]
call fcn.1400c8640
test eax, eax
js 0x1400c8cae
mov r9w, 0x9b
xor r8d, r8d
mov dx, 5
mov cx, 4
call fcn.1400c8730
mov r11, qword [rsp + 0x20]
mov rcx, r11
mov rdx, rax
call fcn.1400c8760
test eax, eax
js 0x1400c8c18
test r13, r13
je 0x1400c8c00
mov dword [r13], 5
test r12, r12
je 0x1400c8c09
mov dword [r12], r15d
test rbp, rbp
je 0x1400c8c12
mov byte [rbp], 0x20
mov r14d, 1
mov r9w, 0x13e
xor r8d, r8d
mov dx, 6
mov cx, 4
call fcn.1400c8730
mov rcx, r11
mov rdx, rax
call fcn.1400c8760
test eax, eax
js 0x1400c8c61
test r13, r13
je 0x1400c8c49
mov dword [r13], 6
test r12, r12
je 0x1400c8c52
mov dword [r12], r15d
test rbp, rbp
je 0x1400c8c5b
mov byte [rbp], 0x20
mov r14d, 1
mov r9w, 0x1b4
xor r8d, r8d
mov dx, 6
mov cx, 4
call fcn.1400c8730
mov rcx, r11
mov rdx, rax
call fcn.1400c8760
test eax, eax
js 0x1400c8cae
test r13, r13
je 0x1400c8c92
mov dword [r13], 6
test r12, r12
je 0x1400c8c9f
mov dword [r12], 1
test rbp, rbp
je 0x1400c8ca8
mov byte [rbp], 0x20
mov r14d, 1
mov rdx, rsi
lea rax, [rsp + 0x30]
movzx ecx, byte [rdi + rax]
test cl, cl
je 0x1400c8ccc
mov byte [rax], cl
add rax, 1
sub rdx, 1
jne 0x1400c8cb6
jmp 0x1400c8cd1
test rdx, rdx
jne 0x1400c8cd5
sub rax, 1
mov byte [rax], r15b
mov rcx, rsi
lea rax, [rsp + 0x30]
cmp byte [rax], r15b
je 0x1400c8cf1
add rax, 1
sub rcx, 1
jne 0x1400c8ce0
jmp 0x1400c8d36
test rcx, rcx
je 0x1400c8d36
mov rax, rsi
mov rdx, rsi
sub rax, rcx
sub rdx, rax
lea rcx, [rsp + rax + 0x30]
je 0x1400c8d36
lea r8, str.dplayx.dll
sub r8, rcx
movzx eax, byte [rcx + r8]
test al, al
je 0x1400c8d2a
mov byte [rcx], al
add rcx, 1
sub rdx, 1
jne 0x1400c8d13
jmp 0x1400c8d2f
test rdx, rdx
jne 0x1400c8d33
sub rcx, 1
mov byte [rcx], r15b
lea rdx, [rsp + 0x20]
lea rcx, [rsp + 0x30]
call fcn.1400c8640
test eax, eax
js 0x1400c8d9a
mov r9w, 0x206
mov r8w, 3
mov dx, 6
mov cx, 4
call fcn.1400c8730
mov rcx, qword [rsp + 0x20]
mov rdx, rax
call fcn.1400c8760
test eax, eax
js 0x1400c8d9a
test r13, r13
je 0x1400c8d7e
mov dword [r13], 6
test r12, r12
je 0x1400c8d8b
mov dword [r12], 1
test rbp, rbp
je 0x1400c8d94
mov byte [rbp], 0x61
mov r14d, 1
mov rdx, rsi
lea rax, [rsp + 0x30]
movzx ecx, byte [rdi + rax]
test cl, cl
je 0x1400c8db8
mov byte [rax], cl
add rax, 1
sub rdx, 1
jne 0x1400c8da2
jmp 0x1400c8dbd
test rdx, rdx
jne 0x1400c8dc1
sub rax, 1
mov byte [rax], r15b
mov rcx, rsi
lea rax, [rsp + 0x30]
nop
cmp byte [rax], r15b
je 0x1400c8de1
add rax, 1
sub rcx, 1
jne 0x1400c8dd0
jmp 0x1400c8e23
test rcx, rcx
je 0x1400c8e23
mov rax, rsi
mov rdx, rsi
sub rax, rcx
sub rdx, rax
lea rcx, [rsp + rax + 0x30]
je 0x1400c8e23
mov r8, rbx
sub r8, rcx
nop
movzx eax, byte [rcx + r8]
test al, al
je 0x1400c8e17
mov byte [rcx], al
add rcx, 1
sub rdx, 1
jne 0x1400c8e00
jmp 0x1400c8e1c
test rdx, rdx
jne 0x1400c8e20
sub rcx, 1
mov byte [rcx], r15b
lea rdx, [rsp + 0x20]
lea rcx, [rsp + 0x30]
call fcn.1400c8640
test eax, eax
js 0x1400c8e81
mov r9w, 0x2bc
xor r8d, r8d
mov dx, 7
mov cx, 4
call fcn.1400c8730
mov rcx, qword [rsp + 0x20]
mov rdx, rax
call fcn.1400c8760
test eax, eax
js 0x1400c8e81
test r13, r13
je 0x1400c8e69
mov dword [r13], 7
test r12, r12
je 0x1400c8e72
mov dword [r12], r15d
test rbp, rbp
je 0x1400c8e7b
mov byte [rbp], 0x20
mov r14d, 1
mov rdx, rsi
lea rax, [rsp + 0x30]
nop
nop
movzx ecx, byte [rdi + rax]
test cl, cl
je 0x1400c8ea6
mov byte [rax], cl
add rax, 1
sub rdx, 1
jne 0x1400c8e90
jmp 0x1400c8eab
test rdx, rdx
jne 0x1400c8eaf
sub rax, 1
mov byte [rax], r15b
mov rcx, rsi
lea rax, [rsp + 0x30]
nop
nop
cmp byte [rax], r15b
je 0x1400c8ed1
add rax, 1
sub rcx, 1
jne 0x1400c8ec0
jmp 0x1400c8f16
test rcx, rcx
je 0x1400c8f16
mov rax, rsi
mov rdx, rsi
sub rax, rcx
sub rdx, rax
lea rcx, [rsp + rax + 0x30]
je 0x1400c8f16
lea r8, str.dinput.dll
sub r8, rcx
movzx eax, byte [rcx + r8]
test al, al
je 0x1400c8f0a
mov byte [rcx], al
add rcx, 1
sub rdx, 1
jne 0x1400c8ef3
jmp 0x1400c8f0f
test rdx, rdx
jne 0x1400c8f13
sub rcx, 1
mov byte [rcx], r15b
lea rdx, [rsp + 0x20]
lea rcx, [rsp + 0x30]
call fcn.1400c8640
test eax, eax
js 0x1400c8f74
mov r9w, 0x2cc
xor r8d, r8d
mov dx, 7
mov cx, 4
call fcn.1400c8730
mov rcx, qword [rsp + 0x20]
mov rdx, rax
call fcn.1400c8760
test eax, eax
js 0x1400c8f74
test r13, r13
je 0x1400c8f5c
mov dword [r13], 7
test r12, r12
je 0x1400c8f65
mov dword [r12], r15d
test rbp, rbp
je 0x1400c8f6e
mov byte [rbp], 0x61
mov r14d, 1
mov rdx, rsi
lea rax, [rsp + 0x30]
nop
movzx ecx, byte [rdi + rax]
test cl, cl
je 0x1400c8f96
mov byte [rax], cl
add rax, 1
sub rdx, 1
jne 0x1400c8f80
jmp 0x1400c8f9b
test rdx, rdx
jne 0x1400c8f9f
sub rax, 1
mov byte [rax], r15b
mov rcx, rsi
lea rax, [rsp + 0x30]
nop
nop
cmp byte [rax], r15b
je 0x1400c8fc1
add rax, 1
sub rcx, 1
jne 0x1400c8fb0
jmp 0x1400c9002
test rcx, rcx
je 0x1400c9002
mov rax, rsi
mov rdx, rsi
sub rax, rcx
sub rdx, rax
lea rcx, [rsp + rax + 0x30]
je 0x1400c9002
sub rbx, rcx
nop
movzx eax, byte [rcx + rbx]
test al, al
je 0x1400c8ff6
mov byte [rcx], al
add rcx, 1
sub rdx, 1
jne 0x1400c8fe0
jmp 0x1400c8ffb
test rdx, rdx
jne 0x1400c8fff
sub rcx, 1
mov byte [rcx], r15b
lea rdx, [rsp + 0x20]
lea rcx, [rsp + 0x30]
call fcn.1400c8640
test eax, eax
js 0x1400c909e
mov ebx, dword [rsp + 0x24]
mov r11, qword [rsp + 0x20]
shr ebx, 0x10
cmp bx, 4
jne 0x1400c904e
mov r9w, 0x190
xor r8d, r8d
mov dx, 8
movzx ecx, bx
call fcn.1400c8730
mov rcx, r11
mov rdx, rax
call fcn.1400c8760
test eax, eax
jns 0x1400c9079
cmp bx, 5
jne 0x1400c909e
mov r9w, 0x190
mov r8w, 0x8d2
mov dx, 1
movzx ecx, bx
call fcn.1400c8730
mov rcx, r11
mov rdx, rax
call fcn.1400c8760
test eax, eax
js 0x1400c909e
test r13, r13
je 0x1400c9086
mov dword [r13], 8
test r12, r12
je 0x1400c908f
mov dword [r12], r15d
test rbp, rbp
je 0x1400c9098
mov byte [rbp], 0x20
mov r14d, 1
mov rdx, rsi
lea rax, [rsp + 0x30]
movzx ecx, byte [rdi + rax]
test cl, cl
je 0x1400c90bc
mov byte [rax], cl
add rax, 1
sub rdx, 1
jne 0x1400c90a6
jmp 0x1400c90c1
test rdx, rdx
jne 0x1400c90c5
sub rax, 1
mov byte [rax], r15b
mov rcx, rsi
lea rax, [rsp + 0x30]
cmp byte [rax], r15b
je 0x1400c90e1
add rax, 1
sub rcx, 1
jne 0x1400c90d0
jmp 0x1400c9126
test rcx, rcx
je 0x1400c9126
mov rax, rsi
mov rdx, rsi
sub rax, rcx
sub rdx, rax
lea rcx, [rsp + rax + 0x30]
je 0x1400c9126
lea r8, str.d3d8.dll
sub r8, rcx
movzx eax, byte [rcx + r8]
test al, al
je 0x1400c911a
mov byte [rcx], al
add rcx, 1
sub rdx, 1
jne 0x1400c9103
jmp 0x1400c911f
test rdx, rdx
jne 0x1400c9123
sub rcx, 1
mov byte [rcx], r15b
lea rdx, [rsp + 0x20]
lea rcx, [rsp + 0x30]
call fcn.1400c8640
test eax, eax
js 0x1400c9247
mov ebx, dword [rsp + 0x24]
mov r11, qword [rsp + 0x20]
shr ebx, 0x10
cmp bx, 4
jne 0x1400c9174
mov r9w, 0x371
mov r8w, 1
mov dx, 8
movzx ecx, bx
call fcn.1400c8730
mov rcx, r11
mov rdx, rax
call fcn.1400c8760
test eax, eax
jns 0x1400c919f
cmp bx, 5
jne 0x1400c91c8
mov r9w, 0x371
mov r8w, 0xa28
mov dx, 1
movzx ecx, bx
call fcn.1400c8730
mov rcx, r11
mov rdx, rax
call fcn.1400c8760
test eax, eax
js 0x1400c91c8
test r13, r13
je 0x1400c91ac
mov dword [r13], 8
test r12, r12
je 0x1400c91b9
mov dword [r12], 1
test rbp, rbp
je 0x1400c91c2
mov byte [rbp], 0x20
mov r14d, 1
cmp bx, 4
jne 0x1400c91f3
mov r9w, 0x385
mov r8w, 1
mov dx, 8
movzx ecx, bx
call fcn.1400c8730
mov rcx, r11
mov rdx, rax
call fcn.1400c8760
test eax, eax
jns 0x1400c921e
cmp bx, 5
jne 0x1400c9247
mov r9w, 0x385
mov r8w, 0xa28
mov dx, 1
movzx ecx, bx
call fcn.1400c8730
mov rcx, r11
mov rdx, rax
call fcn.1400c8760
test eax, eax
js 0x1400c9247
test r13, r13
je 0x1400c922b
mov dword [r13], 8
test r12, r12
je 0x1400c9238
mov dword [r12], 1
test rbp, rbp
je 0x1400c9241
mov byte [rbp], 0x61
mov r14d, 1
mov rdx, rsi
lea rax, [rsp + 0x30]
nop
movzx ecx, byte [rdi + rax]
test cl, cl
je 0x1400c9266
mov byte [rax], cl
add rax, 1
sub rdx, 1
jne 0x1400c9250
jmp 0x1400c926b
test rdx, rdx
jne 0x1400c926f
sub rax, 1
mov byte [rax], r15b
mov rcx, rsi
lea rax, [rsp + 0x30]
nop
nop
cmp byte [rax], r15b
je 0x1400c9291
add rax, 1
sub rcx, 1
jne 0x1400c9280
jmp 0x1400c92d6
test rcx, rcx
je 0x1400c92d6
mov rax, rsi
mov rdx, rsi
sub rax, rcx
sub rdx, rax
lea rcx, [rsp + rax + 0x30]
je 0x1400c92d6
lea r8, str.mpg2splt.ax
sub r8, rcx
movzx eax, byte [rcx + r8]
test al, al
je 0x1400c92ca
mov byte [rcx], al
add rcx, 1
sub rdx, 1
jne 0x1400c92b3
jmp 0x1400c92cf
test rdx, rdx
jne 0x1400c92d3
sub rcx, 1
mov byte [rcx], r15b
lea rdx, [rsp + 0x20]
lea rcx, [rsp + 0x30]
call fcn.1400c8640
test eax, eax
js 0x1400c933a
mov r9w, 0x375
mov r8w, 1
mov dx, 3
mov cx, 6
call fcn.1400c8730
mov rcx, qword [rsp + 0x20]
mov rdx, rax
call fcn.1400c8760
test eax, eax
js 0x1400c933a
test r13, r13
je 0x1400c931e
mov dword [r13], 8
test r12, r12
je 0x1400c932b
mov dword [r12], 1
test rbp, rbp
je 0x1400c9334
mov byte [rbp], 0x62
mov r14d, 1
mov rdx, rsi
lea rax, [rsp + 0x30]
movzx ecx, byte [rdi + rax]
test cl, cl
je 0x1400c9358
mov byte [rax], cl
add rax, 1
sub rdx, 1
jne 0x1400c9342
jmp 0x1400c935d
test rdx, rdx
jne 0x1400c9361
sub rax, 1
mov byte [rax], r15b
mov rcx, rsi
lea rax, [rsp + 0x30]
nop
cmp byte [rax], r15b
je 0x1400c9381
add rax, 1
sub rcx, 1
jne 0x1400c9370
jmp 0x1400c93c6
test rcx, rcx
je 0x1400c93c6
mov rax, rsi
mov rdx, rsi
sub rax, rcx
sub rdx, rax
lea rcx, [rsp + rax + 0x30]
je 0x1400c93c6
lea r8, str.dpnet.dll
sub r8, rcx
movzx eax, byte [rcx + r8]
test al, al
je 0x1400c93ba
mov byte [rcx], al
add rcx, 1
sub rdx, 1
jne 0x1400c93a3
jmp 0x1400c93bf
test rdx, rdx
jne 0x1400c93c3
sub rcx, 1
mov byte [rcx], r15b
lea rdx, [rsp + 0x20]
lea rcx, [rsp + 0x30]
call fcn.1400c8640
test eax, eax
js 0x1400c9466
mov ebx, dword [rsp + 0x24]
mov r11, qword [rsp + 0x20]
shr ebx, 0x10
cmp bx, 4
jne 0x1400c9412
mov r9w, 0x86
xor r8d, r8d
mov dx, 9
movzx ecx, bx
call fcn.1400c8730
mov rcx, r11
mov rdx, rax
call fcn.1400c8760
test eax, eax
jns 0x1400c943d
cmp bx, 5
jne 0x1400c9466
mov r9w, 0x86
mov r8w, 0xe5d
mov dx, 2
movzx ecx, bx
call fcn.1400c8730
mov rcx, r11
mov rdx, rax
call fcn.1400c8760
test eax, eax
js 0x1400c9466
test r13, r13
je 0x1400c944a
mov dword [r13], 8
test r12, r12
je 0x1400c9457
mov dword [r12], 2
test rbp, rbp
je 0x1400c9460
mov byte [rbp], 0x20
mov r14d, 1
mov rbx, qword [rsp + 0x498]
mov rdx, rsi
lea rax, [rsp + 0x30]
movzx ecx, byte [rdi + rax]
test cl, cl
je 0x1400c948c
mov byte [rax], cl
add rax, 1
sub rdx, 1
jne 0x1400c9476
jmp 0x1400c9491
test rdx, rdx
jne 0x1400c9495
sub rax, 1
mov byte [rax], r15b
mov rcx, rsi
lea rax, [rsp + 0x30]
cmp byte [rax], r15b
je 0x1400c94b1
add rax, 1
sub rcx, 1
jne 0x1400c94a0
jmp 0x1400c94f6
test rcx, rcx
je 0x1400c94f6
mov rax, rsi
mov rdx, rsi
sub rax, rcx
sub rdx, rax
lea rcx, [rsp + rax + 0x30]
je 0x1400c94f6
lea r8, str.d3d9.dll
sub r8, rcx
movzx eax, byte [r8 + rcx]
test al, al
je 0x1400c94ea
mov byte [rcx], al
add rcx, 1
sub rdx, 1
jne 0x1400c94d3
jmp 0x1400c94ef
test rdx, rdx
jne 0x1400c94f3
sub rcx, 1
mov byte [rcx], r15b
lea rdx, [rsp + 0x20]
lea rcx, [rsp + 0x30]
call fcn.1400c8640
test eax, eax
js 0x1400c952e
test r13, r13
je 0x1400c9516
mov dword [r13], 9
test r12, r12
je 0x1400c951f
mov dword [r12], r15d
test rbp, rbp
je 0x1400c9528
mov byte [rbp], 0x20
mov r14d, 1
mov rdx, rsi
lea rax, [rsp + 0x30]
movzx ecx, byte [rdi + rax]
test cl, cl
je 0x1400c954c
mov byte [rax], cl
add rax, 1
sub rdx, 1
jne 0x1400c9536
jmp 0x1400c9551
test rdx, rdx
jne 0x1400c9555
sub rax, 1
mov byte [rax], r15b
mov rcx, rsi
lea rax, [rsp + 0x30]
cmp byte [rax], r15b
je 0x1400c9571
add rax, 1
sub rcx, 1
jne 0x1400c9560
jmp 0x1400c95b6
test rcx, rcx
je 0x1400c95b6
mov rax, rsi
mov rdx, rsi
sub rax, rcx
sub rdx, rax
lea rcx, [rsp + rax + 0x30]
je 0x1400c95b6
lea r8, str.d3d10.dll
sub r8, rcx
movzx eax, byte [r8 + rcx]
test al, al
je 0x1400c95aa
mov byte [rcx], al
add rcx, 1
sub rdx, 1
jne 0x1400c9593
jmp 0x1400c95af
test rdx, rdx
jne 0x1400c95b3
sub rcx, 1
mov byte [rcx], r15b
lea rdx, [rsp + 0x20]
lea rcx, [rsp + 0x30]
call fcn.1400c8640
test eax, eax
js 0x1400c95ee
test r13, r13
je 0x1400c95d6
mov dword [r13], 0xa
test r12, r12
je 0x1400c95df
mov dword [r12], r15d
test rbp, rbp
je 0x1400c95e8
mov byte [rbp], 0x20
mov r14d, 1
mov rdx, rsi
lea rax, [rsp + 0x30]
movzx ecx, byte [rdi + rax]
test cl, cl
je 0x1400c960c
mov byte [rax], cl
add rax, 1
sub rdx, 1
jne 0x1400c95f6
jmp 0x1400c9611
test rdx, rdx
jne 0x1400c9615
sub rax, 1
mov rdi, qword [rsp + 0x440]
mov byte [rax], r15b
mov rcx, rsi
lea rax, [rsp + 0x30]
cmp byte [rax], r15b
je 0x1400c9639
add rax, 1
sub rcx, 1
jne 0x1400c9628
jmp 0x1400c967a
test rcx, rcx
je 0x1400c967a
mov rax, rsi
sub rax, rcx
sub rsi, rax
lea rcx, [rsp + rax + 0x30]
je 0x1400c967a
lea rdx, str.d3d11.dll
sub rdx, rcx
movzx eax, byte [rdx + rcx]
test al, al
je 0x1400c966e
mov byte [rcx], al
add rcx, 1
sub rsi, 1
jne 0x1400c9658
jmp 0x1400c9673
test rsi, rsi
jne 0x1400c9677
sub rcx, 1
mov byte [rcx], r15b
lea rdx, [rsp + 0x20]
lea rcx, [rsp + 0x30]
call fcn.1400c8640
mov rsi, qword [rsp + 0x448]
test eax, eax
js 0x1400c96b6
test r13, r13
je 0x1400c96a2
mov dword [r13], SafeArrayGetUBound
test r12, r12
je 0x1400c96ab
mov dword [r12], r15d
test rbp, rbp
je 0x1400c96d2
mov byte [rbp], 0x20
jmp 0x1400c96d2
test r14d, r14d
jne 0x1400c96d2
test r13, r13
je 0x1400c96c4
mov dword [r13], r15d
test r12, r12
je 0x1400c96cd
mov dword [r12], r15d
test rbp, rbp
jne 0x1400c96b0
xor eax, eax
mov rcx, qword [rsp + 0x430]
xor rcx, rsp
call fcn.1400efff0
add rsp, 0x450
pop r15
pop r14
pop r13
pop r12
pop rbp
ret