Function at 0x43a7b0
Capabilities:
Check if file exists
Delete file
Get file attributes

Disassembly:
push ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x4c970e
mov eax, dword fs:[0]
push eax
sub esp, 0x794
mov eax, dword [0x4fad60]
xor eax, ebp
mov dword [ebp - 0x10], eax
push ebx
push esi
push edi
push eax
lea eax, [ebp - 0xc]
mov dword fs:[0], eax
mov eax, dword [ebp + 8]
xor edi, edi
xor ecx, ecx
mov dword [ebp - 0x790], eax
mov eax, dword [ebp + 0xc]
mov word [ebp - 0x6d0], cx
mov ecx, eax
mov dword [ebp - 0x794], eax
mov dword [ebp - 0x77c], 1
mov dword [ebp - 0x6bc], 7
mov dword [ebp - 0x6c0], edi
lea esi, [ecx + 2]
lea ebx, [ebx]
mov dx, word [ecx]
add ecx, 2
cmp dx, di
jne 0x43a820
sub ecx, esi
sar ecx, 1
push ecx
lea esi, [ebp - 0x6d0]
call fcn.00403e70
push 4
mov eax, str..tmp
mov ecx, esi
mov dword [ebp - 4], edi
call fcn.00407570
mov eax, dword [ebp - 0x6d0]
mov esi, 8
cmp dword [ebp - 0x6bc], esi
jae 0x43a865
lea eax, [ebp - 0x6d0]
push edi
push 0x80
push 2
push edi
push edi
push 0x40000000
push eax
call dword [sym.imp.KERNEL32.dll_CreateFileW]
mov ebx, eax
cmp ebx, 0xffffffff
jne 0x43a8a0
cmp dword [ebp - 0x6bc], esi
jb 0x43a899
mov edx, dword [ebp - 0x6d0]
push edx
call fcn.00490a16
add esp, 4
xor al, al
jmp 0x43b3c3
lea edi, [ebp - 0x6b4]
call fcn.004138b0
mov ecx, eax
mov byte [ebp - 4], 1
mov eax, dword [ecx + 0x10]
push str.681E_B0L3_UC27_I7QZ_H6PP
mov edi, 0x18
call fcn.00408eb0
test eax, eax
sete byte [ebp - 0x77d]
mov byte [ebp - 4], 0
cmp dword [ebp - 0x6a0], esi
jb 0x43a8e7
mov eax, dword [ebp - 0x6b4]
push eax
call fcn.00490a16
add esp, 4
cmp byte [ebp - 0x77d], 0
je 0x43a8fa
mov dword [ebp - 0x77c], 2
mov ecx, dword [ebp - 0x77c]
push ecx
push str._encry_mode__t_t_t_d
lea edx, [ebp - 0x218]
push 0x201
push edx
call fcn.00493d3a
add esp, 0x10
push 0
push eax
lea eax, [ebp - 0x218]
push eax
call fcn.00437230
lea edi, [ebp - 0x6b4]
call fcn.004138b0
mov ecx, eax
mov byte [ebp - 4], 2
mov eax, dword [ecx + 0x10]
push str.681E_B0L3_UC27_I7QZ_H6PP
mov edi, 0x18
call fcn.00408eb0
test eax, eax
sete byte [ebp - 0x77d]
mov byte [ebp - 4], 0
cmp dword [ebp - 0x6a0], 8
jb 0x43a971
mov ecx, dword [ebp - 0x6b4]
push ecx
call fcn.00490a16
add esp, 4
cmp byte [ebp - 0x77d], 0
je 0x43a984
mov dword [ebp - 0x77c], 1
mov edi, dword [ebp - 0x790]
mov ecx, dword [edi + 0x90]
sub ecx, dword [edi + 0x8c]
mov eax, 0x78787879
imul ecx
sar edx, 6
mov esi, edx
shr esi, 0x1f
add esi, edx
mov edx, dword [edi + 0x1d8]
push edx
push str._bind_num__t_t_t_d
lea eax, [ebp - 0x218]
push 0x201
push eax
call fcn.00493d3a
mov ecx, dword [ebp - 0x77c]
add esp, 0x10
push ecx
push eax
lea edx, [ebp - 0x218]
push edx
call fcn.00437230
push esi
push str._hardware_count__t_t_t_d
lea eax, [ebp - 0x218]
push 0x201
push eax
call fcn.00493d3a
mov ecx, dword [ebp - 0x77c]
add esp, 0x10
push ecx
push eax
lea edx, [ebp - 0x218]
push edx
call fcn.00437230
test esi, esi
jle 0x43ab46
mov dword [ebp - 0x78c], 0
mov dword [ebp - 0x790], esi
mov eax, dword [edi + 0x8c]
mov esi, dword [ebp - 0x78c]
mov eax, dword [eax + esi]
push eax
push str._hardware_type__t_t_t_d
lea ecx, [ebp - 0x218]
push 0x201
push ecx
call fcn.00493d3a
mov edx, dword [ebp - 0x77c]
add esp, 0x10
push edx
push eax
lea eax, [ebp - 0x218]
push eax
call fcn.00437230
xor ecx, ecx
mov dword [ebp - 0x6a0], 0xf
mov dword [ebp - 0x6a4], ecx
mov byte [ebp - 0x6b4], cl
mov byte [ebp - 4], 3
mov eax, dword [edi + 0x8c]
lea edx, [ebp - 0x6b4]
add eax, esi
push edx
add eax, 4
sub esp, 0x1c
mov esi, esp
mov dword [esi + 0x10], ecx
mov dword [esi + 0x14], 7
mov word [esi], cx
mov ecx, eax
lea edx, [ecx + 2]
mov dword [ebp - 0x784], esp
mov dword [ebp - 0x788], edx
nop
mov dx, word [ecx]
add ecx, 2
test dx, dx
jne 0x43aab0
sub ecx, dword [ebp - 0x788]
sar ecx, 1
push ecx
call fcn.00403e70
call fcn.0044c3f0
mov eax, dword [ebp - 0x6b4]
add esp, 0x20
cmp dword [ebp - 0x6a0], 0x10
jae 0x43aae6
lea eax, [ebp - 0x6b4]
push eax
push str._hardware_No__t_t_t_s
lea eax, [ebp - 0x218]
push 0x201
push eax
call fcn.00493d3a
mov ecx, dword [ebp - 0x77c]
add esp, 0x10
push ecx
push eax
lea edx, [ebp - 0x218]
push edx
call fcn.00437230
mov byte [ebp - 4], 0
cmp dword [ebp - 0x6a0], 0x10
jb 0x43ab30
mov eax, dword [ebp - 0x6b4]
push eax
call fcn.00490a16
add esp, 4
add dword [ebp - 0x78c], 0x88
dec dword [ebp - 0x790]
jne 0x43aa21
mov ecx, dword [edi + 0xa0]
sub ecx, dword [edi + 0x9c]
mov eax, 0x551c979b
imul ecx
sar edx, 0xa
mov esi, edx
shr esi, 0x1f
add esi, edx
push esi
push str._key_count__t_t_t_d
lea ecx, [ebp - 0x218]
push 0x201
push ecx
mov dword [ebp - 0x790], esi
call fcn.00493d3a
mov edx, dword [ebp - 0x77c]
add esp, 0x10
push edx
push eax
lea eax, [ebp - 0x218]
push eax
call fcn.00437230
test esi, esi
jle 0x43ac41
mov ecx, esi
mov dword [ebp - 0x788], 0
mov dword [ebp - 0x78c], ecx
mov edx, dword [edi + 0x9c]
mov eax, dword [ebp - 0x788]
mov ecx, dword [eax + edx + 0x404]
mov edx, dword [eax + edx]
push ecx
push edx
push str._unit_key__t_t_t_d_t_t_t_d_t_t_t
lea eax, [ebp - 0x218]
push 0x201
push eax
call fcn.00493d3a
mov esi, eax
mov eax, dword [edi + 0x9c]
add eax, dword [ebp - 0x788]
add esp, 0x14
mov edx, dword [eax + 0x404]
xor ecx, ecx
mov dword [ebp - 0x784], edx
test edx, edx
jle 0x43ac17
mov dl, byte [ecx + eax + 4]
mov byte [ebp + esi - 0x218], dl
inc ecx
inc esi
cmp ecx, dword [ebp - 0x784]
jl 0x43ac02
mov eax, dword [ebp - 0x77c]
push eax
push esi
lea ecx, [ebp - 0x218]
push ecx
call fcn.00437230
add dword [ebp - 0x788], 0xc08
dec dword [ebp - 0x78c]
jne 0x43abb1
lea edx, [ebp - 0x7a0]
push edx
call fcn.00492c3f
lea eax, [ebp - 0x7a0]
add esp, 4
push eax
call fcn.00492ae7
add esp, 4
push eax
push str._Y__m__d__H:_M:_S
lea ecx, [ebp - 0x298]
push 0x80
push ecx
call fcn.004957b9
lea edx, [ebp - 0x298]
push edx
push str._file_create_time__t_t_t_s
lea eax, [ebp - 0x218]
push 0x201
push eax
call fcn.00493d3a
mov esi, dword [ebp - 0x77c]
add esp, 0x20
push esi
push eax
lea ecx, [ebp - 0x218]
push ecx
call fcn.00437230
mov edx, dword [edi + 0xe0]
push edx
push str._main_key_id__t_t_t_d
lea eax, [ebp - 0x218]
push 0x201
push eax
call fcn.00493d3a
add esp, 0x10
push esi
push eax
lea ecx, [ebp - 0x218]
push ecx
call fcn.00437230
xor ecx, ecx
mov dword [ebp - 0x6f4], 0xf
mov dword [ebp - 0x6f8], ecx
mov byte [ebp - 0x708], cl
mov byte [ebp - 4], 4
lea eax, [edi + 0x174]
xor edx, edx
mov dword [ebp - 0x714], ecx
mov ecx, eax
mov word [ebp - 0x724], dx
mov dword [ebp - 0x710], 7
lea edx, [ecx + 2]
jmp 0x43ad20
mov si, word [ecx]
add ecx, 2
test si, si
jne 0x43ad20
sub ecx, edx
sar ecx, 1
push ecx
lea esi, [ebp - 0x724]
call fcn.00403e70
lea eax, [ebp - 0x708]
push eax
sub esp, 0x1c
mov ecx, esp
xor edx, edx
mov dword [ebp - 0x784], esp
mov byte [ebp - 4], 5
push edx
mov eax, esi
push eax
mov dword [ecx + 0x14], 7
mov dword [ecx + 0x10], 0
or eax, 0xffffffff
mov word [ecx], dx
call fcn.00404570
call fcn.0044c3f0
mov eax, dword [ebp - 0x708]
add esp, 0x20
cmp dword [ebp - 0x6f4], 0x10
jae 0x43ad8d
lea eax, [ebp - 0x708]
push eax
push str._start_time__t_t_t_s
lea ecx, [ebp - 0x218]
push 0x201
push ecx
call fcn.00493d3a
mov edx, dword [ebp - 0x77c]
add esp, 0x10
push edx
push eax
lea eax, [ebp - 0x218]
push eax
call fcn.00437230
xor ecx, ecx
mov dword [ebp - 0x6d8], 0xf
mov dword [ebp - 0x6dc], ecx
mov byte [ebp - 0x6ec], cl
mov byte [ebp - 4], 6
lea eax, [edi + 0x1a6]
mov dword [ebp - 0x730], ecx
mov word [ebp - 0x740], cx
mov ecx, eax
mov dword [ebp - 0x72c], 7
lea edx, [ecx + 2]
lea esp, [esp]
mov si, word [ecx]
add ecx, 2
test si, si
jne 0x43ae00
sub ecx, edx
sar ecx, 1
push ecx
lea esi, [ebp - 0x740]
call fcn.00403e70
lea edx, [ebp - 0x6ec]
push edx
sub esp, 0x1c
mov ecx, esp
xor eax, eax
mov byte [ebp - 4], 7
mov dword [ebp - 0x784], esp
push eax
mov dword [ecx + 0x14], 7
mov dword [ecx + 0x10], 0
mov edx, esi
mov word [ecx], ax
push edx
or eax, 0xffffffff
call fcn.00404570
call fcn.0044c3f0
mov eax, dword [ebp - 0x6ec]
add esp, 0x20
cmp dword [ebp - 0x6d8], 0x10
jae 0x43ae6d
lea eax, [ebp - 0x6ec]
push eax
push str._end_time__t_t_t_s
lea eax, [ebp - 0x218]
push 0x201
push eax
call fcn.00493d3a
mov ecx, dword [ebp - 0x77c]
add esp, 0x10
push ecx
push eax
lea edx, [ebp - 0x218]
push edx
call fcn.00437230
mov esi, dword [ebp - 0x790]
push esi
push str._keydesc_count__t_t_t_d
lea eax, [ebp - 0x218]
push 0x201
push eax
call fcn.00493d3a
mov ecx, dword [ebp - 0x77c]
add esp, 0x10
push ecx
push eax
lea edx, [ebp - 0x218]
push edx
call fcn.00437230
test esi, esi
jle 0x43affb
mov eax, esi
mov dword [ebp - 0x78c], 0
mov dword [ebp - 0x790], eax
mov ecx, dword [edi + 0x9c]
add ecx, dword [ebp - 0x78c]
lea eax, [ecx + 0x408]
lea edx, [eax + 2]
mov edi, edi
mov si, word [eax]
add eax, 2
test si, si
jne 0x43af00
sub eax, edx
sar eax, 1
lea esi, [eax + eax]
mov eax, dword [ecx]
push esi
push eax
push str._unit_keydesc__t_t_t_d_t_t_t_d_t_t_t
lea ecx, [ebp - 0x218]
push 0x201
push ecx
call fcn.00493d3a
add esp, 0x14
push 0x3ff
lea edx, [ebp - 0x697]
push 0
push edx
mov dword [ebp - 0x788], eax
mov byte [ebp - 0x698], 0
call fcn.00497ad0
mov eax, dword [edi + 0x9c]
mov ecx, dword [ebp - 0x78c]
add esp, 0xc
push 0
push 0
push 0
push 0
push 0xffffffffffffffff
lea eax, [eax + ecx + 0x408]
push eax
push 0
push 0
mov dword [ebp - 0x784], eax
call dword [sym.imp.KERNEL32.dll_WideCharToMultiByte]
test eax, eax
je 0x43afa3
push 0
push 0
push eax
mov eax, dword [ebp - 0x784]
lea edx, [ebp - 0x698]
push edx
push 0xffffffffffffffff
push eax
push 0
push 0
call dword [sym.imp.KERNEL32.dll_WideCharToMultiByte]
test esi, esi
jle 0x43afcb
mov eax, dword [ebp - 0x788]
push esi
lea ecx, [ebp - 0x698]
lea eax, [ebp + eax - 0x218]
push ecx
push eax
call fcn.00498770
add esp, 0xc
add dword [ebp - 0x788], esi
mov edx, dword [ebp - 0x77c]
mov eax, dword [ebp - 0x788]
push edx
push eax
lea ecx, [ebp - 0x218]
push ecx
call fcn.00437230
add dword [ebp - 0x78c], 0xc08
dec dword [ebp - 0x790]
jne 0x43aee9
sub esp, 0x1c
mov esi, esp
lea eax, [edi + 0xe4]
xor edx, edx
mov dword [esi + 0x14], 7
mov dword [esi + 0x10], 0
mov ecx, eax
mov word [esi], dx
lea edx, [ecx + 2]
mov dword [ebp - 0x784], esp
mov dword [ebp - 0x784], edx
lea ebx, [ebx]
mov dx, word [ecx]
add ecx, 2
test dx, dx
jne 0x43b030
sub ecx, dword [ebp - 0x784]
sar ecx, 1
push ecx
call fcn.00403e70
lea esi, [ebp - 0x75c]
call fcn.0044c650
add esp, 0x1c
mov byte [ebp - 4], 8
cmp dword [ebp - 0x748], 0x10
mov eax, dword [ebp - 0x75c]
jae 0x43b06c
mov eax, esi
push eax
push str._producr_key__t_t_t_s
lea eax, [ebp - 0x218]
push 0x201
push eax
call fcn.00493d3a
mov esi, dword [ebp - 0x77c]
add esp, 0x10
push esi
push eax
lea ecx, [ebp - 0x218]
push ecx
call fcn.00437230
mov eax, dword [edi + 0x148]
push eax
push str._version_type__t_t_t_d
lea edx, [ebp - 0x218]
push 0x201
push edx
call fcn.00493d3a
add esp, 0x10
push esi
push eax
lea eax, [ebp - 0x218]
push eax
call fcn.00437230
sub esp, 0x1c
mov esi, esp
xor ecx, ecx
lea eax, [edi + 0x14c]
mov dword [esi + 0x14], 7
mov dword [esi + 0x10], 0
mov word [esi], cx
mov ecx, eax
lea edx, [ecx + 2]
mov dword [ebp - 0x784], esp
mov dword [ebp - 0x784], edx
mov dx, word [ecx]
add ecx, 2
test dx, dx
jne 0x43b0f7
sub ecx, dword [ebp - 0x784]
sar ecx, 1
push ecx
call fcn.00403e70
lea esi, [ebp - 0x778]
call fcn.0044c650
add esp, 0x1c
mov byte [ebp - 4], 9
cmp dword [ebp - 0x764], 0x10
mov eax, dword [ebp - 0x778]
jae 0x43b133
mov eax, esi
push eax
push str._verification_code__t_t_t_s
lea eax, [ebp - 0x218]
push 0x201
push eax
call fcn.00493d3a
mov esi, dword [ebp - 0x77c]
add esp, 0x10
push esi
push eax
lea ecx, [ebp - 0x218]
push ecx
call fcn.00437230
mov edx, dword [edi]
push edx
push str._ver_num__t_t_t_d
lea eax, [ebp - 0x218]
push 0x201
push eax
call fcn.00493d3a
add esp, 0x10
push esi
push eax
lea ecx, [ebp - 0x218]
push ecx
call fcn.00437230
mov edx, dword [edi + 0x1e4]
push edx
push str._text_copy__t_t_t_d
lea eax, [ebp - 0x218]
push 0x201
push eax
call fcn.00493d3a
add esp, 0x10
push esi
push eax
lea ecx, [ebp - 0x218]
push ecx
call fcn.00437230
mov edx, dword [edi + 0x1e8]
push edx
push str._print_control__t_t_t_d
lea eax, [ebp - 0x218]
push 0x201
push eax
call fcn.00493d3a
add esp, 0x10
push esi
push eax
lea ecx, [ebp - 0x218]
push ecx
call fcn.00437230
mov edx, dword [edi + 0x1ec]
push edx
push str._author_superposition__t_t_t_d
lea eax, [ebp - 0x218]
push 0x201
push eax
call fcn.00493d3a
add esp, 0x10
push esi
push eax
lea ecx, [ebp - 0x218]
push ecx
call fcn.00437230
mov edx, dword [edi + 0x1f0]
push edx
push str._long_time__t_t_t_d
lea eax, [ebp - 0x218]
push 0x201
push eax
call fcn.00493d3a
add esp, 0x10
push esi
push eax
lea ecx, [ebp - 0x218]
push ecx
call fcn.00437230
push ebx
call dword [sym.imp.KERNEL32.dll_FlushFileBuffers]
push ebx
call dword [sym.imp.KERNEL32.dll_CloseHandle]
mov esi, dword [ebp - 0x794]
push esi
call dword [sym.imp.KERNEL32.dll_DeleteFileW]
test eax, eax
jne 0x43b278
push esi
call dword [sym.imp.KERNEL32.dll_GetFileAttributesW]
cmp eax, 0xffffffff
je 0x43b278
shr eax, 4
not eax
and eax, 1
jne 0x43b297
cmp dword [ebp - 0x6bc], 8
mov eax, dword [ebp - 0x6d0]
jae 0x43b28d
lea eax, [ebp - 0x6d0]
push esi
push eax
call fcn.00495d7e
add esp, 8
mov edi, 0x10
cmp dword [ebp - 0x764], edi
jb 0x43b2b3
mov edx, dword [ebp - 0x778]
push edx
call fcn.00490a16
add esp, 4
xor ebx, ebx
mov esi, 0xf
mov dword [ebp - 0x764], esi
mov dword [ebp - 0x768], ebx
mov byte [ebp - 0x778], bl
cmp dword [ebp - 0x748], edi
jb 0x43b2e3
mov eax, dword [ebp - 0x75c]
push eax
call fcn.00490a16
add esp, 4
cmp dword [ebp - 0x72c], 8
mov dword [ebp - 0x748], esi
mov dword [ebp - 0x74c], ebx
mov byte [ebp - 0x75c], bl
jb 0x43b30d
mov ecx, dword [ebp - 0x740]
push ecx
call fcn.00490a16
add esp, 4
xor edx, edx
mov dword [ebp - 0x72c], 7
mov dword [ebp - 0x730], ebx
mov word [ebp - 0x740], dx
cmp dword [ebp - 0x6d8], edi
jb 0x43b33d
mov eax, dword [ebp - 0x6ec]
push eax
call fcn.00490a16
add esp, 4
cmp dword [ebp - 0x710], 8
mov dword [ebp - 0x6d8], esi
mov dword [ebp - 0x6dc], ebx
mov byte [ebp - 0x6ec], bl
jb 0x43b367
mov ecx, dword [ebp - 0x724]
push ecx
call fcn.00490a16
add esp, 4
xor edx, edx
mov dword [ebp - 0x710], 7
mov dword [ebp - 0x714], ebx
mov word [ebp - 0x724], dx
cmp dword [ebp - 0x6f4], edi
jb 0x43b397
mov eax, dword [ebp - 0x708]
push eax
call fcn.00490a16
add esp, 4
cmp dword [ebp - 0x6bc], 8
mov dword [ebp - 0x6f4], esi
mov dword [ebp - 0x6f8], ebx
mov byte [ebp - 0x708], bl
jb 0x43b3c1
mov ecx, dword [ebp - 0x6d0]
push ecx
call fcn.00490a16
add esp, 4
mov al, 1
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
pop ebx
mov ecx, dword [ebp - 0x10]
xor ecx, ebp
call fcn.00490a21
mov esp, ebp
pop ebp
ret 8