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

Disassembly:
mov qword [rsp + 0x18], rbx
push rbp
push rsi
push rdi
push r12
push r13
push r14
push r15
lea rbp, [rsp - 0x3a0]
sub rsp, 0x4a0
mov rax, qword [0x14007d048]
xor rax, rsp
mov qword [rbp + 0x390], rax
mov rdi, rdx
mov r12, rcx
mov qword [rbp + 0x10], rcx
xor r13d, r13d
xorps xmm0, xmm0
movdqu xmmword [rbp - 0x70], xmm0
mov qword [rbp - 0x60], r13
call fcn.14002eba0
mov rbx, rax
mov rcx, rdi
mov r15, qword [rdi + 0x18]
cmp r15, 0x10
jb 0x14002fa11
mov rcx, qword [rdi]
mov r14, qword [rdi + 0x10]
mov esi, 0x10000
cmp r14, 1
jne 0x14002ffaa
mov r8, r14
lea rdx, [0x14007107c]
call fcn.14003c4d0
test eax, eax
jne 0x14002ffaa
xorps xmm0, xmm0
movups xmmword [rbp + 0x270], xmm0
lea ecx, [rax + 0x40]
call fcn.140039934
mov rdi, rax
mov qword [rbp + 0x270], rax
mov qword [rbp + 0x280], 0x32
mov eax, 0x3f
mov qword [rsp + 0x60], rax
mov qword [rbp + 0x288], rax
movups xmm0, xmmword [str.B8_10_27_00_00_F3_0F_2A_C0_C3_48_83_EC_s1_81_FA_s2]
movups xmmword [rdi], xmm0
movups xmm1, xmmword [0x140071098]
movups xmmword [rdi + 0x10], xmm1
movups xmm0, xmmword [0x1400710a8]
movups xmmword [rdi + 0x20], xmm0
movzx eax, word [0x1400710b8]
mov word [rdi + 0x30], ax
mov byte [rdi + 0x32], 0
xorps xmm0, xmm0
movups xmmword [rbp + 0x250], xmm0
mov r12d, 0x20
mov ecx, r12d
call fcn.140039934
mov r14, rax
mov qword [rbp + 0x250], rax
mov qword [rbp + 0x260], SafeArrayUnaccessData
mov r13d, 0x1f
mov qword [rbp + 0x268], r13
movups xmm0, xmmword [str.48_83_EC_s1_81_FA_s2]
movups xmmword [rax], xmm0
mov eax, dword [0x1400710d0]
mov dword [r14 + 0x10], eax
mov byte [r14 + 0x14], 0
xorps xmm0, xmm0
movups xmmword [rbp + 0x290], xmm0
mov ecx, r12d
call fcn.140039934
mov r15, rax
mov qword [rbp + 0x290], rax
mov qword [rbp + 0x2a0], SafeArrayUnaccessData
mov qword [rbp + 0x2a8], r13
movups xmm0, xmmword [str.48_83_EC_s1_81_FA_s2]
movups xmmword [rax], xmm0
mov eax, dword [0x1400710d0]
mov dword [r15 + 0x10], eax
mov byte [r15 + 0x14], 0
xor eax, eax
mov dword [rbx], eax
cmp dword [rbx + 4], 2
je 0x14002fb49
mov dword [rbx + 4], eax
lea rcx, [rbx + 0x68]
lea rax, [rbp + 0x290]
cmp rcx, rax
je 0x14002fb6e
mov r8d, SafeArrayUnaccessData
mov rdx, r15
call fcn.140007970
mov r15, qword [rbp + 0x290]
lea rcx, [rbx + 0x88]
lea rax, [rbp + 0x250]
cmp rcx, rax
je 0x14002fb9d
mov r8d, SafeArrayUnaccessData
mov rdx, r14
call fcn.140007970
mov r13, qword [rbp + 0x268]
mov r14, qword [rbp + 0x250]
lea rcx, [rbx + 0xa8]
lea rax, [rbp + 0x270]
cmp rcx, rax
je 0x14002fbd1
mov r8d, 0x32
mov rdx, rdi
call fcn.140007970
mov rax, qword [rbp + 0x288]
mov qword [rsp + 0x60], rax
mov rdi, qword [rbp + 0x270]
mov rdx, qword [rbp + 0x2a8]
cmp rdx, 0x10
jb 0x14002fc0f
inc rdx
mov rax, r15
cmp rdx, 0x1000
jb 0x14002fc06
add rdx, 0x27
mov r15, qword [r15 - 8]
sub rax, r15
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x140031ecd
mov rcx, r15
call fcn.140039900
nop
cmp r13, 0x10
jb 0x14002fc47
lea rdx, [r13 + 1]
mov rax, r14
cmp rdx, 0x1000
jb 0x14002fc3e
add rdx, 0x27
mov r14, qword [r14 - 8]
sub rax, r14
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x140031ed3
mov rcx, r14
call fcn.140039900
nop
mov rax, qword [rsp + 0x60]
cmp rax, 0x10
jb 0x14002fc83
lea rdx, [rax + 1]
mov rax, rdi
cmp rdx, 0x1000
jb 0x14002fc7b
add rdx, 0x27
mov rdi, qword [rdi - 8]
sub rax, rdi
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x140031ef1
mov rcx, rdi
call fcn.140039900
xorps xmm0, xmm0
movups xmmword [rbp + 0x30], xmm0
mov qword [rbp + 0x40], 2
mov edi, reloc.OLEAUT32.dll_SafeArrayDestroy
mov qword [rbp + 0x48], rdi
mov eax, 0x3173
mov word [rbp + 0x30], ax
mov byte [rbp + 0x32], 0
lea rax, [rbp + 0x30]
mov qword [rsp + 0x70], rax
movups xmmword [rbp + 0xb0], xmm0
movdqa xmm1, xmmword [0x140071c40]
movdqa xmmword [rbp + 0xc0], xmm1
mov byte [rbp + 0xb0], 0
lea rdx, [rbp + 0x30]
lea r8d, [rdi - 0xd]
lea rcx, [rbp + 0xb0]
call fcn.140007970
movdqa xmm0, xmmword [0x140071d10]
movdqa xmmword [rbp + 0xd0], xmm0
mov rdx, qword [rbp + 0x48]
cmp rdx, 0x10
jb 0x14002fd2e
inc rdx
mov rcx, qword [rbp + 0x30]
mov rax, rcx
cmp rdx, 0x1000
jb 0x14002fd29
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x140031ed9
call fcn.140039900
xor r14d, r14d
mov qword [rbp + 0x40], r14
mov qword [rbp + 0x48], rdi
mov byte [rbp + 0x30], r14b
xorps xmm0, xmm0
movups xmmword [rbp + 0x50], xmm0
mov qword [rbp + 0x60], 2
mov qword [rbp + 0x68], rdi
mov eax, 0x3273
mov word [rbp + 0x50], ax
mov byte [rbp + 0x52], r14b
lea rax, [rbp + 0x50]
mov qword [rsp + 0x70], rax
movups xmmword [rbp + 0xe0], xmm0
movdqa xmm1, xmmword [0x140071c40]
movdqa xmmword [rbp + 0xf0], xmm1
mov byte [rbp + 0xe0], r14b
lea rdx, [rbp + 0x50]
lea r8d, [r14 + 2]
lea rcx, [rbp + 0xe0]
call fcn.140007970
movdqa xmm0, xmmword [0x140071d20]
movdqa xmmword [rbp + 0x100], xmm0
mov rdx, qword [rbp + 0x68]
cmp rdx, 0x10
jb 0x14002fde3
inc rdx
mov rcx, qword [rbp + 0x50]
mov rax, rcx
cmp rdx, 0x1000
jb 0x14002fdde
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x140031edf
call fcn.140039900
mov qword [rbp + 0x60], r14
mov qword [rbp + 0x68], rdi
mov byte [rbp + 0x50], 0
mov r8d, 2
lea rdx, [rbp + 0xb0]
lea rcx, [rbp - 0x70]
call fcn.1400323b0
nop
lea r9, [fcn.140001820]
mov edx, 0x30
lea r8d, [rdx - 0x2e]
lea rcx, [rbp + 0xb0]
call fcn.140039bd0
lea rdx, str.PWS.WasherClassNozzleSettings.GetEffectivenessAgainst
mov rcx, qword [0x1400802b0]
call fcn.140004880
mov rdi, rax
test rax, rax
je 0x14002fe73
mov qword [rbx + 0x20], rax
mov rcx, qword [0x1400802a0]
test rcx, rcx
je 0x14002fe5f
call fcn.140002b70
test al, al
je 0x14002fe5f
cmp byte [0x1400802a8], 0
jne 0x14002fe6a
mov rdx, rdi
call fcn.140004b90
mov r12d, eax
movsxd rdi, r12d
add rdi, qword [rbx + 0x20]
jmp 0x14002fe99
mov rax, qword [0x1400802b0]
cmp byte [rax + 0x20], 0
je 0x14002fe8b
mov qword [rbx + 0x20], rsi
mov edi, 0x10010
jmp 0x14002fe99
mov r15, 0xffffffffffffffff
mov qword [rbx + 0x20], r15
mov rdi, r15
mov rax, rbx
mov qword [rbx + 0x28], rdi
mov r12, qword [rbp + 0x10]
mov rcx, qword [rbp - 0x68]
sub rcx, qword [rbp - 0x70]
movabs rax, 0x2aaaaaaaaaaaaaab
imul rcx
sar rdx, 3
mov rax, rdx
shr rax, 0x3f
add rdx, rax
je 0x14002ff77
lea rdx, [rbp - 0x70]
lea rcx, [rbp + 0x30]
call fcn.140031fd0
mov rdi, rax
mov qword [rbp + 0x10], rax
movabs r14, 0x7fffffffffffffff
cmp qword [rbx + 0x10], rsi
ja 0x14002ff6e
xor r8d, r8d
mov rdx, rbx
lea rcx, [r12 + 0xf8]
call fcn.140034a10
test al, al
je 0x14002ff6e
mov rax, qword [rbx + 0x20]
mov rdx, rsi
test rax, rax
cmovne rdx, rax
mov rax, qword [rbx + 0x28]
test rax, rax
cmovne r14, rax
mov qword [rsp + 0x40], r14
mov qword [rsp + 0x38], rdx
mov eax, dword [rbx + 0x38]
mov dword [rsp + 0x28], eax
mov byte [rsp + 0x20], 0
mov r9, rdi
lea r8, [rbx + 0x68]
mov rdx, rbx
lea rcx, [r12 + 0xf8]
call fcn.140034250
mov qword [rbx + 0x10], rax
cmp rax, rsi
jae 0x14002ff6e
mov r8d, SafeArrayDestroy
lea rdx, str.FF_FF_FF_FF
lea rcx, [rbx + 0x68]
call fcn.140007ad0
nop
mov rcx, rdi
call fcn.1400320f0
nop
lea rcx, [rbp - 0x70]
call fcn.1400320f0
mov rcx, qword [rbp + 0x390]
xor rcx, rsp
call fcn.1400398e0
mov rbx, qword [rsp + 0x4f0]
add rsp, 0x4a0
pop r15
pop r14
pop r13
pop r12
pop rdi
pop rsi
pop rbp
ret
mov rcx, rdi
cmp r15, 0x10
jb 0x14002ffb6
mov rcx, qword [rdi]
cmp r14, 3
jne 0x14003038f
mov r8, r14
lea rdx, [0x140071010]
call fcn.14003c4d0
test eax, eax
jne 0x14003038f
xorps xmm0, xmm0
movups xmmword [rbp + 0x50], xmm0
mov qword [rbp + 0x60], r13
mov qword [rbp + 0x68], r13
xor r8d, r8d
lea rdx, [0x14006c048]
lea rcx, [rbp + 0x50]
call fcn.140007fc0
lea rcx, [r12 + 0x60]
lea rax, [rbp + 0x50]
mov qword [rsp + 0x38], rax
call fcn.140036e40
test al, al
je 0x14003037c
lea rdx, str.0F_1F_40_00
lea rcx, [rbp - 0x58]
call fcn.140007810
nop
lea rdx, str.F3_0F_59_C6
lea rcx, [rbp - 0x18]
call fcn.140007810
nop
lea rdx, str.E8_____F3_0F_59_C6_F3_0F_11__________0F_84___00_00
lea rcx, [rbp - 0x38]
call fcn.140007810
nop
lea r9, [rbp - 0x58]
lea r8, [rbp - 0x18]
lea rdx, [rbp - 0x38]
mov rcx, rbx
call fcn.14000bd90
nop
lea rcx, [rbp - 0x38]
call fcn.140001820
nop
lea rcx, [rbp - 0x18]
call fcn.140001820
nop
mov r8, qword [rbp - 0x40]
cmp r8, 0x10
jb 0x14003008a
inc r8
mov rdx, qword [rbp - 0x58]
lea rcx, [rbp - 0x58]
call fcn.140007c30
mov dword [rbx + 0x38], 5
mov rcx, qword [r12 + 0xb0]
mov rax, qword [r12 + 0xa8]
mov qword [rbx + 0x20], rax
add rax, rcx
mov qword [rbx + 0x28], rax
movabs r14, 0x7fffffffffffffff
mov qword [rsp + 0x30], r14
mov esi, 0x10000
mov qword [rsp + 0x28], rsi
mov r9d, esi
xor r8d, r8d
mov rdx, rbx
lea rcx, [r12 + 0xf8]
call fcn.140034d10
test al, al
jne 0x14002ff77
lea rdx, str.0F_1F_40_00
lea rcx, [rbp - 0x58]
call fcn.140007810
nop
lea rdx, str.F3_0F_59_C6
lea rcx, [rbp - 0x18]
call fcn.140007810
nop
lea rdx, str.E8_____F3_0F_59_C6_F3_0F_11_________0F_84___00_00
lea rcx, [rbp - 0x38]
call fcn.140007810
nop
lea r9, [rbp - 0x58]
lea r8, [rbp - 0x18]
lea rdx, [rbp - 0x38]
mov rcx, rbx
call fcn.14000bd90
nop
lea rcx, [rbp - 0x38]
call fcn.140001820
nop
lea rcx, [rbp - 0x18]
call fcn.140001820
nop
lea rcx, [rbp - 0x58]
call fcn.140001820
mov dword [rbx + 0x38], 5
mov rcx, qword [r12 + 0xb0]
mov rax, qword [r12 + 0xa8]
mov qword [rbx + 0x20], rax
add rax, rcx
mov qword [rbx + 0x28], rax
mov qword [rsp + 0x30], r14
mov qword [rsp + 0x28], rsi
mov r9d, esi
xor r8d, r8d
mov rdx, rbx
lea rcx, [r12 + 0xf8]
call fcn.140034d10
test al, al
jne 0x14002ff77
lea rdx, str.0F_1F_40_00
lea rcx, [rbp - 0x58]
call fcn.140007810
nop
lea rdx, str.F3_0F_59_C6
lea rcx, [rbp - 0x18]
call fcn.140007810
nop
lea rdx, str.E8_____F3_0F_59_C6_F3_0F_11___EB
lea rcx, [rbp - 0x38]
call fcn.140007810
nop
lea r9, [rbp - 0x58]
lea r8, [rbp - 0x18]
lea rdx, [rbp - 0x38]
mov rcx, rbx
call fcn.14000bd90
nop
lea rcx, [rbp - 0x38]
call fcn.140001820
nop
lea rcx, [rbp - 0x18]
call fcn.140001820
nop
lea rcx, [rbp - 0x58]
call fcn.140001820
mov dword [rbx + 0x38], 5
mov rcx, qword [r12 + 0xb0]
mov rax, qword [r12 + 0xa8]
mov qword [rbx + 0x20], rax
add rax, rcx
mov qword [rbx + 0x28], rax
mov qword [rsp + 0x30], r14
mov qword [rsp + 0x28], rsi
mov r9d, esi
xor r8d, r8d
mov rdx, rbx
lea rcx, [r12 + 0xf8]
call fcn.140034d10
test al, al
jne 0x14002ff77
lea rdx, str.0F_1F_40_00
lea rcx, [rbp - 0x58]
call fcn.140007810
nop
lea rdx, str.F3_0F_59_F7
lea rcx, [rbp - 0x18]
call fcn.140007810
nop
lea rdx, str.E8_____F3_0F_59_F7_F3_0F_11__________0F_84___00_00
lea rcx, [rbp - 0x38]
call fcn.140007810
nop
lea r9, [rbp - 0x58]
lea r8, [rbp - 0x18]
lea rdx, [rbp - 0x38]
mov rcx, rbx
call fcn.14000bd90
nop
lea rcx, [rbp - 0x38]
call fcn.140001820
nop
lea rcx, [rbp - 0x18]
call fcn.140001820
nop
lea rcx, [rbp - 0x58]
call fcn.140001820
mov dword [rbx + 0x38], 5
mov rdx, qword [r12 + 0xb0]
mov rax, qword [r12 + 0xa8]
mov qword [rbx + 0x20], rax
add rax, rdx
mov qword [rbx + 0x28], rax
mov qword [rsp + 0x30], r14
mov qword [rsp + 0x28], rsi
mov r9d, esi
xor r8d, r8d
mov rdx, rbx
lea rcx, [r12 + 0xf8]
call fcn.140034d10
test al, al
jne 0x14002ff77
lea rdx, str.0F_1F_40_00
lea rcx, [rbp - 0x58]
call fcn.140007810
nop
lea rdx, str.F3_0F_59_F7
lea rcx, [rbp - 0x18]
call fcn.140007810
nop
lea rdx, str.E8_____F3_0F_59_F7_F3_0F_11___E9
lea rcx, [rbp - 0x38]
call fcn.140007810
nop
lea r9, [rbp - 0x58]
lea r8, [rbp - 0x18]
lea rdx, [rbp - 0x38]
mov rcx, rbx
call fcn.14000bd90
nop
lea rcx, [rbp - 0x38]
call fcn.140001820
nop
lea rcx, [rbp - 0x18]
call fcn.140001820
nop
lea rcx, [rbp - 0x58]
call fcn.140001820
mov dword [rbx + 0x38], 5
mov rcx, qword [r12 + 0xb0]
mov rax, qword [r12 + 0xa8]
mov qword [rbx + 0x20], rax
add rax, rcx
mov qword [rbx + 0x28], rax
jmp 0x14002ff77
mov qword [rbx + 0x10], 0x10001
mov dword [rbx], 7
jmp 0x14002ff77
mov rcx, rdi
cmp r15, 0x10
jb 0x14003039b
mov rcx, qword [rdi]
cmp r14, 1
jne 0x1400307b2
mov r8, r14
lea rdx, [0x140071014]
call fcn.14003c4d0
test eax, eax
jne 0x1400307b2
lea r8, str.PWS.TexturePainter.WashTarget
lea rdi, str.WashTarget
mov rdx, rdi
call fcn.1400060e0
lea r8, str.PWS.WashGameplayConfig
lea r13, str.WashGameplayConfig
mov rdx, r13
call fcn.1400060e0
lea rdx, str.C7_43_WashTarget.m_surfaceCleanThreshold.1_A4_70_7D_3F_F3_0F_10_s1_WashTarget.m_surfaceCleanThreshold.1
lea rcx, [rbp - 0x58]
call fcn.140007810
nop
lea rdx, str.F3_0F_10_s1_WashTarget.m_surfaceCleanThreshold.1
lea rcx, [rbp - 0x18]
call fcn.140007810
nop
lea rdx, str.F3_0F_10_s1_WashTarget.m_surfaceCleanThreshold.1_EB__48_8B
lea rcx, [rbp - 0x38]
call fcn.140007810
nop
lea r9, [rbp - 0x58]
lea r8, [rbp - 0x18]
lea rdx, [rbp - 0x38]
mov rcx, rbx
call fcn.14000bcf0
nop
mov rdx, qword [rbp - 0x20]
cmp rdx, 0x10
jb 0x14003046c
inc rdx
mov rcx, qword [rbp - 0x38]
mov rax, rcx
cmp rdx, 0x1000
jb 0x140030466
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x140031ee5
call fcn.140039900
nop
mov rdx, qword [rbp]
cmp rdx, 0x10
jb 0x1400304a8
inc rdx
mov rcx, qword [rbp - 0x18]
mov rax, rcx
cmp rdx, 0x1000
jb 0x1400304a2
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x140031eeb
call fcn.140039900
nop
mov rdx, qword [rbp - 0x40]
cmp rdx, 0x10
jb 0x1400304e3
inc rdx
mov rcx, qword [rbp - 0x58]
mov rax, rcx
cmp rdx, 0x1000
jb 0x1400304de
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x140031ef1
call fcn.140039900
lea rdx, str.PWS.TexturePainter.WashTarget.RefreshCleanProgress
mov rcx, qword [0x1400802b0]
call fcn.140004880
mov esi, 0x10000
test rax, rax
je 0x140030530
mov qword [rbx + 0x20], rax
mov rcx, qword [0x1400802a0]
test rcx, rcx
je 0x140030515
call fcn.140002b70
mov rax, qword [rbx + 0x20]
add rax, 0x400
mov qword [rbx + 0x28], rax
mov rdx, rdi
mov rcx, rbx
call fcn.14000c3a0
jmp 0x14003055c
mov rax, qword [0x1400802b0]
movzx ecx, byte [rax + 0x20]
mov edi, 0x10010
mov r15, 0xffffffffffffffff
test cl, cl
cmove rdi, r15
mov rax, rsi
cmove rax, r15
mov qword [rbx + 0x20], rax
mov qword [rbx + 0x28], rdi
lea rdx, [0x140070de4]
lea rcx, [rbp - 0x38]
call fcn.140007810
mov r14, rax
mov qword [rbp + 0x10], rax
xorps xmm0, xmm0
movups xmmword [rbp + 0x330], xmm0
movdqa xmm1, xmmword [0x140071c40]
movdqu xmmword [rbp + 0x340], xmm1
mov byte [rbp + 0x330], 0
lea rax, [rbp + 0x330]
cmp rax, r14
je 0x1400305bd
mov rdx, r14
cmp qword [r14 + 0x18], 0x10
jb 0x1400305ad
mov rdx, qword [r14]
mov r8, qword [r14 + 0x10]
lea rcx, [rbp + 0x330]
call fcn.140007970
movdqa xmm0, xmmword [0x140071d10]
movdqu xmmword [rbp + 0x350], xmm0
mov rdx, qword [r14 + 0x18]
cmp rdx, 0x10
jb 0x140030607
mov rcx, qword [r14]
inc rdx
cmp rdx, 0x1000
jb 0x140030602
add rdx, 0x27
mov r8, qword [rcx - 8]
sub rcx, r8
lea rax, [rcx - 8]
cmp rax, 0x1f
ja 0x140031ef7
mov rcx, r8
call fcn.140039900
mov qword [r14 + 0x10], 0
mov edi, reloc.OLEAUT32.dll_SafeArrayDestroy
mov qword [r14 + 0x18], rdi
mov byte [r14], 0
lea r8d, [rdi - 0xe]
lea rdx, [rbp + 0x330]
lea rcx, [rbp - 0x70]
call fcn.1400323b0
nop
lea r9, [fcn.140001820]
lea edx, [rdi + 0x21]
lea r8d, [rdi - 0xe]
lea rcx, [rbp + 0x330]
call fcn.140039bd0
lea rdx, [rbp - 0x70]
lea rcx, [rsp + 0x70]
call fcn.140031fd0
mov rdi, rax
mov qword [rbp + 0x10], rax
movabs r14, 0x7fffffffffffffff
cmp qword [rbx + 0x10], rsi
jbe 0x140030675
jmp 0x14002ff6e
xor r8d, r8d
mov rdx, rbx
lea rcx, [r12 + 0xf8]
call fcn.140034a10
test al, al
je 0x1400306f2
mov rax, qword [rbx + 0x20]
mov rdx, rsi
test rax, rax
cmovne rdx, rax
mov rax, qword [rbx + 0x28]
test rax, rax
cmovne r14, rax
mov qword [rsp + 0x40], r14
mov qword [rsp + 0x38], rdx
mov eax, dword [rbx + 0x38]
mov dword [rsp + 0x28], eax
mov byte [rsp + 0x20], 0
mov r9, rdi
lea r8, [rbx + 0x68]
mov rdx, rbx
lea rcx, [r12 + 0xf8]
call fcn.140034250
mov qword [rbx + 0x10], rax
cmp rax, rsi
jae 0x140030670
mov r8d, SafeArrayDestroy
lea rdx, str.FF_FF_FF_FF
lea rcx, [rbx + 0x68]
call fcn.140007ad0
nop
mov rcx, rdi
call fcn.1400320f0
mov byte [0x14007dc24], 0
lea rdx, str.68_A4_70_7D_3F_F3_0F_10_0C_24_48_83_C4_08_F3_0F_11_48_WashGameplayConfig.NormalizedSurfaceCleanedThreshold.1_F3_0F_11_4B_WashTarget.m_surfaceCleanThreshold.1
lea rcx, [rbp - 0x58]
call fcn.140007810
nop
lea rdx, str.F3_0F_10_48_WashGameplayConfig.NormalizedSurfaceCleanedThreshold.1
lea rcx, [rbp - 0x18]
call fcn.140007810
nop
lea rdx, str.F3_0F_10_48_WashGameplayConfig.NormalizedSurfaceCleanedThreshold.1_80___00_74__F3_0F_10_4B_WashTarget.m_surfaceCleanThreshold.1
lea rcx, [rbp - 0x38]
call fcn.140007810
nop
lea r9, [rbp - 0x58]
lea r8, [rbp - 0x18]
lea rdx, [rbp - 0x38]
mov rcx, rbx
call fcn.14000bcf0
nop
lea rcx, [rbp - 0x38]
call fcn.140001820
nop
lea rcx, [rbp - 0x18]
call fcn.140001820
nop
lea rcx, [rbp - 0x58]
call fcn.140001820
lea rax, str.WashTarget
mov qword [rbp + 0x10], rax
mov qword [rbp + 0x18], r13
lea rax, [rbp + 0x10]
mov qword [rsp + 0x70], rax
lea rax, [rbp + 0x20]
mov qword [rsp + 0x78], rax
lea rdx, [rsp + 0x70]
lea rcx, [rbp + 0x30]
call fcn.14002eab0
mov r9d, 0x400
mov r8, rax
lea rdx, str.PWS.TexturePainter.WashTarget.GetTotalCleanProgress
mov rcx, rbx
call fcn.14000bf10
jmp 0x14002ff77
mov rcx, rdi
cmp r15, 0x10
jb 0x1400307be
mov rcx, qword [rdi]
cmp r14, 3
jne 0x14003098f
mov r8, r14
lea rdx, [0x140071018]
call fcn.14003c4d0
test eax, eax
jne 0x14003098f
cmp byte [0x14007dc24], al
je 0x140030384
lea r8, str.PWS.WashGameplayConfig
lea r13, str.WashGameplayConfig
mov rdx, r13
call fcn.1400060e0
lea rdx, str.C7_40_WashGameplayConfig.NormalizedSurfaceCleanedThreshold.1_A4_70_7D_3F_F3_0F_10_s1_WashGameplayConfig.NormalizedSurfaceCleanedThreshold.1
lea rcx, [rbp - 0x58]
call fcn.140007810
nop
lea rdx, str.F3_0F_10_s1_WashGameplayConfig.NormalizedSurfaceCleanedThreshold.1
lea rcx, [rbp - 0x18]
call fcn.140007810
nop
lea rdx, str.F3_0F_10_s1_WashGameplayConfig.NormalizedSurfaceCleanedThreshold.1
lea rcx, [rbp - 0x38]
call fcn.140007810
nop
lea r9, [rbp - 0x58]
lea r8, [rbp - 0x18]
lea rdx, [rbp - 0x38]
mov rcx, rbx
call fcn.14000bcf0
nop
lea rcx, [rbp - 0x38]
call fcn.140001820
nop
lea rcx, [rbp - 0x18]
call fcn.140001820
nop
lea rcx, [rbp - 0x58]
call fcn.140001820
mov r9d, 0x400
mov r8, r13
lea rdx, str.PWS.TexturePainter.WashTarget.RefreshCleanProgress
mov rcx, rbx
call fcn.14000c160
lea rdx, [0x140070de4]
lea rcx, [rbp - 0x38]
call fcn.140007810
mov r9d, r14d
lea r8d, [r14 - 2]
mov rdx, rax
lea rcx, [rbp + 0xb0]
call fcn.14002af60
nop
lea rax, [rbp + 0xb0]
mov qword [rbp + 0x10], rax
lea rax, [rbp + 0xe0]
mov qword [rbp + 0x18], rax
lea rdx, [rbp + 0x10]
lea rcx, [rbp - 0x70]
call fcn.140031f80
nop
lea r9, [fcn.140001820]
lea edx, [r14 + 0x2d]
lea r8d, [r14 - 2]
lea rcx, [rbp + 0xb0]
call fcn.140039bd0
lea rdx, [rbp - 0x70]
lea rcx, [rbp + 0x30]
call fcn.140031fd0
lea rcx, [r12 + 0xf8]
xor r9d, r9d
mov r8, rax
mov rdx, rbx
call fcn.140034760
test al, al
jne 0x14002ff77
lea rdx, str.C7_40_18_A4_70_7D_3F_F3_0F_10_40_WashGameplayConfig.NormalizedSurfaceCleanedThreshold.1
lea rcx, [rbp - 0x58]
call fcn.140007810
nop
lea rdx, str.F3_0F_10_40_WashGameplayConfig.NormalizedSurfaceCleanedThreshold.1
lea rcx, [rbp - 0x18]
call fcn.140007810
nop
lea rdx, str.F3_0F_10_40_WashGameplayConfig.NormalizedSurfaceCleanedThreshold.1_48_83
lea rcx, [rbp - 0x38]
call fcn.140007810
nop
lea r9, [rbp - 0x58]
lea r8, [rbp - 0x18]
lea rdx, [rbp - 0x38]
mov rcx, rbx
call fcn.14000bcf0
nop
lea rcx, [rbp - 0x38]
call fcn.140001820
nop
lea rcx, [rbp - 0x18]
call fcn.140001820
nop
lea rcx, [rbp - 0x58]
call fcn.140001820
lea r9d, [r14 + 0x1d]
mov r8, r13
lea rdx, str.PWS.WashManager.get_DefaultCleanThreshold
mov rcx, rbx
call fcn.14000c160
jmp 0x14002ff77
lea rdx, [0x140071080]
mov rcx, rdi
call fcn.140007db0
test al, al
je 0x14002fea4
lea r8, str.PWS.WashRenderConfig
lea rdx, str.WashRenderConfig
call fcn.1400060e0
mov dword [rbp + 0x380], 0xc8
mov dword [rbp + 0x384], 0xee
mov dword [rbp + 0x388], 0x91
lea rsi, [rbp + 0x380]
mov edi, reloc.OLEAUT32.dll_SafeArrayDestroy
nop dword [rax]
nop word [rax + rax]
mov r15d, dword [rsi]
mov edx, r15d
lea rcx, [rbp + 0x50]
call fcn.1400321d0
nop
lea r8, [rbp + 0x50]
lea rcx, [rbp + 0x2d0]
call fcn.14000da30
nop
mov r8d, 9
lea rdx, str..MoveNext
mov rcx, rax
call fcn.140007ad0
movups xmm0, xmmword [rax]
movups xmmword [rbp - 0x58], xmm0
movups xmm1, xmmword [rax + 0x10]
movups xmmword [rbp - 0x48], xmm1
mov qword [rax + 0x10], 0
mov qword [rax + 0x18], rdi
mov byte [rax], 0
lea rdx, [rbp - 0x58]
movq rcx, xmm0
psrldq xmm1, 8
movq rax, xmm1
cmp rax, 0x10
cmovae rdx, rcx
lea rcx, [r12 + 0x358]
call fcn.140004880
mov r14, rax
mov rdx, qword [rbp - 0x40]
cmp rdx, 0x10
jb 0x140030aab
inc rdx
mov rcx, qword [rbp - 0x58]
mov rax, rcx
cmp rdx, 0x1000
jb 0x140030aa5
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x140031efd
call fcn.140039900
nop
mov rdx, qword [rbp + 0x2e8]
cmp rdx, 0x10
jb 0x140030aec
inc rdx
mov rcx, qword [rbp + 0x2d0]
mov rax, rcx
cmp rdx, 0x1000
jb 0x140030ae7
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x140031f03
call fcn.140039900
mov qword [rbp + 0x2e0], 0
mov qword [rbp + 0x2e8], rdi
mov byte [rbp + 0x2d0], 0
mov rdx, qword [rbp + 0x68]
cmp rdx, 0x10
jb 0x140030b40
inc rdx
mov rcx, qword [rbp + 0x50]
mov rax, rcx
cmp rdx, 0x1000
jb 0x140030b3b
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x140031f09
call fcn.140039900
mov qword [rbp + 0x60], 0
mov qword [rbp + 0x68], rdi
mov byte [rbp + 0x50], 0
test r14, r14
jne 0x140030ff4
add rsi, 4
lea rax, [rbp + 0x38c]
cmp rsi, rax
jne 0x1400309f0
mov esi, 0xc8
xor r15d, r15d
mov edx, esi
lea rcx, [rbp + 0x30]
call fcn.1400321d0
nop
lea r8, [rbp + 0x30]
lea rcx, [rbp + 0x2f0]
call fcn.14000da30
nop
mov r8d, 9
lea rdx, str..MoveNext
mov rcx, rax
call fcn.140007ad0
movups xmm0, xmmword [rax]
movups xmmword [rbp - 0x58], xmm0
movups xmm1, xmmword [rax + 0x10]
movups xmmword [rbp - 0x48], xmm1
mov qword [rax + 0x10], r15
mov qword [rax + 0x18], rdi
mov byte [rax], 0
lea rdx, [rbp - 0x58]
movq rcx, xmm0
psrldq xmm1, 8
movq rax, xmm1
cmp rax, 0x10
cmovae rdx, rcx
lea rcx, [r12 + 0x358]
call fcn.140004880
mov r14, rax
mov rdx, qword [rbp - 0x40]
cmp rdx, 0x10
jb 0x140030c28
inc rdx
mov rcx, qword [rbp - 0x58]
mov rax, rcx
cmp rdx, 0x1000
jb 0x140030c22
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x140031f0f
call fcn.140039900
nop
mov rdx, qword [rbp + 0x308]
cmp rdx, 0x10
jb 0x140030c69
inc rdx
mov rcx, qword [rbp + 0x2f0]
mov rax, rcx
cmp rdx, 0x1000
jb 0x140030c64
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x140031f15
call fcn.140039900
mov qword [rbp + 0x300], r15
mov qword [rbp + 0x308], rdi
mov byte [rbp + 0x2f0], 0
mov rdx, qword [rbp + 0x48]
cmp rdx, 0x10
jb 0x140030cb9
inc rdx
mov rcx, qword [rbp + 0x30]
mov rax, rcx
cmp rdx, 0x1000
jb 0x140030cb4
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x140031f1b
call fcn.140039900
mov qword [rbp + 0x40], r15
mov qword [rbp + 0x48], rdi
mov byte [rbp + 0x30], 0
test r14, r14
jne 0x140030f26
inc esi
cmp esi, 0x12c
jl 0x140030b75
mov esi, 0x64
mov edx, esi
lea rcx, [rbp + 0x10]
call fcn.1400321d0
nop
lea r8, [rbp + 0x10]
lea rcx, [rbp + 0x310]
call fcn.14000da30
nop
mov r8d, 9
lea rdx, str..MoveNext
mov rcx, rax
call fcn.140007ad0
movups xmm0, xmmword [rax]
movups xmmword [rbp + 0x70], xmm0
movups xmm1, xmmword [rax + 0x10]
movups xmmword [rbp + 0x80], xmm1
mov qword [rax + 0x10], r15
mov qword [rax + 0x18], rdi
mov byte [rax], 0
lea rdx, [rbp + 0x70]
movq rcx, xmm0
psrldq xmm1, 8
movq rax, xmm1
cmp rax, 0x10
cmovae rdx, rcx
lea rcx, [r12 + 0x358]
call fcn.140004880
mov r14, rax
mov rdx, qword [rbp + 0x88]
cmp rdx, 0x10
jb 0x140030d9a
inc rdx
mov rcx, qword [rbp + 0x70]
mov rax, rcx
cmp rdx, 0x1000
jb 0x140030d94
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x140031f21
call fcn.140039900
nop
mov rdx, qword [rbp + 0x328]
cmp rdx, 0x10
jb 0x140030ddb
inc rdx
mov rcx, qword [rbp + 0x310]
mov rax, rcx
cmp rdx, 0x1000
jb 0x140030dd6
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x140031f27
call fcn.140039900
mov qword [rbp + 0x320], r15
mov qword [rbp + 0x328], rdi
mov byte [rbp + 0x310], 0
mov rdx, qword [rbp + 0x28]
cmp rdx, 0x10
jb 0x140030e2b
inc rdx
mov rcx, qword [rbp + 0x10]
mov rax, rcx
cmp rdx, 0x1000
jb 0x140030e26
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x140031f2d
call fcn.140039900
mov qword [rbp + 0x20], r15
mov qword [rbp + 0x28], rdi
mov byte [rbp + 0x10], 0
test r14, r14
jne 0x140030e4f
inc esi
cmp esi, 0xc8
jge 0x140031045
jmp 0x140030ce1
mov edx, esi
lea rcx, [rbp + 0x70]
call fcn.1400321d0
nop
lea r8, [rbp + 0x70]
lea rcx, [rbp - 0x18]
call fcn.14000da30
nop
cmp qword [rax + 0x18], 0x10
jb 0x140030e73
mov rax, qword [rax]
mov r8, rax
lea rdx, str._HighlightDirt_d_N
call fcn.1400060e0
nop
mov rdx, qword [rbp]
cmp rdx, 0x10
jb 0x140030ebe
inc rdx
mov rcx, qword [rbp - 0x18]
mov rax, rcx
cmp rdx, 0x1000
jb 0x140030eb9
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x140031f33
call fcn.140039900
movdqa xmm0, xmmword [0x140071c40]
movdqu xmmword [rbp - 8], xmm0
mov byte [rbp - 0x18], 0
mov rdx, qword [rbp + 0x88]
cmp rdx, 0x10
jb 0x140030f0d
inc rdx
mov rcx, qword [rbp + 0x70]
mov rax, rcx
cmp rdx, 0x1000
jb 0x140030f08
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x140031f39
call fcn.140039900
movdqa xmm0, xmmword [0x140071c40]
movdqu xmmword [rbp + 0x80], xmm0
mov byte [rbp + 0x70], 0
jmp 0x140031045
mov edx, esi
lea rcx, [rbp - 0x58]
call fcn.1400321d0
nop
lea r8, [rbp - 0x58]
lea rcx, [rbp - 0x38]
call fcn.14000da30
nop
cmp qword [rax + 0x18], 0x10
jb 0x140030f4a
mov rax, qword [rax]
mov r8, rax
lea rdx, str._HighlightDirt_d_N
call fcn.1400060e0
nop
mov rdx, qword [rbp - 0x20]
cmp rdx, 0x10
jb 0x140030f95
inc rdx
mov rcx, qword [rbp - 0x38]
mov rax, rcx
cmp rdx, 0x1000
jb 0x140030f90
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x140031f3f
call fcn.140039900
movdqa xmm0, xmmword [0x140071c40]
movdqu xmmword [rbp - 0x28], xmm0
mov byte [rbp - 0x38], 0
mov rdx, qword [rbp - 0x40]
cmp rdx, 0x10
jb 0x140030fe1
inc rdx
mov rcx, qword [rbp - 0x58]
mov rax, rcx
cmp rdx, 0x1000
jb 0x140030fdc
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x140031f45
call fcn.140039900
movdqa xmm0, xmmword [0x140071c40]
movdqu xmmword [rbp - 0x48], xmm0
mov byte [rbp - 0x58], 0
jmp 0x140031045
mov edx, r15d
lea rcx, [rbp + 0xb0]
call fcn.14002f580
nop
mov r8, rax
lea rcx, [rbp + 0x360]
call fcn.14000da30
nop
mov rcx, rax
call fcn.140007770
mov r8, rax
lea rdx, str._HighlightDirt_d_N
call fcn.1400060e0
nop
lea rcx, [rbp + 0x360]
call fcn.140001820
nop
lea rcx, [rbp + 0xb0]
call fcn.140001820
xorps xmm0, xmm0
movups xmmword [rbp + 0x110], xmm0
mov ecx, 0x40
call fcn.140039934
mov rsi, rax
mov qword [rbp + 0x110], rax
mov qword [rbp + 0x120], 0x35
mov eax, 0x3f
mov qword [rsp + 0x60], rax
mov r13d, eax
mov qword [rbp + 0x128], rax
movups xmm0, xmmword [str.0F_2F_43_28_0F_82_03_00_00_00_0F_57_C0_F3_0F_11_43_38]
movups xmmword [rsi], xmm0
movups xmm1, xmmword [0x140071840]
movups xmmword [rsi + 0x10], xmm1
movups xmm0, xmmword [0x140071850]
movups xmmword [rsi + 0x20], xmm0
mov eax, dword [0x140071860]
mov dword [rsi + 0x30], eax
movzx eax, byte [0x140071864]
mov byte [rsi + 0x34], al
mov byte [rsi + 0x35], 0
xorps xmm0, xmm0
movups xmmword [rbp + 0x90], xmm0
mov qword [rbp + 0xa0], SafeArrayDestroy
mov qword [rbp + 0xa8], rdi
movsd xmm0, qword [str.F3_0F_11_43_38]
movsd qword [rbp + 0x90], xmm0
mov eax, dword [0x140071870]
mov dword [rbp + 0x98], eax
movzx eax, word [0x140071874]
mov word [rbp + 0x9c], ax
mov byte [rbp + 0x9e], 0
xorps xmm0, xmm0
movups xmmword [rbp + 0x2b0], xmm0
lea ecx, [r13 - 0xf]
call fcn.140039934
mov r14, rax
mov qword [rbp + 0x2b0], rax
mov qword [rbp + 0x2c0], 0x26
mov eax, 0x2f
mov qword [rsp + 0x70], rax
mov r15d, eax
mov qword [rbp + 0x2c8], rax
movups xmm0, xmmword [str.F3_0F_11_43_38_F3_0F_10_4B_28_0F_2F_C8]
movups xmmword [r14], xmm0
movups xmm1, xmmword [0x140071888]
movups xmmword [r14 + 0x10], xmm1
mov eax, dword [0x140071898]
mov dword [r14 + 0x20], eax
movzx eax, word [0x14007189c]
mov word [r14 + 0x24], ax
mov byte [r14 + 0x26], 0
xor eax, eax
mov dword [rbx], eax
cmp dword [rbx + 4], 2
je 0x140031181
mov dword [rbx + 4], eax
lea rax, [rbx + 0x68]
lea rcx, [rbp + 0x2b0]
cmp rax, rcx
je 0x1400311b0
mov r8d, 0x26
mov rdx, r14
mov rcx, rax
call fcn.140007970
mov r15, qword [rbp + 0x2c8]
mov r14, qword [rbp + 0x2b0]
lea rax, [rbx + 0x88]
lea rcx, [rbp + 0x90]
cmp rax, rcx
je 0x1400311df
mov r8d, SafeArrayDestroy
lea rdx, [rbp + 0x90]
mov rcx, rax
call fcn.140007970
mov rdi, qword [rbp + 0xa8]
lea rax, [rbx + 0xa8]
lea rcx, [rbp + 0x110]
cmp rax, rcx
je 0x140031211
mov r8d, 0x35
mov rdx, rsi
mov rcx, rax
call fcn.140007970
mov r13, qword [rbp + 0x128]
mov rsi, qword [rbp + 0x110]
cmp r15, 0x10
jb 0x140031249
lea rdx, [r15 + 1]
mov rax, r14
cmp rdx, 0x1000
jb 0x140031240
add rdx, 0x27
mov r14, qword [r14 - 8]
sub rax, r14
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x140031f4b
mov rcx, r14
call fcn.140039900
nop
cmp rdi, 0x10
jb 0x140031285
lea rdx, [rdi + 1]
mov rcx, qword [rbp + 0x90]
mov rax, rcx
cmp rdx, 0x1000
jb 0x14003127f
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x140031f51
call fcn.140039900
nop
cmp r13, 0x10
jb 0x1400312bc
lea rdx, [r13 + 1]
mov rax, rsi
cmp rdx, 0x1000
jb 0x1400312b4
add rdx, 0x27
mov rsi, qword [rsi - 8]
sub rax, rsi
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x140031ec7
mov rcx, rsi
call fcn.140039900
lea rdx, str._HighlightDirt_d_N.MoveNext
mov rcx, qword [0x1400802b0]
call fcn.140004880
mov esi, 0x10000
lea edi, [rsi + 0x10]
mov r15, 0xffffffffffffffff
test rax, rax
je 0x140031305
mov qword [rbx + 0x20], rax
mov rcx, qword [0x1400802a0]
test rcx, rcx
je 0x1400312f8
call fcn.140002b70
mov rax, qword [rbx + 0x20]
lea rcx, [rax + 0x400]
jmp 0x140031328
mov rax, qword [0x1400802b0]
cmp byte [rax + 0x20], 0
je 0x14003131e
mov qword [rbx + 0x20], rsi
mov rcx, rdi
mov rax, rsi
jmp 0x140031328
mov qword [rbx + 0x20], r15
mov rcx, r15
mov rax, r15
mov r13, rbx
mov qword [rbx + 0x28], rcx
movabs r14, 0x7fffffffffffffff
lea r9, [r12 + 0xf8]
mov qword [rsp + 0x68], r9
cmp qword [rbx + 0x10], rsi
ja 0x14002ff77
mov r12, rsi
test rax, rax
cmovne r12, rax
mov rax, r14
test rcx, rcx
cmovne rax, rcx
mov qword [rbp + 0x10], rax
xor r8d, r8d
mov rdx, rbx
mov rcx, r9
call fcn.140034a10
test al, al
je 0x1400313cd
lea rdx, [rbx + 0x68]
lea rcx, [rbp + 0xb0]
call fcn.140007850
mov dword [rsp + 0x30], 0
mov rcx, qword [rbp + 0x10]
mov qword [rsp + 0x28], rcx
mov qword [rsp + 0x20], r12
xor r9d, r9d
mov rdx, rax
mov rcx, qword [rsp + 0x68]
call fcn.140032840
mov qword [rbx + 0x10], rax
test rax, rax
je 0x1400313c4
movsxd rcx, dword [rbx + 0x38]
add rax, rcx
mov qword [rbx + 0x10], rax
cmp rax, rsi
jae 0x14002ff77
xorps xmm0, xmm0
movups xmmword [rbp + 0x170], xmm0
mov ecx, 0x60
call fcn.140039934
mov rcx, rax
mov qword [rsp + 0x50], rax
mov qword [rbp + 0x170], rax
mov qword [rbp + 0x180], 0x59
mov eax, 0x5f
mov qword [rbp + 0x10], rax
mov qword [rbp + 0x188], rax
movaps xmm0, xmmword [str.F3_0F_10_82_WashRenderConfig.dirtHighlightDuration_0F_2F_43_28_77_07_C7_43_28_00_00_00_00]
movups xmmword [rcx], xmm0
movaps xmm1, xmmword [0x1400718d0]
movups xmmword [rcx + 0x10], xmm1
movaps xmm0, xmmword [0x1400718e0]
movups xmmword [rcx + 0x20], xmm0
movaps xmm1, xmmword [0x1400718f0]
movups xmmword [rcx + 0x30], xmm1
movaps xmm0, xmmword [0x140071900]
movups xmmword [rcx + 0x40], xmm0
movsd xmm0, qword [0x140071910]
movsd qword [rcx + 0x50], xmm0
movzx eax, byte [0x140071918]
mov byte [rcx + 0x58], al
mov byte [rcx + 0x59], 0
xorps xmm0, xmm0
movups xmmword [rbp + 0x150], xmm0
mov ecx, 0x40
call fcn.140039934
mov rcx, rax
mov qword [rsp + 0x58], rax
mov qword [rbp + 0x150], rax
mov qword [rbp + 0x160], 0x32
mov qword [rbp + 0x168], 0x3f
movups xmm0, xmmword [str.F3_0F_10_82_WashRenderConfig.dirtHighlightDuration]
movups xmmword [rax], xmm0
movups xmm1, xmmword [0x140071930]
movups xmmword [rax + 0x10], xmm1
movups xmm0, xmmword [0x140071940]
movups xmmword [rax + 0x20], xmm0
movzx eax, word [0x140071950]
mov word [rcx + 0x30], ax
mov byte [rcx + 0x32], 0
xorps xmm0, xmm0
movups xmmword [rbp + 0x130], xmm0
mov ecx, 0x40
call fcn.140039934
mov r12, rax
mov qword [rbp + 0x130], rax
mov qword [rbp + 0x140], 0x3e
mov qword [rbp + 0x148], 0x3f
movups xmm0, xmmword [str.F3_0F_10_82_WashRenderConfig.dirtHighlightDuration_0F_2F_43_28]
movups xmmword [rax], xmm0
movups xmm1, xmmword [0x140071968]
movups xmmword [rax + 0x10], xmm1
movups xmm0, xmmword [0x140071978]
movups xmmword [rax + 0x20], xmm0
movsd xmm0, qword [0x140071988]
movsd qword [rax + 0x30], xmm0
mov eax, dword [0x140071990]
mov dword [r12 + 0x38], eax
movzx eax, word [0x140071994]
mov word [r12 + 0x3c], ax
mov byte [r12 + 0x3e], 0
xor eax, eax
mov dword [rbx], eax
cmp dword [rbx + 4], 2
je 0x140031550
mov dword [rbx + 4], eax
lea rcx, [rbp + 0x130]
lea rax, [rbx + 0x68]
cmp rax, rcx
je 0x140031578
mov r8d, 0x3e
mov rdx, r12
mov rcx, rax
call fcn.140007970
mov r12, qword [rbp + 0x130]
lea rcx, [rbp + 0x150]
lea rax, [rbx + 0x88]
cmp rax, rcx
je 0x1400315aa
mov r8d, 0x32
mov rdx, qword [rsp + 0x58]
mov rcx, rax
call fcn.140007970
mov rax, qword [rbp + 0x150]
mov qword [rsp + 0x58], rax
lea rcx, [rbp + 0x170]
lea rax, [rbx + 0xa8]
cmp rax, rcx
je 0x1400315dc
mov r8d, 0x59
mov rdx, qword [rsp + 0x50]
mov rcx, rax
call fcn.140007970
mov rax, qword [rbp + 0x170]
mov qword [rsp + 0x50], rax
mov rdx, qword [rbp + 0x148]
cmp rdx, 0x10
jb 0x14003161b
inc rdx
mov rax, r12
cmp rdx, 0x1000
jb 0x140031612
add rdx, 0x27
mov r12, qword [r12 - 8]
sub rax, r12
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x140031f57
mov rcx, r12
call fcn.140039900
nop
mov r8, qword [rbp + 0x168]
cmp r8, 0x10
jb 0x140031668
inc r8
mov rcx, qword [rsp + 0x58]
mov rdx, rcx
cmp r8, 0x1000
jb 0x14003165f
add r8, 0x27
mov rax, qword [rcx - 8]
mov qword [rsp + 0x58], rax
sub rdx, rax
lea rax, [rdx - 8]
cmp rax, 0x1f
ja 0x140031f5d
mov rcx, qword [rsp + 0x58]
mov rdx, r8
call fcn.140039900
nop
mov rdx, qword [rbp + 0x188]
cmp rdx, 0x10
jb 0x1400316b1
inc rdx
mov rcx, qword [rsp + 0x50]
mov r8, rcx
cmp rdx, 0x1000
jb 0x1400316ac
add rdx, 0x27
mov rax, qword [rcx - 8]
mov qword [rsp + 0x50], rax
sub r8, rax
lea rax, [r8 - 8]
cmp rax, 0x1f
ja 0x140031ec7
mov rcx, qword [rsp + 0x50]
call fcn.140039900
lea rdx, str._HighlightDirt_d_N.MoveNext
mov rcx, qword [0x1400802b0]
call fcn.140004880
test rax, rax
je 0x1400316fd
mov qword [rbx + 0x20], rax
mov rcx, qword [0x1400802a0]
test rcx, rcx
je 0x1400316de
call fcn.140002b70
mov rax, qword [rbx + 0x20]
add rax, 0x400
mov qword [r13 + 0x28], rax
lea rdx, str.WashRenderConfig
mov rcx, rbx
call fcn.14000c3a0
jmp 0x140031720
mov rax, qword [0x1400802b0]
movzx ecx, byte [rax + 0x20]
mov rdx, rdi
test cl, cl
cmove rdx, r15
mov rax, rsi
cmove rax, r15
mov qword [rbx + 0x20], rax
mov qword [r13 + 0x28], rdx
cmp qword [rbx + 0x10], rsi
ja 0x14002ff77
mov rax, qword [rbx + 0x20]
mov r12, rsi
test rax, rax
cmovne r12, rax
mov rax, qword [r13 + 0x28]
mov rcx, r14
test rax, rax
cmovne rcx, rax
mov qword [rsp + 0x50], rcx
xor r8d, r8d
mov rdx, rbx
mov rcx, qword [rsp + 0x68]
call fcn.140034a10
test al, al
je 0x1400317b3
lea rdx, [rbx + 0x68]
lea rcx, [rbp + 0xb0]
call fcn.140007850
mov dword [rsp + 0x30], 0
mov rcx, qword [rsp + 0x50]
mov qword [rsp + 0x28], rcx
mov qword [rsp + 0x20], r12
xor r9d, r9d
mov rdx, rax
mov rcx, qword [rsp + 0x68]
call fcn.140032840
mov qword [rbx + 0x10], rax
test rax, rax
je 0x1400317aa
movsxd rcx, dword [rbx + 0x38]
add rax, rcx
mov qword [rbx + 0x10], rax
cmp rax, rsi
jae 0x14002ff77
xorps xmm0, xmm0
movups xmmword [rbp + 0x1d0], xmm0
mov ecx, 0x60
call fcn.140039934
mov rcx, rax
mov qword [rsp + 0x58], rax
mov qword [rbp + 0x1d0], rax
mov qword [rbp + 0x1e0], 0x59
mov qword [rbp + 0x1e8], 0x5f
movaps xmm0, xmmword [str.F3_0F_10_82_WashRenderConfig.dirtHighlightDuration_0F_2F_47_28_77_07_C7_47_28_00_00_00_00]
movups xmmword [rax], xmm0
movaps xmm1, xmmword [0x1400719b0]
movups xmmword [rax + 0x10], xmm1
movaps xmm0, xmmword [0x1400719c0]
movups xmmword [rax + 0x20], xmm0
movaps xmm1, xmmword [0x1400719d0]
movups xmmword [rax + 0x30], xmm1
movaps xmm0, xmmword [0x1400719e0]
movups xmmword [rax + 0x40], xmm0
movsd xmm0, qword [0x1400719f0]
movsd qword [rax + 0x50], xmm0
movzx eax, byte [0x1400719f8]
mov byte [rcx + 0x58], al
mov byte [rcx + 0x59], 0
xorps xmm0, xmm0
movups xmmword [rbp + 0x1b0], xmm0
mov ecx, 0x40
call fcn.140039934
mov rcx, rax
mov qword [rsp + 0x50], rax
mov qword [rbp + 0x1b0], rax
mov qword [rbp + 0x1c0], 0x32
mov qword [rbp + 0x1c8], 0x3f
movups xmm0, xmmword [str.F3_0F_10_82_WashRenderConfig.dirtHighlightDuration]
movups xmmword [rax], xmm0
movups xmm1, xmmword [0x140071930]
movups xmmword [rax + 0x10], xmm1
movups xmm0, xmmword [0x140071940]
movups xmmword [rax + 0x20], xmm0
movzx eax, word [0x140071950]
mov word [rcx + 0x30], ax
mov byte [rcx + 0x32], 0
xorps xmm0, xmm0
movups xmmword [rbp + 0x190], xmm0
mov ecx, 0x40
call fcn.140039934
mov r12, rax
mov qword [rbp + 0x190], rax
mov qword [rbp + 0x1a0], 0x3e
mov qword [rbp + 0x1a8], 0x3f
movups xmm0, xmmword [str.F3_0F_10_82_WashRenderConfig.dirtHighlightDuration_0F_2F_47_28]
movups xmmword [rax], xmm0
movups xmm1, xmmword [0x140071a10]
movups xmmword [rax + 0x10], xmm1
movups xmm0, xmmword [0x140071a20]
movups xmmword [rax + 0x20], xmm0
movsd xmm0, qword [0x140071a30]
movsd qword [rax + 0x30], xmm0
mov eax, dword [0x140071a38]
mov dword [r12 + 0x38], eax
movzx eax, word [0x140071a3c]
mov word [r12 + 0x3c], ax
mov byte [r12 + 0x3e], 0
xor eax, eax
mov dword [rbx], eax
cmp dword [rbx + 4], 2
je 0x140031931
mov dword [rbx + 4], eax
lea rcx, [rbp + 0x190]
lea rax, [rbx + 0x68]
cmp rax, rcx
je 0x140031959
mov r8d, 0x3e
mov rdx, r12
mov rcx, rax
call fcn.140007970
mov r12, qword [rbp + 0x190]
lea rcx, [rbp + 0x1b0]
lea rax, [rbx + 0x88]
cmp rax, rcx
je 0x14003198b
mov r8d, 0x32
mov rdx, qword [rsp + 0x50]
mov rcx, rax
call fcn.140007970
mov rax, qword [rbp + 0x1b0]
mov qword [rsp + 0x50], rax
lea rcx, [rbp + 0x1d0]
lea rax, [rbx + 0xa8]
cmp rax, rcx
je 0x1400319bd
mov r8d, 0x59
mov rdx, qword [rsp + 0x58]
mov rcx, rax
call fcn.140007970
mov rax, qword [rbp + 0x1d0]
mov qword [rsp + 0x58], rax
mov rdx, qword [rbp + 0x1a8]
cmp rdx, 0x10
jb 0x1400319fc
inc rdx
mov rax, r12
cmp rdx, 0x1000
jb 0x1400319f3
add rdx, 0x27
mov r12, qword [r12 - 8]
sub rax, r12
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x140031f63
mov rcx, r12
call fcn.140039900
nop
mov r8, qword [rbp + 0x1c8]
cmp r8, 0x10
jb 0x140031a49
inc r8
mov rcx, qword [rsp + 0x50]
mov rdx, rcx
cmp r8, 0x1000
jb 0x140031a40
add r8, 0x27
mov rax, qword [rcx - 8]
mov qword [rsp + 0x50], rax
sub rdx, rax
lea rax, [rdx - 8]
cmp rax, 0x1f
ja 0x140031f69
mov rcx, qword [rsp + 0x50]
mov rdx, r8
call fcn.140039900
nop
mov rdx, qword [rbp + 0x1e8]
cmp rdx, 0x10
jb 0x140031a92
inc rdx
mov rcx, qword [rsp + 0x58]
mov r8, rcx
cmp rdx, 0x1000
jb 0x140031a8d
add rdx, 0x27
mov rax, qword [rcx - 8]
mov qword [rsp + 0x58], rax
sub r8, rax
lea rax, [r8 - 8]
cmp rax, 0x1f
ja 0x140031ec7
mov rcx, qword [rsp + 0x58]
call fcn.140039900
lea rdx, str._HighlightDirt_d_N.MoveNext
mov rcx, qword [0x1400802b0]
call fcn.140004880
test rax, rax
je 0x140031ade
mov qword [rbx + 0x20], rax
mov rcx, qword [0x1400802a0]
test rcx, rcx
je 0x140031abf
call fcn.140002b70
mov rax, qword [rbx + 0x20]
add rax, 0x400
mov qword [r13 + 0x28], rax
lea rdx, str.WashRenderConfig
mov rcx, rbx
call fcn.14000c3a0
jmp 0x140031b01
mov rax, qword [0x1400802b0]
movzx ecx, byte [rax + 0x20]
mov rdx, rdi
test cl, cl
cmove rdx, r15
mov rax, rsi
cmove rax, r15
mov qword [rbx + 0x20], rax
mov qword [r13 + 0x28], rdx
cmp qword [rbx + 0x10], rsi
ja 0x14002ff77
mov rax, qword [rbx + 0x20]
mov r12, rsi
test rax, rax
cmovne r12, rax
mov rax, qword [r13 + 0x28]
test rax, rax
cmovne r14, rax
xor r8d, r8d
mov rdx, rbx
mov r13, qword [rsp + 0x68]
mov rcx, r13
call fcn.140034a10
test al, al
je 0x140031b88
lea rdx, [rbx + 0x68]
lea rcx, [rbp + 0xb0]
call fcn.140007850
mov dword [rsp + 0x30], 0
mov qword [rsp + 0x28], r14
mov qword [rsp + 0x20], r12
xor r9d, r9d
mov rdx, rax
mov rcx, r13
call fcn.140032840
mov qword [rbx + 0x10], rax
test rax, rax
je 0x140031b7f
movsxd rdx, dword [rbx + 0x38]
add rax, rdx
mov qword [rbx + 0x10], rax
cmp rax, rsi
jae 0x14002ff77
xorps xmm0, xmm0
movups xmmword [rbp + 0x230], xmm0
mov ecx, 0x60
call fcn.140039934
mov r14, rax
mov qword [rbp + 0x230], rax
mov qword [rbp + 0x240], 0x55
mov qword [rbp + 0x248], 0x5f
movaps xmm0, xmmword [str.F3_0F_10_82_WashRenderConfig.highlightDuration_0F_2F_47_28_77_07_C7_47_28_00_00_00_00]
movups xmmword [rax], xmm0
movaps xmm1, xmmword [0x140071a50]
movups xmmword [rax + 0x10], xmm1
movaps xmm0, xmmword [0x140071a60]
movups xmmword [rax + 0x20], xmm0
movaps xmm1, xmmword [0x140071a70]
movups xmmword [rax + 0x30], xmm1
movaps xmm0, xmmword [0x140071a80]
movups xmmword [rax + 0x40], xmm0
mov eax, dword [0x140071a90]
mov dword [r14 + 0x50], eax
movzx eax, byte [0x140071a94]
mov byte [r14 + 0x54], al
mov byte [r14 + 0x55], 0
xorps xmm0, xmm0
movups xmmword [rbp + 0x210], xmm0
mov ecx, 0x30
call fcn.140039934
mov r13, rax
mov qword [rbp + 0x210], rax
mov qword [rbp + 0x220], 0x2e
mov eax, 0x2f
mov qword [rbp + 0x228], rax
movups xmm0, xmmword [str.F3_0F_10_82_WashRenderConfig.highlightDuration]
movups xmmword [r13], xmm0
movups xmm1, xmmword [0x140071aa8]
movups xmmword [r13 + 0x10], xmm1
movsd xmm0, qword [0x140071ab8]
movsd qword [r13 + 0x20], xmm0
mov eax, dword [0x140071ac0]
mov dword [r13 + 0x28], eax
movzx eax, word [0x140071ac4]
mov word [r13 + 0x2c], ax
mov byte [r13 + 0x2e], 0
xorps xmm0, xmm0
movups xmmword [rbp + 0x1f0], xmm0
mov ecx, 0x40
call fcn.140039934
mov r12, rax
mov qword [rbp + 0x1f0], rax
mov qword [rbp + 0x200], 0x3a
mov qword [rbp + 0x208], 0x3f
movups xmm0, xmmword [str.F3_0F_10_82_WashRenderConfig.highlightDuration_0F_2F_47_28]
movups xmmword [rax], xmm0
movups xmm1, xmmword [0x140071ad8]
movups xmmword [rax + 0x10], xmm1
movups xmm0, xmmword [0x140071ae8]
movups xmmword [rax + 0x20], xmm0
movsd xmm0, qword [0x140071af8]
movsd qword [rax + 0x30], xmm0
movzx eax, word [0x140071b00]
mov word [r12 + 0x38], ax
mov byte [r12 + 0x3a], 0
xor eax, eax
mov dword [rbx], eax
cmp dword [rbx + 4], 2
je 0x140031d03
mov dword [rbx + 4], eax
lea rcx, [rbp + 0x1f0]
lea rax, [rbx + 0x68]
cmp rax, rcx
je 0x140031d37
mov r8d, 0x3a
mov rdx, r12
mov rcx, rax
call fcn.140007970
mov rax, qword [rbp + 0x208]
mov qword [rsp + 0x60], rax
mov r12, qword [rbp + 0x1f0]
lea rcx, [rbp + 0x210]
lea rax, [rbx + 0x88]
cmp rax, rcx
je 0x140031d6e
mov r8d, 0x2e
mov rdx, r13
mov rcx, rax
call fcn.140007970
mov rax, qword [rbp + 0x228]
mov qword [rsp + 0x70], rax
mov r13, qword [rbp + 0x210]
lea rcx, [rbp + 0x230]
lea rax, [rbx + 0xa8]
cmp rax, rcx
je 0x140031da4
mov r8d, 0x55
mov rdx, r14
mov rcx, rax
call fcn.140007970
mov rax, qword [rbp + 0x248]
mov qword [rbp + 0x10], rax
mov r14, qword [rbp + 0x230]
mov rax, qword [rsp + 0x60]
cmp rax, 0x10
jb 0x140031de2
lea rdx, [rax + 1]
mov rax, r12
cmp rdx, 0x1000
jb 0x140031dd9
add rdx, 0x27
mov r12, qword [r12 - 8]
sub rax, r12
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x140031f6f
mov rcx, r12
call fcn.140039900
nop
mov rax, qword [rsp + 0x70]
cmp rax, 0x10
jb 0x140031e1f
lea rdx, [rax + 1]
mov rax, r13
cmp rdx, 0x1000
jb 0x140031e16
add rdx, 0x27
mov r13, qword [r13 - 8]
sub rax, r13
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x140031f75
mov rcx, r13
call fcn.140039900
nop
mov rax, qword [rbp + 0x10]
cmp rax, 0x10
jb 0x140031e56
lea rdx, [rax + 1]
mov rax, r14
cmp rdx, 0x1000
jb 0x140031e4e
add rdx, 0x27
mov r14, qword [r14 - 8]
sub rax, r14
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x140031ec7
mov rcx, r14
call fcn.140039900
lea rdx, str._HighlightDirt_d_N.MoveNext
mov rcx, qword [0x1400802b0]
call fcn.140004880
test rax, rax
je 0x140031ea5
mov qword [rbx + 0x20], rax
mov rcx, qword [0x1400802a0]
test rcx, rcx
je 0x140031e83
call fcn.140002b70
mov rax, qword [rbx + 0x20]
add rax, 0x400
mov qword [rbx + 0x28], rax
lea rdx, str.WashRenderConfig
mov rcx, rbx
call fcn.14000c3a0
jmp 0x14002ff77
mov rax, qword [0x1400802b0]
movzx ecx, byte [rax + 0x20]
test cl, cl
cmove rdi, r15
cmove rsi, r15
mov qword [rbx + 0x20], rsi
mov qword [rbx + 0x28], rdi
jmp 0x14002ff77
call fcn.140040354
nop
call fcn.140040354
nop
call fcn.140040354
nop
call fcn.140040354
nop
call fcn.140040354
nop
call fcn.140040354
nop
call fcn.140040354
nop
call fcn.140040354
int3
call fcn.140040354
nop
call fcn.140040354
nop
call fcn.140040354
nop
call fcn.140040354
nop
call fcn.140040354
nop
call fcn.140040354
nop
call fcn.140040354
nop
call fcn.140040354
nop
call fcn.140040354
nop
call fcn.140040354
nop
call fcn.140040354
nop
call fcn.140040354
nop
call fcn.140040354
nop
call fcn.140040354
nop
call fcn.140040354
nop
call fcn.140040354
nop
call fcn.140040354
nop
call fcn.140040354
nop
call fcn.140040354
nop
call fcn.140040354
nop
call fcn.140040354
nop
call fcn.140040354
int3