Function at 0x4720e0
Capabilities:
Get common file path

Disassembly:
mov qword [rsp + 0x18], r8
mov qword [rsp + 0x10], rdx
mov eax, 0x2a98
call fcn.00499730
sub rsp, rax
mov qword [rsp + 0x2a90], rbx
mov qword [rsp + 0x2a88], rbp
mov qword [rsp + 0x2a80], rsi
mov qword [rsp + 0x2a78], rdi
mov qword [rsp + 0x2a70], r12
mov qword [rsp + 0x2a68], r13
mov qword [rsp + 0x2a60], r14
mov qword [rsp + 0x2a58], r15
mov rbx, rdx
mov qword [rsp + 0x130], 0xfffffffffffffffe
call fcn.004545a0
test eax, eax
je 0x4721c6
xor r8d, r8d
lea rdx, str.CSetupFilesInfo::GetMiscCopyFileList_n
lea rcx, [rsp + 0x140]
call fcn.00486850
movabs rdx, 0x203a5952544e45
mov qword [rsp + 0x250], rdx
lea rdi, [rsp + 0x250]
xor eax, eax
mov rcx, 0xffffffffffffffff
repne scasb al, byte [rdi]
lea rdx, [rsp + 0x140]
xor ecx, ecx
movzx eax, byte [rdx + rcx]
mov byte [rdi + rcx - 1], al
inc rcx
test al, al
jne 0x472195
call fcn.004546e0
mov rcx, rax
call fcn.004545b0
call fcn.004546e0
mov rcx, rax
lea rdx, [rsp + 0x250]
call fcn.004548a0
xor r13d, r13d
mov qword [rsp + 0x60], r13
mov qword [rsp + 0x70], r13
mov qword [rsp + 0x78], r13
mov qword [rsp + 0x88], r13
mov qword [rsp + 0x90], r13
mov qword [rsp + 0xa0], r13
mov qword [rsp + 0xb0], r13
mov qword [rsp + 0xc0], r13
mov rax, qword [0x004dfd00]
mov qword [rsp + 0x48], rax
mov edx, 0x104
lea rcx, [rsp + 0x360]
call qword [sym.imp.KERNEL32.dll_GetWindowsDirectoryA]
lea rdx, str.INF_
lea rcx, [rsp + 0x120]
call fcn.0049b290
mov rdi, rax
lea rdx, [rsp + 0x360]
lea rcx, [rsp + 0x118]
call fcn.0049b290
nop
mov r8, rdi
mov rdx, rax
lea rcx, [rsp + 0xf8]
call fcn.0049b804
nop
lea rcx, [rsp + 0x118]
call fcn.0049b1dc
nop
lea rcx, [rsp + 0x120]
call fcn.0049b1dc
mov rdx, qword [0x004dfd00]
mov qword [rsp + 0xe8], rdx
call fcn.0047fa10
test eax, eax
je 0x472304
lea rdx, str.System32CatRootF750E6C3_38EE_11D1_85E5_00C04FC295EE_
lea rcx, [rsp + 0x30]
call fcn.0049b290
mov rdi, rax
lea rdx, [rsp + 0x360]
lea rcx, [rsp + 0xd8]
call fcn.0049b290
nop
mov r8, rdi
mov rdx, rax
lea rcx, [rsp + 0x50]
call fcn.0049b804
nop
mov rdx, rax
lea rcx, [rsp + 0xe8]
call fcn.0049b31c
nop
lea rcx, [rsp + 0x50]
call fcn.0049b1dc
nop
lea rcx, [rsp + 0xd8]
call fcn.0049b1dc
nop
lea rcx, [rsp + 0x30]
call fcn.0049b1dc
jmp 0x472373
lea rdx, str.CatRootF750E6C3_38EE_11D1_85E5_00C04FC295EE_
lea rcx, [rsp + 0x30]
call fcn.0049b290
mov rdi, rax
lea rdx, [rsp + 0x360]
lea rcx, [rsp + 0xd8]
call fcn.0049b290
nop
mov r8, rdi
mov rdx, rax
lea rcx, [rsp + 0x50]
call fcn.0049b804
nop
mov rdx, rax
lea rcx, [rsp + 0xe8]
call fcn.0049b31c
nop
lea rcx, [rsp + 0x50]
call fcn.0049b1dc
nop
lea rcx, [rsp + 0xd8]
call fcn.0049b1dc
nop
lea rcx, [rsp + 0x30]
call fcn.0049b1dc
lea r13, [rbx + 0x10]
mov rax, qword [r13]
mov edi, dword [rax - 8]
mov dl, 0x5c
mov rcx, r13
call fcn.00499914
sub edi, eax
dec edi
mov r8d, edi
lea rdx, [rsp + 0x50]
mov rcx, r13
call fcn.00499d4c
nop
mov rbx, qword [rax]
xor eax, eax
mov rcx, 0xffffffffffffffff
mov rdi, rbx
repne scasb al, byte [rdi]
not rcx
dec rcx
mov rbp, rcx
mov qword [rsp + 0x30], rcx
je 0x472413
add rcx, 5
call fcn.00486ab0
mov rsi, rax
mov qword [rsp + 0x60], rax
lea r8, [rbp + 5]
xor edx, edx
mov rcx, rax
call fcn.00499630
lea rcx, [rbp + 5]
call fcn.00486ab0
mov qword [rsp + 0x68], rax
lea r8, [rbp + 5]
xor edx, edx
mov rcx, rax
call fcn.00499630
mov qword [rsp + 0x70], rbp
mov rcx, rsi
sub rcx, rbx
movzx eax, byte [rbx]
mov byte [rbx + rcx], al
inc rbx
test al, al
jne 0x472404
jmp 0x47245a
mov ecx, 6
call fcn.00486ab0
mov rsi, rax
mov qword [rsp + 0x60], rax
xor eax, eax
mov dword [rsi], eax
mov word [rsi + 4], ax
mov ecx, 6
call fcn.00486ab0
mov rbp, rax
mov qword [rsp + 0x68], rax
xor eax, eax
mov dword [rbp], eax
mov word [rbp + 4], ax
mov eax, 1
mov qword [rsp + 0x30], rax
mov qword [rsp + 0x70], rax
mov byte [rsi], 0
lea rcx, [rsp + 0x50]
call fcn.0049b1dc
mov rbx, qword [r13]
xor eax, eax
mov rcx, 0xffffffffffffffff
mov rdi, rbx
repne scasb al, byte [rdi]
not rcx
dec rcx
mov r12, rcx
mov qword [rsp + 0x38], rcx
je 0x4724ef
add rcx, 5
call fcn.00486ab0
mov rbp, rax
mov qword [rsp + 0x78], rax
lea r8, [r12 + 5]
xor edx, edx
mov rcx, rax
call fcn.00499630
lea rcx, [r12 + 5]
call fcn.00486ab0
mov r14, rax
mov qword [rsp + 0x80], rax
lea r8, [r12 + 5]
xor edx, edx
mov rcx, rax
call fcn.00499630
mov qword [rsp + 0x88], r12
mov rcx, rbp
sub rcx, rbx
nop
nop
movzx eax, byte [rbx]
mov byte [rbx + rcx], al
inc rbx
test al, al
jne 0x4724e0
jmp 0x47253f
mov ecx, 6
call fcn.00486ab0
mov rbp, rax
mov qword [rsp + 0x78], rax
xor eax, eax
mov dword [rbp], eax
mov word [rbp + 4], ax
mov ecx, 6
call fcn.00486ab0
mov r14, rax
mov qword [rsp + 0x80], rax
xor eax, eax
mov dword [r14], eax
mov word [r14 + 4], ax
mov eax, 1
mov qword [rsp + 0x38], rax
mov qword [rsp + 0x88], rax
mov byte [rbp], 0
mov rdx, rsi
lea rcx, [rsp + 0xd8]
call fcn.0049b290
nop
mov r8, rax
lea rdx, [rsp + 0xf8]
lea rcx, [rsp + 0x50]
call fcn.0049b804
nop
mov rbx, qword [rax]
xor eax, eax
mov rcx, 0xffffffffffffffff
mov rdi, rbx
repne scasb al, byte [rdi]
not rcx
dec rcx
mov qword [rsp + 0x40], rcx
je 0x4725ef
lea rdi, [rcx + 5]
mov rcx, rdi
call fcn.00486ab0
mov r12, rax
mov qword [rsp + 0x90], rax
mov r8, rdi
xor edx, edx
mov rcx, rax
call fcn.00499630
mov rcx, rdi
call fcn.00486ab0
mov r15, rax
mov qword [rsp + 0x98], rax
mov r8, rdi
xor edx, edx
mov rcx, rax
call fcn.00499630
mov rax, qword [rsp + 0x40]
mov qword [rsp + 0xa0], rax
mov rcx, r12
sub rcx, rbx
nop
nop
movzx eax, byte [rbx]
mov byte [rbx + rcx], al
inc rbx
test al, al
jne 0x4725e0
jmp 0x472645
mov ecx, 6
call fcn.00486ab0
mov r12, rax
mov qword [rsp + 0x90], rax
xor eax, eax
mov dword [r12], eax
mov word [r12 + 4], ax
mov ecx, 6
call fcn.00486ab0
mov r15, rax
mov qword [rsp + 0x98], rax
xor eax, eax
mov dword [r15], eax
mov word [r15 + 4], ax
mov edi, 1
mov qword [rsp + 0x40], rdi
mov qword [rsp + 0xa0], rdi
mov byte [r12], al
lea rcx, [rsp + 0x50]
call fcn.0049b1dc
nop
lea rcx, [rsp + 0xd8]
call fcn.0049b1dc
xor edi, edi
mov dword [rsp + 0xa8], edi
mov dword [rsp + 0xac], 2
lea rdx, [rsp + 0x60]
mov rbx, qword [rsp + 0x2ab0]
mov rcx, rbx
call fcn.00428420
mov qword [rsp + 0x1760], rdi
mov qword [rsp + 0x1770], rdi
mov qword [rsp + 0x1778], rdi
mov qword [rsp + 0x1788], rdi
mov qword [rsp + 0x18a8], rdi
mov r8d, 0x1f4
mov edx, 0x4b
lea rcx, [rsp + 0x18b0]
call fcn.00499630
lea rax, [rsp + 0x1aa8]
mov ecx, 0x3e
mov qword [rax], rdi
mov qword [rax + 8], rdi
mov qword [rax + 0x10], rdi
add rax, 0x40
mov qword [rax - 0x28], rdi
mov qword [rax - 0x20], rdi
mov qword [rax - 0x18], rdi
mov qword [rax - 0x10], rdi
mov qword [rax - 8], rdi
dec rcx
jne 0x4726d3
mov qword [rax], rdi
mov qword [rax + 8], rdi
mov qword [rax + 0x10], rdi
mov qword [rax + 0x18], rdi
mov rax, qword [r13]
mov edx, dword [rax - 8]
mov rcx, r13
call fcn.0049b550
mov rdx, rax
lea rcx, [rsp + 0x1760]
call fcn.00428550
nop
mov dword [rsp + 0x20], 1
lea r9, [rsp + 0x250]
lea r8, str.CatalogFile
lea rdx, [0x004ae580]
lea rcx, [rsp + 0x1760]
call fcn.00425040
test eax, eax
je 0x4728f0
mov rcx, qword [rsp + 0x1760]
lea rdx, [rsp + 0x140]
sub rdx, rcx
movzx eax, byte [rcx]
mov byte [rcx + rdx], al
inc rcx
test al, al
jne 0x472770
lea rdi, [rsp + 0x140]
xor eax, eax
mov rcx, 0xffffffffffffffff
repne scasb al, byte [rdi]
movzx eax, word [0x004a9dfc]
mov word [rdi - 1], ax
lea rdi, [rsp + 0x140]
xor eax, eax
mov rcx, 0xffffffffffffffff
repne scasb al, byte [rdi]
lea rdx, [rsp + 0x250]
xor ecx, ecx
nop
nop
movzx eax, byte [rdx + rcx]
mov byte [rdi + rcx - 1], al
inc rcx
test al, al
jne 0x4727c0
lea rdx, [rsp + 0x140]
lea rcx, [rsp + 0x48]
call fcn.0049b398
mov rdx, qword [rsp + 0x48]
mov edi, dword [rdx - 8]
mov dl, 0x5c
lea rcx, [rsp + 0x48]
call fcn.00499914
sub edi, eax
dec edi
mov r8d, edi
lea rdx, [rsp + 0x50]
lea rcx, [rsp + 0x48]
call fcn.00499d4c
nop
mov rdx, qword [rax]
lea rcx, [rsp + 0x60]
call fcn.00402030
nop
lea rcx, [rsp + 0x50]
call fcn.0049b1dc
mov rdx, qword [rsp + 0x48]
lea rcx, [rsp + 0x78]
call fcn.00402030
mov rdx, qword [rsp + 0x60]
lea rcx, [rsp + 0xd8]
call fcn.0049b290
nop
mov r8, rax
lea rdx, [rsp + 0xe8]
lea rcx, [rsp + 0x50]
call fcn.0049b804
nop
mov rdx, qword [rax]
lea rcx, [rsp + 0x90]
call fcn.00402030
nop
lea rcx, [rsp + 0x50]
call fcn.0049b1dc
nop
lea rcx, [rsp + 0xd8]
call fcn.0049b1dc
xor r13d, r13d
mov dword [rsp + 0xa8], r13d
mov dword [rsp + 0xac], 1
lea rdx, [rsp + 0x60]
mov rcx, rbx
call fcn.00428420
mov rax, qword [rsp + 0xa0]
mov qword [rsp + 0x40], rax
mov r15, qword [rsp + 0x98]
mov r12, qword [rsp + 0x90]
mov rax, qword [rsp + 0x88]
mov qword [rsp + 0x38], rax
mov r14, qword [rsp + 0x80]
mov rbp, qword [rsp + 0x78]
mov rax, qword [rsp + 0x70]
mov qword [rsp + 0x30], rax
mov rsi, qword [rsp + 0x60]
jmp 0x4728f3
xor r13d, r13d
mov ecx, r13d
mov dword [rsp + 0xf0], r13d
mov rax, r13
mov qword [rsp + 0x50], r13
mov rdi, qword [rsp + 0x2aa8]
nop
shl rax, 4
lea rax, [rax + rdi + 0x38]
mov qword [rsp + 0xd8], rax
mov rax, qword [rax]
cmp dword [rax - 8], 0
je 0x4733f0
mov ebx, dword [rax - 8]
mov eax, ecx
shl rax, 4
lea rdi, [rax + rdi + 0x38]
mov dl, 0x5c
mov rcx, rdi
call fcn.00499914
sub ebx, eax
dec ebx
mov r8d, ebx
lea rdx, [rsp + 0x100]
mov rcx, rdi
call fcn.00499d4c
nop
mov rbx, qword [rax]
xor eax, eax
mov rcx, 0xffffffffffffffff
mov rdi, rbx
repne scasb al, byte [rdi]
not rcx
dec rcx
mov r13, rcx
je 0x4729f5
cmp rcx, qword [rsp + 0x30]
jbe 0x4729d3
test rsi, rsi
je 0x472998
mov rcx, rsi
call fcn.0049bb84
mov rcx, qword [rsp + 0x68]
call fcn.0049bb84
lea rcx, [r13 + 5]
call fcn.00486ab0
mov rsi, rax
mov qword [rsp + 0x60], rax
lea r8, [r13 + 5]
xor edx, edx
mov rcx, rax
call fcn.00499630
lea rcx, [r13 + 5]
call fcn.00486ab0
mov qword [rsp + 0x68], rax
lea r8, [r13 + 5]
xor edx, edx
mov rcx, rax
call fcn.00499630
mov rax, r13
mov qword [rsp + 0x30], r13
mov qword [rsp + 0x70], r13
mov rcx, rsi
sub rcx, rbx
movzx eax, byte [rbx]
mov byte [rbx + rcx], al
inc rbx
test al, al
jne 0x4729e6
jmp 0x472a57
cmp qword [rsp + 0x30], 1
jae 0x472a45
test rsi, rsi
je 0x472a14
mov rcx, rsi
call fcn.0049bb84
mov rcx, qword [rsp + 0x68]
call fcn.0049bb84
mov ecx, 6
call fcn.00486ab0
mov rsi, rax
mov qword [rsp + 0x60], rax
xor eax, eax
mov dword [rsi], eax
mov word [rsi + 4], ax
mov ecx, 6
call fcn.00486ab0
mov qword [rsp + 0x68], rax
xor ecx, ecx
mov dword [rax], ecx
mov word [rax + 4], cx
mov eax, 1
mov qword [rsp + 0x30], rax
mov qword [rsp + 0x70], rax
mov byte [rsi], 0
lea rcx, [rsp + 0x100]
call fcn.0049b1dc
mov rbx, qword [rsp + 0xd8]
mov rbx, qword [rbx]
xor eax, eax
mov rcx, 0xffffffffffffffff
mov rdi, rbx
repne scasb al, byte [rdi]
not rcx
dec rcx
mov r13, rcx
je 0x472b0f
cmp rcx, qword [rsp + 0x38]
jbe 0x472ae9
test rbp, rbp
je 0x472aa8
mov rcx, rbp
call fcn.0049bb84
mov rcx, r14
call fcn.0049bb84
lea rcx, [r13 + 5]
call fcn.00486ab0
mov rbp, rax
mov qword [rsp + 0x78], rax
lea r8, [r13 + 5]
xor edx, edx
mov rcx, rax
call fcn.00499630
lea rcx, [r13 + 5]
call fcn.00486ab0
mov r14, rax
mov qword [rsp + 0x80], rax
lea r8, [r13 + 5]
xor edx, edx
mov rcx, rax
call fcn.00499630
mov rax, r13
mov qword [rsp + 0x38], r13
mov qword [rsp + 0x88], r13
mov rcx, rbp
sub rcx, rbx
nop
movzx eax, byte [rbx]
mov byte [rcx + rbx], al
inc rbx
test al, al
jne 0x472b00
jmp 0x472b7c
cmp qword [rsp + 0x38], 1
jae 0x472b66
test rbp, rbp
je 0x472b2c
mov rcx, rbp
call fcn.0049bb84
mov rcx, r14
call fcn.0049bb84
mov ecx, 6
call fcn.00486ab0
mov rbp, rax
mov qword [rsp + 0x78], rax
xor eax, eax
mov dword [rbp], eax
mov word [rbp + 4], ax
mov ecx, 6
call fcn.00486ab0
mov r14, rax
mov qword [rsp + 0x80], rax
xor eax, eax
mov dword [r14], eax
mov word [r14 + 4], ax
mov eax, 1
mov qword [rsp + 0x38], rax
mov qword [rsp + 0x88], rax
mov byte [rbp], 0
mov rdx, rsi
lea rcx, [rsp + 0x110]
call fcn.0049b290
nop
mov r8, rax
lea rdx, [rsp + 0xf8]
lea rcx, [rsp + 0x108]
call fcn.0049b804
nop
mov rbx, qword [rax]
xor eax, eax
mov rcx, 0xffffffffffffffff
mov rdi, rbx
repne scasb al, byte [rdi]
not rcx
dec rcx
mov r13, rcx
je 0x472c4f
cmp rcx, qword [rsp + 0x40]
jbe 0x472c26
test r12, r12
je 0x472be2
mov rcx, r12
call fcn.0049bb84
mov rcx, r15
call fcn.0049bb84
lea rcx, [r13 + 5]
call fcn.00486ab0
mov r12, rax
mov qword [rsp + 0x90], rax
lea r8, [r13 + 5]
xor edx, edx
mov rcx, rax
call fcn.00499630
lea rcx, [r13 + 5]
call fcn.00486ab0
mov r15, rax
mov qword [rsp + 0x98], rax
lea r8, [r13 + 5]
xor edx, edx
mov rcx, rax
call fcn.00499630
mov qword [rsp + 0x40], r13
mov qword [rsp + 0xa0], r13
mov rcx, r12
sub rcx, rbx
nop
nop
movzx eax, byte [rbx]
mov byte [rcx + rbx], al
inc rbx
test al, al
jne 0x472c40
jmp 0x472cc3
cmp qword [rsp + 0x40], 1
jae 0x472cac
test r12, r12
je 0x472c6c
mov rcx, r12
call fcn.0049bb84
mov rcx, r15
call fcn.0049bb84
mov ecx, 6
call fcn.00486ab0
mov r12, rax
mov qword [rsp + 0x90], rax
xor eax, eax
mov dword [r12], eax
mov word [r12 + 4], ax
mov ecx, 6
call fcn.00486ab0
mov r15, rax
mov qword [rsp + 0x98], rax
xor eax, eax
mov dword [r15], eax
mov word [r15 + 4], ax
mov eax, 1
mov qword [rsp + 0x40], rax
mov qword [rsp + 0xa0], rax
mov byte [r12], 0
lea rcx, [rsp + 0x108]
call fcn.0049b1dc
nop
lea rcx, [rsp + 0x110]
call fcn.0049b1dc
xor r13d, r13d
mov dword [rsp + 0xa8], r13d
mov dword [rsp + 0xac], 2
mov rbx, qword [rsp + 0x2ab0]
mov rdi, qword [rbx]
cmp rdi, 0x1f4
jae 0x472dd3
lea rax, [rdi + 1]
mov qword [rbx], rax
cmp rdi, 0xffffffffffffffff
je 0x472dd3
mov ecx, 0x68
call fcn.0049bb48
test rax, rax
je 0x472d4d
mov qword [rax], r13
mov qword [rax + 0x10], r13
mov qword [rax + 0x18], r13
mov qword [rax + 0x28], r13
mov qword [rax + 0x30], r13
mov qword [rax + 0x40], r13
mov qword [rax + 0x50], r13
mov qword [rax + 0x60], r13
jmp 0x472d50
mov rax, r13
mov qword [rbx + rdi*8 + 0x200], rax
mov dword [rax + 0x48], r13d
mov rax, qword [rbx + rdi*8 + 0x200]
mov dword [rax + 0x4c], 2
test r12, r12
je 0x472d84
mov rcx, qword [rbx + rdi*8 + 0x200]
add rcx, 0x30
mov rdx, r12
call fcn.00402030
test rsi, rsi
je 0x472d99
mov rdx, rsi
mov rcx, qword [rbx + rdi*8 + 0x200]
call fcn.00402030
mov rax, qword [rsp + 0xb0]
test rax, rax
je 0x472dba
mov rcx, qword [rbx + rdi*8 + 0x200]
add rcx, 0x50
mov rdx, rax
call fcn.00402030
test rbp, rbp
je 0x472dd3
mov rcx, qword [rbx + rdi*8 + 0x200]
add rcx, 0x18
mov rdx, rbp
call fcn.00402030
mov qword [rsp + 0x470], r13
mov qword [rsp + 0x480], r13
mov qword [rsp + 0x488], r13
mov qword [rsp + 0x498], r13
mov qword [rsp + 0x5b8], r13
mov r8d, 0x1f4
mov edx, 0x4b
lea rcx, [rsp + 0x5c0]
call fcn.00499630
lea rax, [rsp + 0x7b8]
mov ecx, 0x3e
mov qword [rax], r13
mov qword [rax + 8], r13
mov qword [rax + 0x10], r13
add rax, 0x40
mov qword [rax - 0x28], r13
mov qword [rax - 0x20], r13
mov qword [rax - 0x18], r13
mov qword [rax - 0x10], r13
mov qword [rax - 8], r13
dec rcx
jne 0x472e20
mov qword [rax], r13
mov qword [rax + 8], r13
mov qword [rax + 0x10], r13
mov qword [rax + 0x18], r13
mov rcx, qword [rsp + 0xd8]
mov rax, qword [rcx]
mov edx, dword [rax - 8]
call fcn.0049b550
mov rdx, rax
lea rcx, [rsp + 0x470]
call fcn.00428550
nop
mov dword [rsp + 0x20], 1
lea r9, [rsp + 0x250]
lea r8, str.CatalogFile
lea rdx, [0x004ae580]
lea rcx, [rsp + 0x470]
call fcn.00425040
test eax, eax
je 0x4733d4
mov rcx, qword [rsp + 0x470]
lea rdx, [rsp + 0x140]
sub rdx, rcx
movzx eax, byte [rcx]
mov byte [rcx + rdx], al
inc rcx
test al, al
jne 0x472ec1
lea rdi, [rsp + 0x140]
xor eax, eax
mov rcx, 0xffffffffffffffff
repne scasb al, byte [rdi]
movzx eax, word [0x004a9dfc]
mov word [rdi - 1], ax
lea rdi, [rsp + 0x140]
xor eax, eax
mov rcx, 0xffffffffffffffff
repne scasb al, byte [rdi]
lea rdx, [rsp + 0x250]
xor ecx, ecx
nop
nop
movzx eax, byte [rdx + rcx]
mov byte [rdi + rcx - 1], al
inc rcx
test al, al
jne 0x472f10
lea rdx, [rsp + 0x140]
lea rcx, [rsp + 0x48]
call fcn.0049b398
mov rdx, qword [rsp + 0x48]
mov edi, dword [rdx - 8]
mov dl, 0x5c
lea rcx, [rsp + 0x48]
call fcn.00499914
sub edi, eax
dec edi
mov r8d, edi
lea rdx, [rsp + 0x128]
lea rcx, [rsp + 0x48]
call fcn.00499d4c
nop
mov rbx, qword [rax]
xor eax, eax
mov rcx, 0xffffffffffffffff
mov rdi, rbx
repne scasb al, byte [rdi]
not rcx
dec rcx
mov r13, rcx
je 0x472fff
cmp rcx, qword [rsp + 0x30]
jbe 0x472fd8
test rsi, rsi
je 0x472f9d
mov rcx, rsi
call fcn.0049bb84
mov rcx, qword [rsp + 0x68]
call fcn.0049bb84
lea rcx, [r13 + 5]
call fcn.00486ab0
mov rsi, rax
mov qword [rsp + 0x60], rax
lea r8, [r13 + 5]
xor edx, edx
mov rcx, rax
call fcn.00499630
lea rcx, [r13 + 5]
call fcn.00486ab0
mov qword [rsp + 0x68], rax
lea r8, [r13 + 5]
xor edx, edx
mov rcx, rax
call fcn.00499630
mov rax, r13
mov qword [rsp + 0x30], r13
mov qword [rsp + 0x70], r13
mov rcx, rsi
sub rcx, rbx
nop
nop
movzx eax, byte [rbx]
mov byte [rbx + rcx], al
inc rbx
test al, al
jne 0x472ff0
jmp 0x473061
cmp qword [rsp + 0x30], 1
jae 0x47304f
test rsi, rsi
je 0x47301e
mov rcx, rsi
call fcn.0049bb84
mov rcx, qword [rsp + 0x68]
call fcn.0049bb84
mov ecx, 6
call fcn.00486ab0
mov rsi, rax
mov qword [rsp + 0x60], rax
xor eax, eax
mov dword [rsi], eax
mov word [rsi + 4], ax
mov ecx, 6
call fcn.00486ab0
mov qword [rsp + 0x68], rax
xor ecx, ecx
mov dword [rax], ecx
mov word [rax + 4], cx
mov eax, 1
mov qword [rsp + 0x30], rax
mov qword [rsp + 0x70], rax
mov byte [rsi], 0
lea rcx, [rsp + 0x128]
call fcn.0049b1dc
mov rbx, qword [rsp + 0x48]
xor eax, eax
mov rcx, 0xffffffffffffffff
mov rdi, rbx
repne scasb al, byte [rdi]
not rcx
dec rcx
mov r13, rcx
je 0x473112
cmp rcx, qword [rsp + 0x38]
jbe 0x4730ed
test rbp, rbp
je 0x4730ac
mov rcx, rbp
call fcn.0049bb84
mov rcx, r14
call fcn.0049bb84
lea rcx, [r13 + 5]
call fcn.00486ab0
mov rbp, rax
mov qword [rsp + 0x78], rax
lea r8, [r13 + 5]
xor edx, edx
mov rcx, rax
call fcn.00499630
lea rcx, [r13 + 5]
call fcn.00486ab0
mov r14, rax
mov qword [rsp + 0x80], rax
lea r8, [r13 + 5]
xor edx, edx
mov rcx, rax
call fcn.00499630
mov rax, r13
mov qword [rsp + 0x38], r13
mov qword [rsp + 0x88], r13
mov rcx, rbp
sub rcx, rbx
movzx eax, byte [rbx]
mov byte [rbx + rcx], al
inc rbx
test al, al
jne 0x473103
jmp 0x47317f
cmp qword [rsp + 0x38], 1
jae 0x473169
test rbp, rbp
je 0x47312f
mov rcx, rbp
call fcn.0049bb84
mov rcx, r14
call fcn.0049bb84
mov ecx, 6
call fcn.00486ab0
mov rbp, rax
mov qword [rsp + 0x78], rax
xor eax, eax
mov dword [rbp], eax
mov word [rbp + 4], ax
mov ecx, 6
call fcn.00486ab0
mov r14, rax
mov qword [rsp + 0x80], rax
xor eax, eax
mov dword [r14], eax
mov word [r14 + 4], ax
mov eax, 1
mov qword [rsp + 0x38], rax
mov qword [rsp + 0x88], rax
mov byte [rbp], 0
mov rdx, rsi
lea rcx, [rsp + 0xd0]
call fcn.0049b290
nop
mov r8, rax
lea rdx, [rsp + 0xe8]
lea rcx, [rsp + 0xe0]
call fcn.0049b804
nop
mov rbx, qword [rax]
xor eax, eax
mov rcx, 0xffffffffffffffff
mov rdi, rbx
repne scasb al, byte [rdi]
not rcx
dec rcx
mov r13, rcx
je 0x47324f
cmp rcx, qword [rsp + 0x40]
jbe 0x473229
test r12, r12
je 0x4731e5
mov rcx, r12
call fcn.0049bb84
mov rcx, r15
call fcn.0049bb84
lea rcx, [r13 + 5]
call fcn.00486ab0
mov r12, rax
mov qword [rsp + 0x90], rax
lea r8, [r13 + 5]
xor edx, edx
mov rcx, rax
call fcn.00499630
lea rcx, [r13 + 5]
call fcn.00486ab0
mov r15, rax
mov qword [rsp + 0x98], rax
lea r8, [r13 + 5]
xor edx, edx
mov rcx, rax
call fcn.00499630
mov qword [rsp + 0x40], r13
mov qword [rsp + 0xa0], r13
mov rcx, r12
sub rcx, rbx
nop
movzx eax, byte [rbx]
mov byte [rbx + rcx], al
inc rbx
test al, al
jne 0x473240
jmp 0x4732c3
cmp qword [rsp + 0x40], 1
jae 0x4732ac
test r12, r12
je 0x47326c
mov rcx, r12
call fcn.0049bb84
mov rcx, r15
call fcn.0049bb84
mov ecx, 6
call fcn.00486ab0
mov r12, rax
mov qword [rsp + 0x90], rax
xor eax, eax
mov dword [r12], eax
mov word [r12 + 4], ax
mov ecx, 6
call fcn.00486ab0
mov r15, rax
mov qword [rsp + 0x98], rax
xor eax, eax
mov dword [r15], eax
mov word [r15 + 4], ax
mov eax, 1
mov qword [rsp + 0x40], rax
mov qword [rsp + 0xa0], rax
mov byte [r12], 0
lea rcx, [rsp + 0xe0]
call fcn.0049b1dc
nop
lea rcx, [rsp + 0xd0]
call fcn.0049b1dc
xor r13d, r13d
mov dword [rsp + 0xa8], r13d
mov dword [rsp + 0xac], 1
mov rbx, qword [rsp + 0x2ab0]
mov rdi, qword [rbx]
cmp rdi, 0x1f4
jae 0x4733d4
lea rax, [rdi + 1]
mov qword [rbx], rax
cmp rdi, 0xffffffffffffffff
je 0x4733d4
mov ecx, 0x68
call fcn.0049bb48
test rax, rax
je 0x47334d
mov qword [rax], r13
mov qword [rax + 0x10], r13
mov qword [rax + 0x18], r13
mov qword [rax + 0x28], r13
mov qword [rax + 0x30], r13
mov qword [rax + 0x40], r13
mov qword [rax + 0x50], r13
mov qword [rax + 0x60], r13
jmp 0x473350
mov rax, r13
mov qword [rbx + rdi*8 + 0x200], rax
mov dword [rax + 0x48], r13d
mov rax, qword [rbx + rdi*8 + 0x200]
mov dword [rax + 0x4c], 1
test r12, r12
je 0x473384
mov rcx, qword [rbx + rdi*8 + 0x200]
add rcx, 0x30
mov rdx, r12
call fcn.00402030
test rsi, rsi
je 0x473399
mov rdx, rsi
mov rcx, qword [rbx + rdi*8 + 0x200]
call fcn.00402030
mov rax, qword [rsp + 0xb0]
test rax, rax
je 0x4733ba
mov rcx, qword [rbx + rdi*8 + 0x200]
add rcx, 0x50
mov rdx, rax
call fcn.00402030
test rbp, rbp
je 0x4733d4
mov rcx, qword [rbx + rdi*8 + 0x200]
add rcx, 0x18
mov rdx, rbp
call fcn.00402030
nop
lea rcx, [rsp + 0x470]
call fcn.00424740
mov ecx, dword [rsp + 0xf0]
mov rdi, qword [rsp + 0x2aa8]
inc ecx
mov dword [rsp + 0xf0], ecx
mov rax, qword [rsp + 0x50]
inc rax
mov qword [rsp + 0x50], rax
cmp ecx, 5
jb 0x472910
lea rbx, [rdi + 0x88]
mov rax, qword [rbx]
cmp dword [rax - 8], 0
je 0x473f06
mov edi, dword [rax - 8]
mov dl, 0x5c
mov rcx, rbx
call fcn.00499914
sub edi, eax
dec edi
mov r8d, edi
lea rdx, [rsp + 0xd0]
mov rcx, rbx
call fcn.00499d4c
nop
mov rbx, qword [rax]
xor eax, eax
mov rcx, 0xffffffffffffffff
mov rdi, rbx
repne scasb al, byte [rdi]
not rcx
dec rcx
mov r13, rcx
je 0x4734e3
cmp rcx, qword [rsp + 0x30]
jbe 0x4734c1
test rsi, rsi
je 0x473486
mov rcx, rsi
call fcn.0049bb84
mov rcx, qword [rsp + 0x68]
call fcn.0049bb84
lea rcx, [r13 + 5]
call fcn.00486ab0
mov rsi, rax
mov qword [rsp + 0x60], rax
lea r8, [r13 + 5]
xor edx, edx
mov rcx, rax
call fcn.00499630
lea rcx, [r13 + 5]
call fcn.00486ab0
mov qword [rsp + 0x68], rax
lea r8, [r13 + 5]
xor edx, edx
mov rcx, rax
call fcn.00499630
mov rax, r13
mov qword [rsp + 0x30], r13
mov qword [rsp + 0x70], r13
mov rcx, rsi
sub rcx, rbx
movzx eax, byte [rbx]
mov byte [rbx + rcx], al
inc rbx
test al, al
jne 0x4734d4
jmp 0x473545
cmp qword [rsp + 0x30], 1
jae 0x473533
test rsi, rsi
je 0x473502
mov rcx, rsi
call fcn.0049bb84
mov rcx, qword [rsp + 0x68]
call fcn.0049bb84
mov ecx, 6
call fcn.00486ab0
mov rsi, rax
mov qword [rsp + 0x60], rax
xor eax, eax
mov dword [rsi], eax
mov word [rsi + 4], ax
mov ecx, 6
call fcn.00486ab0
mov qword [rsp + 0x68], rax
xor ecx, ecx
mov dword [rax], ecx
mov word [rax + 4], cx
mov eax, 1
mov qword [rsp + 0x30], rax
mov qword [rsp + 0x70], rax
mov byte [rsi], 0
lea rcx, [rsp + 0xd0]
call fcn.0049b1dc
mov rbx, qword [rsp + 0x2aa8]
mov rbx, qword [rbx + 0x88]
xor eax, eax
mov rcx, 0xffffffffffffffff
mov rdi, rbx
repne scasb al, byte [rdi]
not rcx
dec rcx
mov r13, rcx
je 0x473600
cmp rcx, qword [rsp + 0x38]
jbe 0x4735db
test rbp, rbp
je 0x47359a
mov rcx, rbp
call fcn.0049bb84
mov rcx, r14
call fcn.0049bb84
lea rcx, [r13 + 5]
call fcn.00486ab0
mov rbp, rax
mov qword [rsp + 0x78], rax
lea r8, [r13 + 5]
xor edx, edx
mov rcx, rax
call fcn.00499630
lea rcx, [r13 + 5]
call fcn.00486ab0
mov r14, rax
mov qword [rsp + 0x80], rax
lea r8, [r13 + 5]
xor edx, edx
mov rcx, rax
call fcn.00499630
mov rax, r13
mov qword [rsp + 0x38], r13
mov qword [rsp + 0x88], r13
mov rcx, rbp
sub rcx, rbx
movzx eax, byte [rbx]
mov byte [rbx + rcx], al
inc rbx
test al, al
jne 0x4735f1
jmp 0x47366d
cmp qword [rsp + 0x38], 1
jae 0x473657
test rbp, rbp
je 0x47361d
mov rcx, rbp
call fcn.0049bb84
mov rcx, r14
call fcn.0049bb84
mov ecx, 6
call fcn.00486ab0
mov rbp, rax
mov qword [rsp + 0x78], rax
xor eax, eax
mov dword [rbp], eax
mov word [rbp + 4], ax
mov ecx, 6
call fcn.00486ab0
mov r14, rax
mov qword [rsp + 0x80], rax
xor eax, eax
mov dword [r14], eax
mov word [r14 + 4], ax
mov eax, 1
mov qword [rsp + 0x38], rax
mov qword [rsp + 0x88], rax
mov byte [rbp], 0
mov rdx, rsi
lea rcx, [rsp + 0xe0]
call fcn.0049b290
nop
mov r8, rax
lea rdx, [rsp + 0xf8]
lea rcx, [rsp + 0xd0]
call fcn.0049b804
nop
mov rbx, qword [rax]
xor eax, eax
mov rcx, 0xffffffffffffffff
mov rdi, rbx
repne scasb al, byte [rdi]
not rcx
dec rcx
mov r13, rcx
je 0x47373f
cmp rcx, qword [rsp + 0x40]
jbe 0x473717
test r12, r12
je 0x4736d3
mov rcx, r12
call fcn.0049bb84
mov rcx, r15
call fcn.0049bb84
lea rcx, [r13 + 5]
call fcn.00486ab0
mov r12, rax
mov qword [rsp + 0x90], rax
lea r8, [r13 + 5]
xor edx, edx
mov rcx, rax
call fcn.00499630
lea rcx, [r13 + 5]
call fcn.00486ab0
mov r15, rax
mov qword [rsp + 0x98], rax
lea r8, [r13 + 5]
xor edx, edx
mov rcx, rax
call fcn.00499630
mov qword [rsp + 0x40], r13
mov qword [rsp + 0xa0], r13
mov rcx, r12
sub rcx, rbx
nop
nop
movzx eax, byte [rbx]
mov byte [rbx + rcx], al
inc rbx
test al, al
jne 0x473730
jmp 0x4737b3
cmp qword [rsp + 0x40], 1
jae 0x47379c
test r12, r12
je 0x47375c
mov rcx, r12
call fcn.0049bb84
mov rcx, r15
call fcn.0049bb84
mov ecx, 6
call fcn.00486ab0
mov r12, rax
mov qword [rsp + 0x90], rax
xor eax, eax
mov dword [r12], eax
mov word [r12 + 4], ax
mov ecx, 6
call fcn.00486ab0
mov r15, rax
mov qword [rsp + 0x98], rax
xor eax, eax
mov dword [r15], eax
mov word [r15 + 4], ax
mov eax, 1
mov qword [rsp + 0x40], rax
mov qword [rsp + 0xa0], rax
mov byte [r12], 0
lea rcx, [rsp + 0xd0]
call fcn.0049b1dc
nop
lea rcx, [rsp + 0xe0]
call fcn.0049b1dc
xor r13d, r13d
mov dword [rsp + 0xa8], r13d
mov dword [rsp + 0xac], 2
mov rbx, qword [rsp + 0x2ab0]
mov rdi, qword [rbx]
cmp rdi, 0x1f4
jae 0x4738c3
lea rax, [rdi + 1]
mov qword [rbx], rax
cmp rdi, 0xffffffffffffffff
je 0x4738c3
mov ecx, 0x68
call fcn.0049bb48
test rax, rax
je 0x47383d
mov qword [rax], r13
mov qword [rax + 0x10], r13
mov qword [rax + 0x18], r13
mov qword [rax + 0x28], r13
mov qword [rax + 0x30], r13
mov qword [rax + 0x40], r13
mov qword [rax + 0x50], r13
mov qword [rax + 0x60], r13
jmp 0x473840
mov rax, r13
mov qword [rbx + rdi*8 + 0x200], rax
mov dword [rax + 0x48], r13d
mov rax, qword [rbx + rdi*8 + 0x200]
mov dword [rax + 0x4c], 2
test r12, r12
je 0x473874
mov rcx, qword [rbx + rdi*8 + 0x200]
add rcx, 0x30
mov rdx, r12
call fcn.00402030
test rsi, rsi
je 0x473889
mov rdx, rsi
mov rcx, qword [rbx + rdi*8 + 0x200]
call fcn.00402030
mov rax, qword [rsp + 0xb0]
test rax, rax
je 0x4738aa
mov rcx, qword [rbx + rdi*8 + 0x200]
add rcx, 0x50
mov rdx, rax
call fcn.00402030
test rbp, rbp
je 0x4738c3
mov rcx, qword [rbx + rdi*8 + 0x200]
add rcx, 0x18
mov rdx, rbp
call fcn.00402030
mov qword [rsp + 0x470], r13
mov qword [rsp + 0x480], r13
mov qword [rsp + 0x488], r13
mov qword [rsp + 0x498], r13
mov qword [rsp + 0x5b8], r13
mov r8d, 0x1f4
mov edx, 0x4b
lea rcx, [rsp + 0x5c0]
call fcn.00499630
lea rax, [rsp + 0x7b8]
mov ecx, 0x3e
mov qword [rax], r13
mov qword [rax + 8], r13
mov qword [rax + 0x10], r13
add rax, 0x40
mov qword [rax - 0x28], r13
mov qword [rax - 0x20], r13
mov qword [rax - 0x18], r13
mov qword [rax - 0x10], r13
mov qword [rax - 8], r13
dec rcx
jne 0x473910
mov qword [rax], r13
mov qword [rax + 8], r13
mov qword [rax + 0x10], r13
mov qword [rax + 0x18], r13
mov rdi, qword [rsp + 0x2aa8]
lea rcx, [rdi + 0x88]
mov rax, qword [rcx]
mov edx, dword [rax - 8]
call fcn.0049b550
mov rdx, rax
lea rcx, [rsp + 0x470]
call fcn.00428550
nop
mov dword [rsp + 0x20], 1
lea r9, [rsp + 0x250]
lea r8, str.CatalogFile
lea rdx, [0x004ae580]
lea rcx, [rsp + 0x470]
call fcn.00425040
test eax, eax
je 0x473ef9
mov rcx, qword [rsp + 0x470]
lea rdx, [rsp + 0x140]
sub rdx, rcx
nop
nop
movzx eax, byte [rcx]
mov byte [rdx + rcx], al
inc rcx
test al, al
jne 0x4739c0
lea rdi, [rsp + 0x140]
xor eax, eax
mov rcx, 0xffffffffffffffff
repne scasb al, byte [rdi]
movzx eax, word [0x004a9dfc]
mov word [rdi - 1], ax
lea rdi, [rsp + 0x140]
xor eax, eax
mov rcx, 0xffffffffffffffff
repne scasb al, byte [rdi]
lea rdx, [rsp + 0x250]
xor ecx, ecx
nop
nop
movzx eax, byte [rdx + rcx]
mov byte [rdi + rcx - 1], al
inc rcx
test al, al
jne 0x473a10
lea rdx, [rsp + 0x140]
lea rcx, [rsp + 0x48]
call fcn.0049b398
mov rdx, qword [rsp + 0x48]
mov edi, dword [rdx - 8]
mov dl, 0x5c
lea rcx, [rsp + 0x48]
call fcn.00499914
sub edi, eax
dec edi
mov r8d, edi
lea rdx, [rsp + 0xd0]
lea rcx, [rsp + 0x48]
call fcn.00499d4c
nop
mov rbx, qword [rax]
xor eax, eax
mov rcx, 0xffffffffffffffff
mov rdi, rbx
repne scasb al, byte [rdi]
not rcx
dec rcx
mov r13, rcx
je 0x473af6
cmp rcx, qword [rsp + 0x30]
jbe 0x473ad4
test rsi, rsi
je 0x473a99
mov rcx, rsi
call fcn.0049bb84
mov rcx, qword [rsp + 0x68]
call fcn.0049bb84
lea rcx, [r13 + 5]
call fcn.00486ab0
mov rsi, rax
mov qword [rsp + 0x60], rax
lea r8, [r13 + 5]
xor edx, edx
mov rcx, rax
call fcn.00499630
lea rcx, [r13 + 5]
call fcn.00486ab0
mov qword [rsp + 0x68], rax
lea r8, [r13 + 5]
xor edx, edx
mov rcx, rax
call fcn.00499630
mov rax, r13
mov qword [rsp + 0x30], r13
mov qword [rsp + 0x70], r13
mov rcx, rsi
sub rcx, rbx
movzx eax, byte [rbx]
mov byte [rcx + rbx], al
inc rbx
test al, al
jne 0x473ae7
jmp 0x473b58
cmp qword [rsp + 0x30], 1
jae 0x473b46
test rsi, rsi
je 0x473b15
mov rcx, rsi
call fcn.0049bb84
mov rcx, qword [rsp + 0x68]
call fcn.0049bb84
mov ecx, 6
call fcn.00486ab0
mov rsi, rax
mov qword [rsp + 0x60], rax
xor eax, eax
mov dword [rsi], eax
mov word [rsi + 4], ax
mov ecx, 6
call fcn.00486ab0
mov qword [rsp + 0x68], rax
xor ecx, ecx
mov dword [rax], ecx
mov word [rax + 4], cx
mov eax, 1
mov qword [rsp + 0x30], rax
mov qword [rsp + 0x70], rax
mov byte [rsi], 0
lea rcx, [rsp + 0xd0]
call fcn.0049b1dc
mov rbx, qword [rsp + 0x48]
xor eax, eax
mov rcx, 0xffffffffffffffff
mov rdi, rbx
repne scasb al, byte [rdi]
not rcx
dec rcx
mov r13, rcx
je 0x473c0f
cmp rcx, qword [rsp + 0x38]
jbe 0x473be4
test rbp, rbp
je 0x473ba3
mov rcx, rbp
call fcn.0049bb84
mov rcx, r14
call fcn.0049bb84
lea rcx, [r13 + 5]
call fcn.00486ab0
mov rbp, rax
mov qword [rsp + 0x78], rax
lea r8, [r13 + 5]
xor edx, edx
mov rcx, rax
call fcn.00499630
lea rcx, [r13 + 5]
call fcn.00486ab0
mov r14, rax
mov qword [rsp + 0x80], rax
lea r8, [r13 + 5]
xor edx, edx
mov rcx, rax
call fcn.00499630
mov rax, r13
mov qword [rsp + 0x38], r13
mov qword [rsp + 0x88], r13
mov rcx, rbp
sub rcx, rbx
nop
nop
movzx eax, byte [rbx]
mov byte [rcx + rbx], al
inc rbx
test al, al
jne 0x473c00
jmp 0x473c7c
cmp qword [rsp + 0x38], 1
jae 0x473c66
test rbp, rbp
je 0x473c2c
mov rcx, rbp
call fcn.0049bb84
mov rcx, r14
call fcn.0049bb84
mov ecx, 6
call fcn.00486ab0
mov rbp, rax
mov qword [rsp + 0x78], rax
xor eax, eax
mov dword [rbp], eax
mov word [rbp + 4], ax
mov ecx, 6
call fcn.00486ab0
mov r14, rax
mov qword [rsp + 0x80], rax
xor eax, eax
mov dword [r14], eax
mov word [r14 + 4], ax
mov eax, 1
mov qword [rsp + 0x38], rax
mov qword [rsp + 0x88], rax
mov byte [rbp], 0
mov rdx, rsi
lea rcx, [rsp + 0xe0]
call fcn.0049b290
nop
mov r8, rax
lea rdx, [rsp + 0xe8]
lea rcx, [rsp + 0xd0]
call fcn.0049b804
nop
mov rbx, qword [rax]
xor eax, eax
mov rcx, 0xffffffffffffffff
mov rdi, rbx
repne scasb al, byte [rdi]
not rcx
dec rcx
mov r13, rcx
je 0x473d4f
cmp rcx, qword [rsp + 0x40]
jbe 0x473d26
test r12, r12
je 0x473ce2
mov rcx, r12
call fcn.0049bb84
mov rcx, r15
call fcn.0049bb84
lea rcx, [r13 + 5]
call fcn.00486ab0
mov r12, rax
mov qword [rsp + 0x90], rax
lea r8, [r13 + 5]
xor edx, edx
mov rcx, rax
call fcn.00499630
lea rcx, [r13 + 5]
call fcn.00486ab0
mov r15, rax
mov qword [rsp + 0x98], rax
lea r8, [r13 + 5]
xor edx, edx
mov rcx, rax
call fcn.00499630
mov qword [rsp + 0x40], r13
mov qword [rsp + 0xa0], r13
mov rcx, r12
sub rcx, rbx
nop
nop
movzx eax, byte [rbx]
mov byte [rcx + rbx], al
inc rbx
test al, al
jne 0x473d40
jmp 0x473dc3
cmp qword [rsp + 0x40], 1
jae 0x473dac
test r12, r12
je 0x473d6c
mov rcx, r12
call fcn.0049bb84
mov rcx, r15
call fcn.0049bb84
mov ecx, 6
call fcn.00486ab0
mov r12, rax
mov qword [rsp + 0x90], rax
xor eax, eax
mov dword [r12], eax
mov word [r12 + 4], ax
mov ecx, 6
call fcn.00486ab0
mov r15, rax
mov qword [rsp + 0x98], rax
xor eax, eax
mov dword [r15], eax
mov word [r15 + 4], ax
mov eax, 1
mov qword [rsp + 0x40], rax
mov qword [rsp + 0xa0], rax
mov byte [r12], 0
lea rcx, [rsp + 0xd0]
call fcn.0049b1dc
nop
lea rcx, [rsp + 0xe0]
call fcn.0049b1dc
xor r13d, r13d
mov dword [rsp + 0xa8], r13d
mov dword [rsp + 0xac], 1
mov rbx, qword [rsp + 0x2ab0]
mov rdi, qword [rbx]
cmp rdi, 0x1f4
jae 0x473edd
lea rax, [rdi + 1]
mov qword [rbx], rax
cmp rdi, 0xffffffffffffffff
je 0x473ee7
mov ecx, 0x68
call fcn.0049bb48
test rax, rax
je 0x473e4d
mov qword [rax], r13
mov qword [rax + 0x10], r13
mov qword [rax + 0x18], r13
mov qword [rax + 0x28], r13
mov qword [rax + 0x30], r13
mov qword [rax + 0x40], r13
mov qword [rax + 0x50], r13
mov qword [rax + 0x60], r13
jmp 0x473e50
mov rax, r13
mov qword [rbx + rdi*8 + 0x200], rax
mov dword [rax + 0x48], r13d
mov rax, qword [rbx + rdi*8 + 0x200]
mov dword [rax + 0x4c], 1
test r12, r12
je 0x473e84
mov rcx, qword [rbx + rdi*8 + 0x200]
add rcx, 0x30
mov rdx, r12
call fcn.00402030
test rsi, rsi
je 0x473e99
mov rdx, rsi
mov rcx, qword [rbx + rdi*8 + 0x200]
call fcn.00402030
mov rax, qword [rsp + 0xb0]
test rax, rax
je 0x473eba
mov rcx, qword [rbx + rdi*8 + 0x200]
add rcx, 0x50
mov rdx, rax
call fcn.00402030
test rbp, rbp
je 0x473ef1
mov rcx, qword [rbx + rdi*8 + 0x200]
add rcx, 0x18
mov rdx, rbp
call fcn.00402030
mov rdi, qword [rsp + 0x2aa8]
jmp 0x473ef9
mov rdi, qword [rsp + 0x2aa8]
jmp 0x473ef9
mov rdi, qword [rsp + 0x2aa8]
jmp 0x473ef9
mov rdi, qword [rsp + 0x2aa8]
lea rcx, [rsp + 0x470]
call fcn.00424740
call fcn.0047fa10
test eax, eax
je 0x474193
mov eax, dword [rdi + 0xa0]
cmp eax, 7
je 0x47418e
cmp eax, 8
je 0x474189
cmp qword [rsp + 0x30], 5
jae 0x473f7d
test rsi, rsi
je 0x473f4a
mov rcx, rsi
call fcn.0049bb84
mov rcx, qword [rsp + 0x68]
call fcn.0049bb84
mov ecx, 0xa
call fcn.00486ab0
mov rsi, rax
mov qword [rsp + 0x60], rax
xor eax, eax
mov qword [rsi], rax
mov word [rsi + 8], ax
mov ecx, 0xa
call fcn.00486ab0
mov qword [rsp + 0x68], rax
xor ecx, ecx
mov qword [rax], rcx
mov word [rax + 8], cx
mov qword [rsp + 0x70], 5
mov rcx, rsi
lea rdx, str.DISK1
sub rdx, rsi
movzx eax, byte [rdx + rcx]
mov byte [rcx], al
inc rcx
test al, al
jne 0x473f93
lea rdx, [0x004b7f08]
lea rcx, [rsp + 0xe0]
call fcn.0049b290
nop
mov r8, rax
mov rdx, rdi
lea rcx, [rsp + 0xd0]
call fcn.0049b804
nop
mov rbx, qword [rax]
xor eax, eax
mov rcx, 0xffffffffffffffff
mov rdi, rbx
repne scasb al, byte [rdi]
not rcx
dec rcx
mov r13, rcx
je 0x47405f
cmp rcx, qword [rsp + 0x38]
jbe 0x474042
test rbp, rbp
je 0x474001
mov rcx, rbp
call fcn.0049bb84
mov rcx, r14
call fcn.0049bb84
lea rcx, [r13 + 5]
call fcn.00486ab0
mov rbp, rax
mov qword [rsp + 0x78], rax
lea r8, [r13 + 5]
xor edx, edx
mov rcx, rax
call fcn.00499630
lea rcx, [r13 + 5]
call fcn.00486ab0
mov r14, rax
mov qword [rsp + 0x80], rax
lea r8, [r13 + 5]
xor edx, edx
mov rcx, rax
call fcn.00499630
mov qword [rsp + 0x88], r13
mov rcx, rbp
sub rcx, rbx
movzx eax, byte [rbx]
mov byte [rbx + rcx], al
inc rbx
test al, al
jne 0x474050
jmp 0x4740c6
cmp qword [rsp + 0x38], 1
jae 0x4740b6
test rbp, rbp
je 0x47407c
mov rcx, rbp
call fcn.0049bb84
mov rcx, r14
call fcn.0049bb84
mov ecx, 6
call fcn.00486ab0
mov rbp, rax
mov qword [rsp + 0x78], rax
xor eax, eax
mov dword [rbp], eax
mov word [rbp + 4], ax
mov ecx, 6
call fcn.00486ab0
mov r14, rax
mov qword [rsp + 0x80], rax
xor eax, eax
mov dword [r14], eax
mov word [r14 + 4], ax
mov qword [rsp + 0x88], 1
mov byte [rbp], 0
lea rcx, [rsp + 0xd0]
call fcn.0049b1dc
nop
lea rcx, [rsp + 0xe0]
call fcn.0049b1dc
cmp qword [rsp + 0x40], 7
jae 0x47413c
test r12, r12
je 0x4740fe
mov rcx, r12
call fcn.0049bb84
mov rcx, r15
call fcn.0049bb84
mov ecx, 0xc
call fcn.00486ab0
mov r12, rax
mov qword [rsp + 0x90], rax
xor eax, eax
mov qword [r12], rax
mov dword [r12 + 8], eax
mov ecx, 0xc
call fcn.00486ab0
mov r15, rax
mov qword [rsp + 0x98], rax
xor eax, eax
mov qword [r15], rax
mov dword [r15 + 8], eax
mov qword [rsp + 0xa0], 7
lea rcx, str.UNKNOWN
mov rdx, r12
sub rdx, rcx
movzx eax, byte [rcx]
mov byte [rcx + rdx], al
inc rcx
test al, al
jne 0x474155
xor r13d, r13d
mov dword [rsp + 0xa8], r13d
mov dword [rsp + 0xac], r13d
lea rdx, [rsp + 0x60]
mov rcx, qword [rsp + 0x2ab0]
call fcn.00428420
jmp 0x474196
xor r13d, r13d
jmp 0x474196
xor r13d, r13d
jmp 0x474196
xor r13d, r13d
call fcn.004545a0
test eax, eax
je 0x474217
xor r8d, r8d
lea rdx, str.CSetupFilesInfo::GetMiscCopyFileList_n
lea rcx, [rsp + 0x140]
call fcn.00486850
movabs rdx, 0x20203a54495845
mov qword [rsp + 0x250], rdx
lea rdi, [rsp + 0x250]
xor eax, eax
mov rcx, 0xffffffffffffffff
repne scasb al, byte [rdi]
lea rdx, [rsp + 0x140]
xor ecx, ecx
movzx eax, byte [rdx + rcx]
mov byte [rdi + rcx - 1], al
inc rcx
test al, al
jne 0x4741e5
call fcn.004546e0
mov rcx, rax
lea rdx, [rsp + 0x250]
call fcn.004548a0
call fcn.004546e0
mov rcx, rax
call fcn.004545c0
nop
lea rcx, [rsp + 0x1760]
call fcn.00424740
nop
lea rcx, [rsp + 0xe8]
call fcn.0049b1dc
nop
lea rcx, [rsp + 0xf8]
call fcn.0049b1dc
nop
lea rcx, [rsp + 0x48]
call fcn.0049b1dc
nop
mov rdi, qword [rsp + 0xb0]
test rdi, rdi
je 0x474276
mov rcx, qword [rsp + 0xb8]
call fcn.0049bb84
mov rcx, rdi
call fcn.0049bb84
mov qword [rsp + 0xb0], r13
test r12, r12
je 0x474293
mov rcx, r15
call fcn.0049bb84
mov rcx, r12
call fcn.0049bb84
mov qword [rsp + 0x90], r13
test rbp, rbp
je 0x4742a9
mov rcx, r14
call fcn.0049bb84
mov rcx, rbp
call fcn.0049bb84
nop
test rsi, rsi
je 0x4742c0
mov rcx, qword [rsp + 0x68]
call fcn.0049bb84
mov rcx, rsi
call fcn.0049bb84
mov rbx, qword [rsp + 0x2a90]
mov rbp, qword [rsp + 0x2a88]
mov rsi, qword [rsp + 0x2a80]
mov rdi, qword [rsp + 0x2a78]
mov r12, qword [rsp + 0x2a70]
mov r13, qword [rsp + 0x2a68]
mov r14, qword [rsp + 0x2a60]
mov r15, qword [rsp + 0x2a58]
add rsp, 0x2a98
ret