Function at 0x412990
Capabilities:
Delete file

Disassembly:
push ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x4e3828
mov eax, dword fs:[0]
push eax
sub esp, 0x1a0
mov eax, dword [0x530400]
xor eax, ebp
mov dword [ebp - 0x10], eax
push esi
push eax
lea eax, [ebp - 0xc]
mov dword fs:[0], eax
mov esi, ecx
lea ecx, [ebp - 0x191]
call fcn.00408220
push 8
push dword [esi + 0x508]
lea ecx, [esi + 0x2c]
call dword [0x50b054]
cmp dword [esi + 0x514], 0
je 0x412d9d
cmp dword [esi + 0x518], 0
je 0x412d9d
cmp dword [esi + 0x51c], 0
je 0x412d9d
push 0x4e8be0
lea ecx, [ebp - 0x18c]
call fcn.00402220
push 0x4e8bfc
lea ecx, [ebp - 0x15c]
mov dword [ebp - 4], 0
call fcn.00402220
cmp dword [esi + 0x550], 0xf
lea eax, [esi + 0x53c]
mov byte [ebp - 4], 1
jbe 0x412a3d
mov eax, dword [eax]
push eax
lea eax, [ebp - 0x174]
push eax
call fcn.00401c90
add esp, 8
cmp dword [eax + 0x14], 7
mov ecx, eax
mov byte [ebp - 4], 2
jbe 0x412a5b
mov ecx, dword [eax]
push dword [eax + 0x10]
push ecx
lea ecx, [ebp - 0x15c]
call fcn.0040d1b0
lea ecx, [ebp - 0x174]
mov byte [ebp - 4], 1
call fcn.00403110
push 0x104
lea eax, [ebp - 0x114]
push 0
push eax
call fcn.004bda10
movss xmm0, dword [esi + 0x584]
lea eax, [ebp - 0x114]
cvtps2pd xmm0, xmm0
add esp, 4
movsd qword [esp], xmm0
push str._.2f
push eax
call fcn.00403c30
lea eax, [ebp - 0x114]
push eax
lea eax, [ebp - 0x144]
push eax
call fcn.00401c90
add esp, 0x18
push 1
push 0x4e8c10
lea ecx, [ebp - 0x144]
mov byte [ebp - 4], 3
call fcn.0040d1b0
mov ecx, dword [esi + 0x514]
lea edx, [ebp - 0x18c]
cmp dword [ebp - 0x178], 7
cmova edx, dword [ebp - 0x18c]
mov eax, dword [ecx]
push edx
call dword [eax + 0x3c]
mov ecx, dword [esi + 0x518]
lea edx, [ebp - 0x15c]
cmp dword [ebp - 0x148], 7
cmova edx, dword [ebp - 0x15c]
mov eax, dword [ecx]
push edx
call dword [eax + 0x3c]
mov ecx, dword [esi + 0x51c]
lea edx, [ebp - 0x144]
cmp dword [ebp - 0x130], 7
cmova edx, dword [ebp - 0x144]
mov eax, dword [ecx]
push edx
call dword [eax + 0x3c]
mov eax, dword [esi + 0x4c0]
cmp eax, 1
je 0x412b50
cmp eax, 2
jne 0x412c9e
lea eax, [ebp - 0x12c]
push eax
call fcn.0040ce80
mov ecx, eax
call fcn.0040ef30
push 0xa
push str.qrcode.bmp
lea ecx, [ebp - 0x12c]
mov byte [ebp - 4], 4
call fcn.004024e0
cmp dword [ebp - 0x118], 0xf
lea eax, [ebp - 0x12c]
cmova eax, dword [ebp - 0x12c]
push eax
call dword [sym.imp.KERNEL32.dll_DeleteFileA]
test eax, eax
jne 0x412c12
lea eax, [ebp - 0x174]
push eax
call fcn.0040ce80
mov ecx, eax
call fcn.0040ef30
push 0xf
push 0
lea eax, [ebp - 0x1ac]
mov byte [ebp - 4], 5
push eax
lea ecx, [ebp - 0x191]
call fcn.00408630
cmp dword [eax + 0x14], 0xf
mov ecx, eax
mov byte [ebp - 4], 6
jbe 0x412bd3
mov ecx, dword [eax]
push dword [eax + 0x10]
push ecx
lea ecx, [ebp - 0x174]
call fcn.004024e0
lea ecx, [ebp - 0x1ac]
mov byte [ebp - 4], 5
call fcn.00403170
push 4
push str..bmp
lea ecx, [ebp - 0x174]
call fcn.004024e0
lea ecx, [ebp - 0x174]
mov byte [ebp - 4], 4
call fcn.00403170
cmp dword [ebp - 0x118], 0xf
lea ecx, [ebp - 0x12c]
lea eax, [esi + 0x56c]
cmova ecx, dword [ebp - 0x12c]
cmp dword [eax + 0x14], 0xf
jbe 0x412c34
mov eax, dword [eax]
push 0xf0
push ecx
push eax
call fcn.004b7620
add esp, 0xc
test eax, eax
jne 0x412c8f
cmp dword [ebp - 0x118], 0xf
lea eax, [ebp - 0x12c]
cmova eax, dword [ebp - 0x12c]
push eax
lea eax, [ebp - 0x1ac]
push eax
call fcn.00401c90
add esp, 8
cmp dword [eax + 0x14], 7
mov byte [ebp - 4], 7
jbe 0x412c77
mov eax, dword [eax]
mov ecx, dword [esi + 0x508]
push eax
call dword [0x50b06c]
lea ecx, [ebp - 0x1ac]
call fcn.00403110
lea ecx, [ebp - 0x12c]
mov byte [ebp - 4], 3
call fcn.00403170
cmp dword [esi + 0x4c0], 0
jne 0x412d66
movups xmm0, xmmword [0x4ea92c]
mov ecx, dword [esi + 0x50c]
lea eax, [ebp - 0x190]
push eax
sub esp, 0x10
mov dword [ebp - 0x190], 0
mov eax, esp
movups xmmword [eax], xmm0
call dword [0x50b0f0]
cmp dword [ebp - 0x190], 0
je 0x412d66
cmp dword [esi + 0x580], 0xf
lea eax, [esi + 0x56c]
jbe 0x412cf5
mov eax, dword [eax]
push eax
lea eax, [ebp - 0x12c]
push eax
call fcn.00401c90
add esp, 8
mov eax, dword [ebp - 0x190]
push 0
push 0
push 0
mov ecx, dword [eax]
push 0
push str.about:blank
push eax
mov byte [ebp - 4], 8
call dword [ecx + 0x2c]
mov eax, dword [ebp - 0x190]
lea edx, [ebp - 0x12c]
cmp dword [ebp - 0x118], 7
push 0
cmova edx, dword [ebp - 0x12c]
mov ecx, dword [eax]
push 0
push 0
push 0
push edx
push eax
call dword [ecx + 0x2c]
mov eax, dword [ebp - 0x190]
push eax
mov ecx, dword [eax]
call dword [ecx + 8]
lea ecx, [ebp - 0x12c]
mov byte [ebp - 4], 3
call fcn.00403110
push 0x3e8
push 4
push dword [esi + 0x508]
lea ecx, [esi + 0x2c]
call dword [0x50b050]
lea ecx, [ebp - 0x144]
call fcn.00403110
lea ecx, [ebp - 0x15c]
call fcn.00403110
lea ecx, [ebp - 0x18c]
call fcn.00403110
mov byte [esi + 0x58c], 1
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop ecx
pop esi
mov ecx, dword [ebp - 0x10]
xor ecx, ebp
call fcn.004bbaec
mov esp, ebp
pop ebp
ret