Function at 0x474b71
Capabilities:
Delete file

Disassembly:
push 0xffffffffffffffff
push 0x4b21dc
mov eax, dword fs:[0]
push eax
mov dword fs:[0], esp
sub esp, 0x7d0
mov al, byte [esp + 3]
push ebx
push ebp
push esi
mov esi, ecx
xor ebx, ebx
push edi
mov dword [esp + 0x38], esi
mov byte [esp + 0x28], al
mov dword [esp + 0x2c], ebx
mov dword [esp + 0x30], ebx
mov dword [esp + 0x34], ebx
mov ecx, dword [esp + 0x7f0]
lea edx, [esp + 0x28]
push ecx
push edx
push str._editpersonaldata.html
mov ecx, esi
mov dword [esp + 0x7f4], ebx
call fcn.00470fc0
test al, al
jne 0x474bb9
mov eax, dword [esp + 0x2c]
push eax
jmp 0x475191
mov cl, byte [0x4d83ac]
xor eax, eax
mov byte [esp + 0xa4], cl
mov ecx, 0x41
lea edi, [esp + 0xa5]
lea edx, [esp + 0xa4]
rep stosd dword es:[edi], eax
push edx
mov ecx, esi
call fcn.004997e0
lea ecx, [esp + 0x14]
call fcn.00489cd0
push ebx
push 1
lea eax, [esp + 0xac]
push 1
push eax
lea ecx, [esp + 0x24]
mov byte [esp + 0x7f8], 1
call fcn.00489d20
test al, al
jne 0x474c38
lea ecx, [esp + 0xa4]
push ecx
call dword [sym.imp.kernel32.dll_DeleteFileA]
lea ecx, [esp + 0x14]
mov byte [esp + 0x7e8], bl
call fcn.00489d10
mov edx, dword [esp + 0x2c]
push edx
jmp 0x475191
lea ecx, [esp + 0x1ac]
mov dword [esp + 0x3c], ebx
call fcn.00406de0
mov ebp, dword [esp + 0x7f4]
lea eax, [esp + 0x1ac]
push eax
mov ecx, ebp
mov byte [esp + 0x7ec], 2
call fcn.0044bcd0
mov ecx, dword [esi + 0x4c]
push eax
call fcn.0040dbd0
test al, al
jne 0x474cb8
lea ecx, [esp + 0x14]
call fcn.00489e00
lea ecx, [esp + 0xa4]
push ecx
call dword [sym.imp.kernel32.dll_DeleteFileA]
lea ecx, [esp + 0x1ac]
mov byte [esp + 0x7e8], 1
call fcn.00406e20
lea ecx, [esp + 0x14]
mov byte [esp + 0x7e8], bl
call fcn.00489d10
mov edx, dword [esp + 0x2c]
push edx
jmp 0x475191
mov esi, dword [esp + 0x38]
lea eax, [esp + 0x3c]
push eax
lea ecx, [esp + 0x44]
push 0x64
lea edx, [esp + 0x1c]
push ecx
lea eax, [esp + 0x34]
push edx
push eax
lea ecx, [esi + 0x44]
call fcn.00499870
test al, al
je 0x475118
cmp byte [esp + 0x40], bl
je 0x475123
lea ecx, [esp + 0x13]
push ebx
lea edx, [esp + 0x18]
push ecx
lea eax, [esp + 0x48]
push edx
push eax
push ebp
mov ecx, esi
mov byte [esp + 0x27], bl
call fcn.00471310
test al, al
je 0x475118
cmp byte [esp + 0x13], bl
jne 0x474cb8
mov esi, str.PROCESSPERSONALDATALINK
lea eax, [esp + 0x40]
mov dl, byte [eax]
mov cl, dl
cmp dl, byte [esi]
jne 0x474d43
cmp cl, bl
je 0x474d3f
mov dl, byte [eax + 1]
mov cl, dl
cmp dl, byte [esi + 1]
jne 0x474d43
add eax, 2
add esi, 2
cmp cl, bl
jne 0x474d1f
xor eax, eax
jmp 0x474d48
sbb eax, eax
sbb eax, 0xffffffff
cmp eax, ebx
jne 0x474da7
mov eax, dword [0x4d5f90]
mov dword [esp + 0x24], eax
mov ecx, ebp
mov byte [esp + 0x7e8], 3
call fcn.00479da0
push eax
lea ecx, [esp + 0x28]
push str._updatepersonaldata_id_s
push ecx
call fcn.004a0e91
mov eax, dword [esp + 0x30]
add esp, 0xc
mov ecx, dword [eax - 8]
push ecx
push eax
lea ecx, [esp + 0x1c]
call fcn.00489f00
test al, al
mov byte [esp + 0x7e8], 2
lea ecx, [esp + 0x24]
je 0x475113
call fcn.004a3625
jmp 0x474cb8
mov esi, str.PDATANAME
lea eax, [esp + 0x40]
mov dl, byte [eax]
mov cl, dl
cmp dl, byte [esi]
jne 0x474dd4
cmp cl, bl
je 0x474dd0
mov dl, byte [eax + 1]
mov cl, dl
cmp dl, byte [esi + 1]
jne 0x474dd4
add eax, 2
add esi, 2
cmp cl, bl
jne 0x474db0
xor eax, eax
jmp 0x474dd9
sbb eax, eax
sbb eax, 0xffffffff
cmp eax, ebx
jne 0x474e07
lea ecx, [esp + 0x1ac]
call fcn.0044bcd0
mov edi, eax
or ecx, 0xffffffff
xor eax, eax
repne scasb al, byte es:[edi]
not ecx
dec ecx
push ecx
lea ecx, [esp + 0x1b0]
call fcn.0044bcd0
jmp 0x47509f
mov esi, str.PDATAADDRESS1
lea eax, [esp + 0x40]
mov dl, byte [eax]
mov cl, dl
cmp dl, byte [esi]
jne 0x474e34
cmp cl, bl
je 0x474e30
mov dl, byte [eax + 1]
mov cl, dl
cmp dl, byte [esi + 1]
jne 0x474e34
add eax, 2
add esi, 2
cmp cl, bl
jne 0x474e10
xor eax, eax
jmp 0x474e39
sbb eax, eax
sbb eax, 0xffffffff
cmp eax, ebx
jne 0x474e67
lea ecx, [esp + 0x1ac]
call fcn.00406e50
mov edi, eax
or ecx, 0xffffffff
xor eax, eax
repne scasb al, byte es:[edi]
not ecx
dec ecx
push ecx
lea ecx, [esp + 0x1b0]
call fcn.00406e50
jmp 0x47509f
mov esi, str.PDATAADDRESS2
lea eax, [esp + 0x40]
mov dl, byte [eax]
mov cl, dl
cmp dl, byte [esi]
jne 0x474e94
cmp cl, bl
je 0x474e90
mov dl, byte [eax + 1]
mov cl, dl
cmp dl, byte [esi + 1]
jne 0x474e94
add eax, 2
add esi, 2
cmp cl, bl
jne 0x474e70
xor eax, eax
jmp 0x474e99
sbb eax, eax
sbb eax, 0xffffffff
cmp eax, ebx
jne 0x474ec7
lea ecx, [esp + 0x1ac]
call fcn.00479da0
mov edi, eax
or ecx, 0xffffffff
xor eax, eax
repne scasb al, byte es:[edi]
not ecx
dec ecx
push ecx
lea ecx, [esp + 0x1b0]
call fcn.00479da0
jmp 0x47509f
mov esi, str.PDATACITY
lea eax, [esp + 0x40]
mov dl, byte [eax]
mov cl, dl
cmp dl, byte [esi]
jne 0x474ef4
cmp cl, bl
je 0x474ef0
mov dl, byte [eax + 1]
mov cl, dl
cmp dl, byte [esi + 1]
jne 0x474ef4
add eax, 2
add esi, 2
cmp cl, bl
jne 0x474ed0
xor eax, eax
jmp 0x474ef9
sbb eax, eax
sbb eax, 0xffffffff
cmp eax, ebx
jne 0x474f27
lea ecx, [esp + 0x1ac]
call fcn.00406e60
mov edi, eax
or ecx, 0xffffffff
xor eax, eax
repne scasb al, byte es:[edi]
not ecx
dec ecx
push ecx
lea ecx, [esp + 0x1b0]
call fcn.00406e60
jmp 0x47509f
mov esi, str.PDATAREGION
lea eax, [esp + 0x40]
mov dl, byte [eax]
mov cl, dl
cmp dl, byte [esi]
jne 0x474f54
cmp cl, bl
je 0x474f50
mov dl, byte [eax + 1]
mov cl, dl
cmp dl, byte [esi + 1]
jne 0x474f54
add eax, 2
add esi, 2
cmp cl, bl
jne 0x474f30
xor eax, eax
jmp 0x474f59
sbb eax, eax
sbb eax, 0xffffffff
cmp eax, ebx
jne 0x474f87
lea ecx, [esp + 0x1ac]
call fcn.00406e70
mov edi, eax
or ecx, 0xffffffff
xor eax, eax
repne scasb al, byte es:[edi]
not ecx
dec ecx
push ecx
lea ecx, [esp + 0x1b0]
call fcn.00406e70
jmp 0x47509f
mov esi, str.PDATAPOSTCODE
lea eax, [esp + 0x40]
mov dl, byte [eax]
mov cl, dl
cmp dl, byte [esi]
jne 0x474fb4
cmp cl, bl
je 0x474fb0
mov dl, byte [eax + 1]
mov cl, dl
cmp dl, byte [esi + 1]
jne 0x474fb4
add eax, 2
add esi, 2
cmp cl, bl
jne 0x474f90
xor eax, eax
jmp 0x474fb9
sbb eax, eax
sbb eax, 0xffffffff
cmp eax, ebx
jne 0x474fe7
lea ecx, [esp + 0x1ac]
call fcn.00406e80
mov edi, eax
or ecx, 0xffffffff
xor eax, eax
repne scasb al, byte es:[edi]
not ecx
dec ecx
push ecx
lea ecx, [esp + 0x1b0]
call fcn.00406e80
jmp 0x47509f
mov esi, str.PDATACOUNTRY
lea eax, [esp + 0x40]
mov dl, byte [eax]
mov cl, dl
cmp dl, byte [esi]
jne 0x475014
cmp cl, bl
je 0x475010
mov dl, byte [eax + 1]
mov cl, dl
cmp dl, byte [esi + 1]
jne 0x475014
add eax, 2
add esi, 2
cmp cl, bl
jne 0x474ff0
xor eax, eax
jmp 0x475019
sbb eax, eax
sbb eax, 0xffffffff
cmp eax, ebx
jne 0x475044
lea ecx, [esp + 0x1ac]
call fcn.00406e90
mov edi, eax
or ecx, 0xffffffff
xor eax, eax
repne scasb al, byte es:[edi]
not ecx
dec ecx
push ecx
lea ecx, [esp + 0x1b0]
call fcn.00406e90
jmp 0x47509f
mov esi, str.PDATATELENO
lea eax, [esp + 0x40]
mov dl, byte [eax]
mov cl, dl
cmp dl, byte [esi]
jne 0x475071
cmp cl, bl
je 0x47506d
mov dl, byte [eax + 1]
mov cl, dl
cmp dl, byte [esi + 1]
jne 0x475071
add eax, 2
add esi, 2
cmp cl, bl
jne 0x47504d
xor eax, eax
jmp 0x475076
sbb eax, eax
sbb eax, 0xffffffff
cmp eax, ebx
jne 0x4750b2
lea ecx, [esp + 0x1ac]
call fcn.00406ea0
mov edi, eax
or ecx, 0xffffffff
xor eax, eax
repne scasb al, byte es:[edi]
not ecx
dec ecx
push ecx
lea ecx, [esp + 0x1b0]
call fcn.00406ea0
push eax
lea ecx, [esp + 0x1c]
call fcn.00489f00
test al, al
je 0x475118
jmp 0x474cb8
mov esi, str.PDATAOTHEREMAILADDRESS
lea eax, [esp + 0x40]
mov dl, byte [eax]
mov cl, dl
cmp dl, byte [esi]
jne 0x4750df
cmp cl, bl
je 0x4750db
mov dl, byte [eax + 1]
mov cl, dl
cmp dl, byte [esi + 1]
jne 0x4750df
add eax, 2
add esi, 2
cmp cl, bl
jne 0x4750bb
xor eax, eax
jmp 0x4750e4
sbb eax, eax
sbb eax, 0xffffffff
cmp eax, ebx
jne 0x474cb8
lea ecx, [esp + 0x1ac]
call fcn.00406eb0
mov edi, eax
or ecx, 0xffffffff
xor eax, eax
repne scasb al, byte es:[edi]
not ecx
dec ecx
push ecx
lea ecx, [esp + 0x1b0]
call fcn.00406eb0
jmp 0x47509f
call fcn.004a3625
lea ecx, [esp + 0x14]
call fcn.00489e00
jmp 0x47515a
lea ecx, [esp + 0x14]
call fcn.00489e00
mov esi, dword [esp + 0x7f0]
push str.html
push 1
lea edx, [esp + 0xac]
push 0xc8
push edx
mov ecx, esi
call fcn.00495a70
test al, al
jne 0x475168
push ebx
mov ecx, esi
call fcn.00497450
lea eax, [esp + 0xa4]
push eax
call dword [sym.imp.kernel32.dll_DeleteFileA]
lea ecx, [esp + 0x1ac]
mov byte [esp + 0x7e8], 1
call fcn.00406e20
lea ecx, [esp + 0x14]
mov byte [esp + 0x7e8], bl
call fcn.00489d10
mov ecx, dword [esp + 0x2c]
push ecx
call fcn.004a2a3d
mov ecx, dword [esp + 0x7e4]
add esp, 4
mov dword fs:[0], ecx
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x7dc
ret 8