Function at 0x45d3d1
Capabilities:
Delete file

Disassembly:
push 0x670
mov eax, 0x667129
call fcn.005bea6f
mov edi, ecx
mov dword [ebp - 0x5b0], edi
mov eax, dword [ebp + 8]
lea ecx, [ebp - 0x598]
push 0
push 0
push 0x7be
mov esi, str.CChronosAccess::SaveLargeImage
mov dword [ebp - 0x5a8], eax
mov eax, dword [ebp + 0x20]
push esi
push 0x12fc748
push dword [0x12fa964]
mov dword [ebp - 0x5e4], eax
call fcn.004203f9
and dword [ebp - 4], 0
lea eax, [ebp - 0x598]
push esi
push 0x83c36c
push 0x7bf
push 0x200
push eax
call fcn.0042077f
add esp, 0x14
lea eax, [edi + 8]
mov ecx, eax
mov dword [ebp - 0x5b8], eax
push 9
push 0
call fcn.00469592
mov eax, dword [edi + 0x638]
mov ecx, dword [eax + 0x274]
cmp ecx, 0x10
je 0x45d47d
cmp ecx, 0x80
je 0x45d47d
mov esi, dword [eax + 0x2a4]
mov dword [ebp - 0x5f0], esi
jmp 0x45d489
mov eax, dword [eax + 0x2a8]
mov dword [ebp - 0x5f0], eax
mov eax, dword [edi + 4]
mov ecx, dword [ebp + 0x28]
mov dword [eax + 0xa30], ecx
mov ecx, dword [edi + 4]
movsd xmm2, qword [ecx + 0x508]
lea eax, [ecx + 0x540]
lea edx, [ecx + 0x5c8]
push eax
mov ecx, edx
call fcn.0046777c
movd xmm0, dword [ebp + 0x18]
lea ecx, [ebp - 0x98]
cvtdq2ps xmm0, xmm0
push edx
mov byte [ebp - 0x5a1], al
movss dword [ebp - 0x5b4], xmm0
movd xmm0, dword [ebp + 0x1c]
cvtdq2ps xmm0, xmm0
movss dword [ebp - 0x5c0], xmm0
call fcn.0045ade7
movsd xmm1, qword [ebp + 0x2c]
lea ecx, [ebp - 0x98]
call fcn.004674c8
cmp byte [ebp - 0x5a1], 0
movsd xmm3, qword [ebp - 0x90]
movsd xmm4, qword [ebp - 0x98]
jne 0x45d561
cvttsd2si edx, qword [ebp - 0x88]
push 1
push 1
cvttsd2si esi, qword [ebp - 0x80]
mov dword [ebp - 0x5c8], edx
push dword [ebp + 0x28]
cvttsd2si eax, xmm4
mov dword [ebp - 0x5c4], esi
cvttsd2si ecx, xmm3
mov dword [ebp - 0x5d0], eax
lea eax, [ebp - 0x5d0]
push eax
mov dword [ebp - 0x5cc], ecx
mov ecx, edi
call fcn.0045bb91
movsd xmm3, qword [ebp - 0x90]
movsd xmm4, qword [ebp - 0x98]
movss xmm6, dword [ebp - 0x5b4]
lea esi, [ebp - 0x68]
movss xmm5, dword [ebp - 0x5c0]
lea edi, [ebp - 0x5d0]
movsd dword es:[edi], dword [esi]
movaps xmm0, xmm4
addsd xmm0, qword [ebp - 0x88]
cvtps2pd xmm1, xmm6
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
xorps xmm2, xmm2
comisd xmm0, xmm1
movsd dword es:[edi], dword [esi]
ja 0x45d5c8
cvtps2pd xmm1, xmm5
movaps xmm0, xmm3
addsd xmm0, qword [ebp - 0x80]
comisd xmm0, xmm1
ja 0x45d5c8
movss xmm3, dword [ebp - 0x5c4]
movss xmm1, dword [ebp - 0x5c8]
movss xmm0, dword [ebp - 0x5cc]
movss xmm4, dword [ebp - 0x5d0]
jmp 0x45d620
movsd xmm0, qword [ebp - 0x78]
ucomisd xmm0, qword [0x8c25c0]
lahf
test ah, 0x44
jp 0x45d5ff
movd xmm0, dword [ebp + 0x10]
cvtdq2pd xmm0, xmm0
subsd xmm4, xmm0
movd xmm0, dword [ebp + 0x14]
cvtdq2pd xmm0, xmm0
cvtpd2ps xmm4, xmm4
subsd xmm3, xmm0
cvtpd2ps xmm0, xmm3
jmp 0x45d605
movaps xmm4, xmm2
movaps xmm0, xmm2
cvttsd2si eax, qword [ebp - 0x88]
movd xmm1, eax
cvttsd2si eax, qword [ebp - 0x80]
cvtdq2ps xmm1, xmm1
movd xmm3, eax
cvtdq2ps xmm3, xmm3
comiss xmm4, xmm2
addss xmm1, xmm4
addss xmm6, xmm2
addss xmm3, xmm0
addss xmm5, xmm2
minss xmm1, xmm6
minss xmm3, xmm5
ja 0x45d640
movaps xmm4, xmm2
comiss xmm0, xmm2
ja 0x45d648
movaps xmm0, xmm2
subss xmm3, xmm0
movaps xmm2, xmm0
subss xmm1, xmm4
cvttss2si edx, xmm0
addss xmm2, xmm3
movss dword [ebp - 0x5c0], xmm3
cvttss2si esi, xmm4
mov dword [ebp - 0x5fc], edx
mov dword [ebp - 0x5cc], edx
cvttss2si ecx, xmm2
mov dword [ebp - 0x5d0], esi
movss dword [ebp - 0x5ac], xmm2
movaps xmm2, xmm4
addss xmm2, xmm1
mov dword [ebp - 0x5c4], ecx
lea ecx, [ebp - 0x67c]
movss dword [ebp - 0x5f4], xmm1
cvttss2si eax, xmm2
movss dword [ebp - 0x5f8], xmm2
mov dword [ebp - 0x5c8], eax
call fcn.00459218
mov esi, dword [ebp - 0x5b0]
mov eax, dword [esi + 0x638]
mov edi, dword [eax + 0x274]
mov dword [ebp - 0x5ec], edi
cmp edi, 0x10
je 0x45d70a
mov eax, dword [esi + 4]
lea edi, [ebp - 0x670]
add eax, 0x6ad
lea esi, [ebp - 0x5d0]
mov dword [ebp - 0x67c], eax
mov dword [ebp - 0x678], eax
mov dword [ebp - 0x674], eax
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
mov esi, dword [ebp - 0x5b0]
mov edi, dword [ebp - 0x5ec]
push dword [ebp - 0x5e4]
lea eax, [ebp - 0x520]
push 0x104
push eax
call fcn.005ea3e6
mov eax, dword [esi + 4]
add esp, 0xc
cmp dword [ebp + 0x24], 2
mov byte [ebp - 0x5a1], 0
mov eax, dword [eax + 0x4a4]
jne 0x45d771
cmp eax, 0x10
je 0x45d746
cmp eax, 0x80
jne 0x45d771
lea eax, [esi + 0x12d0]
push eax
lea eax, [ebp - 0x520]
push 0x104
push eax
call fcn.005ea3e6
add esp, 0xc
mov byte [ebp - 0x5a1], 1
push 4
pop edi
mov dword [ebp - 0x5ec], edi
mov eax, edi
sub eax, 4
je 0x45d79a
sub eax, 0xc
je 0x45d78e
sub eax, 0x70
je 0x45d78e
mov dword [ebp - 0x660], 0x18
jmp 0x45d7a4
mov dword [ebp - 0x660], 1
jmp 0x45d7a4
mov dword [ebp - 0x660], 8
lea eax, [ebp - 0x520]
push eax
lea eax, [ebp - 0x318]
push 0x104
push eax
call fcn.005ea3e6
mov edx, dword [ebp - 0x5b0]
add esp, 0xc
mov eax, dword [ebp + 0x24]
mov dword [ebp - 0x5e8], eax
mov eax, dword [edx + 4]
imul eax, dword [eax + 0x41c], 0x5a
mov dword [ebp - 0x5b4], eax
test eax, eax
je 0x45d824
lea eax, [edx + 0x10c8]
push eax
lea eax, [ebp - 0x318]
push 0x104
push eax
call fcn.005ea3e6
add esp, 0xc
mov dword [ebp - 0x5e8], 1
cmp edi, 0x10
je 0x45d814
cmp edi, 0x80
jne 0x45d81e
mov dword [ebp - 0x660], 8
mov edx, dword [ebp - 0x5b0]
lea ecx, [ebp - 0x63c]
call fcn.00459218
push 0
lea ecx, [edx + 8]
call fcn.004687af
movss xmm2, dword [ebp - 0x5f8]
movss xmm1, dword [ebp - 0x5ac]
mov dword [ebp - 0x5a0], 5
movd xmm0, dword [eax + 0x10]
cvtdq2pd xmm0, xmm0
mulsd xmm0, qword [ebp + 0x2c]
addsd xmm0, qword [0x8c26a8]
cvttsd2si ecx, xmm0
movd xmm0, dword [eax + 0x14]
cvtdq2pd xmm0, xmm0
mulsd xmm0, qword [ebp + 0x2c]
addsd xmm0, qword [0x8c26a8]
cvttsd2si eax, xmm0
movd xmm0, ecx
cvtdq2ps xmm0, xmm0
comiss xmm2, xmm0
ja 0x45db18
movd xmm0, eax
cvtdq2ps xmm0, xmm0
comiss xmm1, xmm0
ja 0x45db18
mov eax, dword [edx + 4]
lea esi, [ebp - 0x5d0]
lea edi, [ebp - 0x630]
movsd dword es:[edi], dword [esi]
lea ecx, [ebp - 0x5ac]
movsd xmm0, qword [eax + 0x6a0]
subsd xmm0, qword [eax + 0x5e8]
movsd dword es:[edi], dword [esi]
lea eax, [edx + 0xab0]
push eax
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
movsd qword [ebp - 0x60c], xmm0
call fcn.004590bc
mov byte [ebp - 4], 5
lea ecx, [ebp - 0x5b8]
push dword [ebp - 0x5a8]
call fcn.004590bc
cmp dword [ebp + 0xc], 1
lea ecx, [ebp - 0x5ac]
push 0
push 0x32
push dword [ebp + 0x28]
sete al
mov byte [ebp - 4], 6
push dword [ebp + 0xc]
mov dl, al
mov byte [ebp - 0x599], al
push ecx
lea ecx, [ebp - 0x63c]
push ecx
lea ecx, [ebp - 0x5b8]
call fcn.0046f18f
mov ecx, dword [ebp - 0x5b8]
add esp, 0x18
neg al
sbb al, al
inc al
mov byte [ebp - 0x5b9], al
test ecx, ecx
je 0x45d94d
call fcn.004591a0
mov byte [ebp - 4], 0
mov ecx, dword [ebp - 0x5ac]
test ecx, ecx
je 0x45d960
call fcn.004591a0
cmp byte [ebp - 0x5b9], 0
jne 0x45e15d
cvttsd2si esi, qword [ebp - 0x80]
and dword [ebp - 0x5e0], 0
and dword [ebp - 0x5dc], 0
cvttsd2si edx, qword [ebp - 0x88]
mov dword [ebp - 0x5c4], esi
movss xmm1, dword [ebp - 0x5c0]
movd xmm0, esi
cvtdq2ps xmm0, xmm0
mov dword [ebp - 0x5c8], edx
subss xmm1, xmm0
movd xmm0, edx
cvtdq2ps xmm0, xmm0
mulss xmm1, dword [0x8c25e8]
cvttss2si ecx, xmm1
movss xmm1, dword [ebp - 0x5f4]
subss xmm1, xmm0
mov dword [ebp - 0x5cc], ecx
cvttss2si ecx, dword [ebp - 0x5c0]
mulss xmm1, dword [0x8c25e8]
mov dword [ebp - 0x5d4], ecx
lea ecx, [ebp - 0x5d0]
cvttss2si eax, xmm1
mov dword [ebp - 0x5d0], eax
cvttss2si eax, dword [ebp - 0x5f4]
mov dword [ebp - 0x5d8], eax
lea eax, [ebp - 0x5e0]
push eax
call fcn.0044dfd8
mov edx, dword [ebp - 0x5cc]
lea edi, [ebp - 0x670]
mov esi, dword [ebp - 0x5c4]
mov ecx, dword [ebp - 0x5d0]
add esi, edx
mov eax, dword [ebp - 0x5c8]
add eax, ecx
mov dword [ebp - 0x5d4], esi
mov dword [ebp - 0x5d8], eax
lea esi, [ebp - 0x5e0]
mov dword [ebp - 0x5e0], ecx
lea ecx, [ebp - 0x5b8]
mov dword [ebp - 0x5dc], edx
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
mov esi, dword [ebp - 0x5b0]
mov eax, dword [esi + 4]
mov al, byte [eax + 0x404]
mov byte [ebp - 0x654], al
lea eax, [ebp - 0x318]
push eax
call fcn.004590bc
lea edi, [esi + 0xab0]
mov byte [ebp - 4], 7
push edi
lea ecx, [ebp - 0x5ac]
call fcn.004590bc
push dword [ebp - 0x5f0]
mov dl, byte [ebp - 0x599]
lea ecx, [ebp - 0x5ac]
mov byte [ebp - 4], 8
mov eax, dword [esi + 0x638]
push dword [eax + 0x1e8]
lea eax, [ebp - 0x5b8]
push dword [ebp + 0x28]
push dword [ebp - 0x5e8]
push eax
lea eax, [ebp - 0x67c]
push eax
call fcn.0046f18f
mov ecx, dword [ebp - 0x5ac]
add esp, 0x18
neg al
sbb al, al
inc al
mov byte [ebp - 0x599], al
test ecx, ecx
je 0x45dae9
call fcn.004591a0
mov byte [ebp - 4], 0
mov ecx, dword [ebp - 0x5b8]
test ecx, ecx
je 0x45dafc
call fcn.004591a0
cmp byte [ebp - 0x599], 0
jne 0x45e15d
push edi
call dword [sym.imp.KERNEL32.dll_DeleteFileW]
lea edi, [esi + 8]
jmp 0x45def1
cmp edi, 0x10
je 0x45db37
mov eax, dword [edx + 4]
add eax, 0x6ad
mov dword [ebp - 0x63c], eax
mov dword [ebp - 0x638], eax
mov dword [ebp - 0x634], eax
movd xmm0, dword [ebp + 0x18]
lea esi, [ebp - 0x5e0]
mov eax, dword [ebp - 0x5d0]
lea edi, [ebp - 0x630]
cvtdq2ps xmm0, xmm0
mov dword [ebp - 0x5e0], eax
lea ecx, [ebp - 0x5ac]
mov eax, dword [ebp - 0x5fc]
mov dword [ebp - 0x5dc], eax
minss xmm0, xmm2
cvttss2si eax, xmm0
movd xmm0, dword [ebp + 0x1c]
cvtdq2ps xmm0, xmm0
mov dword [ebp - 0x5d8], eax
minss xmm0, xmm1
cvttss2si eax, xmm0
mov dword [ebp - 0x5d4], eax
mov eax, dword [edx + 4]
movsd dword es:[edi], dword [esi]
movsd xmm0, qword [eax + 0x5e8]
xorps xmm0, xmmword [0x8c2aa0]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
lea esi, [edx + 0xab0]
movsd qword [ebp - 0x60c], xmm0
push esi
call fcn.004590bc
mov byte [ebp - 4], 1
lea ecx, [ebp - 0x5a8]
push dword [ebp - 0x5a8]
call fcn.004590bc
cmp dword [ebp + 0xc], 1
lea eax, [ebp - 0x5ac]
push 0
push 0x32
push dword [ebp + 0x28]
sete dl
mov byte [ebp - 4], 2
push 1
push eax
lea eax, [ebp - 0x63c]
push eax
lea ecx, [ebp - 0x5a8]
call fcn.0046f18f
mov ecx, dword [ebp - 0x5a8]
add esp, 0x18
neg al
sbb al, al
inc al
mov byte [ebp - 0x599], al
test ecx, ecx
je 0x45dc17
call fcn.004591a0
mov byte [ebp - 4], 0
mov ecx, dword [ebp - 0x5ac]
test ecx, ecx
je 0x45dc2a
call fcn.004591a0
cmp byte [ebp - 0x599], 0
jne 0x45e15d
push esi
lea ecx, [ebp - 0x5a8]
call fcn.004590bc
push 1
push 0xa
lea eax, [ebp - 0x5a8]
mov byte [ebp - 4], 3
mov ecx, dword [ebp - 0x5b8]
push eax
call fcn.00468a3c
neg al
mov byte [ebp - 4], 0
mov ecx, dword [ebp - 0x5a8]
sbb al, al
inc al
mov byte [ebp - 0x599], al
test ecx, ecx
je 0x45dc82
call fcn.004591a0
mov al, byte [ebp - 0x599]
test al, al
je 0x45dcb0
mov ecx, dword [ebp - 0x5b0]
mov eax, dword [ecx + 0x638]
mov ecx, dword [ecx + 4]
mov eax, dword [eax + 0x2bc]
mov dword [ecx + 0xa30], eax
mov dword [ebp - 0x5a0], 5
jmp 0x45e167
cvttss2si ecx, dword [ebp - 0x5c0]
and dword [ebp - 0x5e0], 0
sub esp, 0x10
and dword [ebp - 0x5dc], 0
mov edi, esp
lea esi, [ebp - 0x5e0]
push 6
push 0xa
cvttss2si eax, dword [ebp - 0x5f4]
mov dword [ebp - 0x5d4], ecx
mov dword [ebp - 0x5d8], eax
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
mov edi, dword [ebp - 0x5b8]
mov ecx, edi
call fcn.00469821
test al, al
je 0x45dca1
mov esi, dword [ebp - 0x5b0]
mov eax, dword [esi + 4]
movsd xmm0, qword [eax + 0x6a0]
ucomisd xmm0, qword [0x8c25c0]
lahf
test ah, 0x44
jnp 0x45dd34
push 0xff
movaps xmm2, xmm0
mov ecx, edi
call fcn.0046ca43
test al, al
je 0x45dca1
mov eax, dword [esi + 4]
mov ecx, edi
push 0xff
movsd xmm0, qword [eax + 0x560]
xorps xmm0, xmmword [0x8c2aa0]
movaps xmm2, xmm0
call fcn.0046ca43
test al, al
jne 0x45dd67
mov eax, dword [esi + 0x638]
mov ecx, dword [esi + 4]
jmp 0x45dc95
cvttsd2si esi, qword [ebp - 0x88]
sub esp, 0x10
mov edi, esp
push 8
push 6
cvttsd2si edx, qword [ebp - 0x80]
mov dword [ebp - 0x5d8], esi
movss xmm2, dword [ebp - 0x5f4]
movd xmm0, esi
lea esi, [ebp - 0x5e0]
cvtdq2ps xmm0, xmm0
mov dword [ebp - 0x5d4], edx
subss xmm2, xmm0
movd xmm0, edx
cvtdq2ps xmm0, xmm0
mulss xmm2, dword [0x8c25e8]
cvttss2si ecx, xmm2
movss xmm2, dword [ebp - 0x5c0]
subss xmm2, xmm0
mov dword [ebp - 0x5e0], ecx
mulss xmm2, dword [0x8c25e8]
cvttss2si eax, xmm2
mov dword [ebp - 0x5dc], eax
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
mov edi, dword [ebp - 0x5b8]
mov ecx, edi
call fcn.004698dc
test al, al
je 0x45dca1
cmp dword [ebp - 0x5ec], 1
je 0x45de77
push 6
push 8
mov ecx, edi
call fcn.00469592
test al, al
je 0x45dca1
mov esi, dword [ebp - 0x5b0]
mov eax, dword [esi + 0x638]
mov eax, dword [eax + 0x274]
sub eax, 4
je 0x45de6e
sub eax, 0xc
je 0x45de52
sub eax, 0x70
jne 0x45de3e
mov ecx, edi
call fcn.0046d543
test al, al
je 0x45e15d
push 8
push 6
mov ecx, edi
call fcn.00469592
test al, al
jne 0x45de7d
jmp 0x45dca1
cmp dword [ebp - 0x5e8], 2
mov ecx, edi
setne al
movzx eax, al
push eax
xor eax, eax
push eax
push eax
push eax
call fcn.0046d16f
jmp 0x45de36
mov ecx, edi
call fcn.0046dcfe
jmp 0x45de36
mov esi, dword [ebp - 0x5b0]
lea eax, [ebp - 0x318]
push eax
lea ecx, [ebp - 0x5a8]
call fcn.004590bc
push dword [ebp - 0x5f0]
mov ecx, edi
mov byte [ebp - 4], 4
push dword [ebp - 0x5e8]
push 8
call fcn.004687af
push eax
lea eax, [ebp - 0x5a8]
mov ecx, edi
push eax
call fcn.00469b1b
neg al
mov byte [ebp - 4], 0
mov ecx, dword [ebp - 0x5a8]
sbb al, al
inc al
mov byte [ebp - 0x599], al
test ecx, ecx
je 0x45dedc
call fcn.004591a0
mov al, byte [ebp - 0x599]
test al, al
jne 0x45dca1
lea eax, [esi + 0xab0]
push eax
call dword [sym.imp.KERNEL32.dll_DeleteFileW]
cmp dword [ebp - 0x5b4], 0
je 0x45e073
lea eax, [ebp - 0x318]
push eax
lea ecx, [ebp - 0x5a8]
call fcn.004590bc
push 1
push 6
lea eax, [ebp - 0x5a8]
mov byte [ebp - 4], 9
push eax
mov ecx, edi
call fcn.00468a3c
mov byte [ebp - 4], 0
mov ecx, dword [ebp - 0x5a8]
test ecx, ecx
je 0x45df39
call fcn.004591a0
push 6
mov ecx, edi
call fcn.00468880
test al, al
je 0x45df60
mov eax, dword [esi + 0x638]
mov ecx, dword [esi + 4]
mov eax, dword [eax + 0x2bc]
mov dword [ecx + 0xa30], eax
jmp 0x45e167
mov eax, dword [esi + 4]
mov ecx, dword [ebp - 0x5b4]
mov dword [eax + 0x9ec], ecx
mov ecx, edi
call fcn.0046bf65
test al, al
jne 0x45df9d
mov eax, dword [esi + 0x638]
mov ecx, dword [esi + 4]
push 5
mov eax, dword [eax + 0x2bc]
mov dword [ecx + 0xa30], eax
pop eax
mov dword [ebp - 0x5a0], eax
jmp 0x45e167
mov eax, dword [ebp - 0x5ec]
cmp eax, 0x10
jne 0x45e046
push 1
xor eax, eax
mov ecx, edi
push eax
push eax
push eax
call fcn.0046d16f
test al, al
je 0x45e15d
lea eax, [ebp - 0x520]
push eax
lea ecx, [ebp - 0x5b4]
call fcn.004590bc
push dword [ebp - 0x5f0]
mov ecx, edi
mov byte [ebp - 4], 0xa
push dword [ebp + 0x24]
push 6
call fcn.004687af
push eax
lea eax, [ebp - 0x5b4]
mov ecx, edi
push eax
call fcn.00469b1b
neg al
mov byte [ebp - 4], 0
mov ecx, dword [ebp - 0x5b4]
sbb al, al
inc al
mov byte [ebp - 0x599], al
test ecx, ecx
je 0x45e01e
call fcn.004591a0
mov al, byte [ebp - 0x599]
test al, al
je 0x45e05d
mov eax, dword [esi + 0x638]
mov ecx, dword [esi + 4]
mov dword [ebp - 0x5a0], 8
mov eax, dword [eax + 0x2bc]
mov dword [ecx + 0xa30], eax
jmp 0x45e167
cmp eax, 0x80
jne 0x45dfc2
mov ecx, edi
call fcn.0046d543
jmp 0x45dfba
push 6
mov ecx, edi
call fcn.00468822
lea eax, [esi + 0x10c8]
push eax
call dword [sym.imp.KERNEL32.dll_DeleteFileW]
cmp byte [ebp - 0x5a1], 0
je 0x45e187
lea ecx, [ebp - 0x63c]
call fcn.00459218
mov dword [ebp - 0x620], 8
xor ecx, ecx
cmp ecx, 0x80
setle al
dec al
mov byte [ebp + ecx - 0x110], al
inc ecx
cmp ecx, 0xff
jle 0x45e097
push dword [ebp - 0x5e4]
lea eax, [ebp - 0x110]
lea ecx, [ebp - 0x5b4]
mov dword [ebp - 0x63c], eax
mov dword [ebp - 0x638], eax
mov dword [ebp - 0x634], eax
call fcn.004590bc
lea eax, [ebp - 0x520]
mov byte [ebp - 4], 0xb
push eax
lea ecx, [ebp - 0x5e4]
call fcn.004590bc
mov byte [ebp - 4], 0xc
lea ecx, [ebp - 0x5e4]
mov eax, dword [esi + 0x638]
xor dl, dl
push 0
push dword [eax + 0x1e8]
lea eax, [ebp - 0x5b4]
push dword [ebp + 0x28]
push 2
push eax
lea eax, [ebp - 0x63c]
push eax
call fcn.0046f18f
mov ecx, dword [ebp - 0x5e4]
add esp, 0x18
neg al
sbb al, al
inc al
mov byte [ebp - 0x599], al
test ecx, ecx
je 0x45e141
call fcn.004591a0
mov byte [ebp - 4], 0
mov ecx, dword [ebp - 0x5b4]
test ecx, ecx
je 0x45e154
call fcn.004591a0
cmp byte [ebp - 0x599], 0
je 0x45e17a
mov dword [ebp - 0x5a0], 0x64
lea ecx, [ebp - 0x598]
call fcn.004204d2
mov eax, dword [ebp - 0x5a0]
jmp 0x45e1ed
lea eax, [esi + 0x12d0]
push eax
call dword [sym.imp.KERNEL32.dll_DeleteFileW]
mov eax, dword [esi + 0x638]
mov ecx, dword [esi + 4]
push 0
push 9
mov eax, dword [eax + 0x2bc]
mov dword [ecx + 0xa30], eax
mov ecx, edi
call fcn.00469592
push 9
mov ecx, edi
call fcn.00468822
mov eax, dword [esi + 0x638]
xor ecx, ecx
cmp dword [eax + 0x234], ecx
jne 0x45e1df
cmp dword [eax + 0x25c], ecx
jne 0x45e1df
cmp dword [eax + 0x230], ecx
jne 0x45e1df
lea ecx, [ebp - 0x598]
call fcn.004204d2
xor eax, eax
jmp 0x45e1ed
lea ecx, [ebp - 0x598]
call fcn.004204d2
push 0xa
pop eax
call fcn.005bea19
ret 0x2c