Function at 0x402a50
Capabilities:
Delete file

Disassembly:
sub esp, 0x228
push ebx
push ebp
push esi
push edi
mov ecx, 0x3f
xor eax, eax
lea edi, [esp + 0x139]
mov byte [esp + 0x138], 0
rep stosd dword es:[edi], eax
stosw word es:[edi], ax
stosb byte es:[edi], al
mov ecx, 0x3f
xor eax, eax
lea edi, [esp + 0x39]
mov byte [esp + 0x38], 0
rep stosd dword es:[edi], eax
stosw word es:[edi], ax
mov ecx, dword [esp + 0x240]
xor ebx, ebx
stosb byte es:[edi], al
lea eax, [esp + 0x14]
mov dword [esp + 0x14], ebx
push eax
push 0x1f7
push 0x2fd
push ebx
push ebx
push ecx
call fcn.00401d30
mov ebp, eax
add esp, 0x18
cmp ebp, ebx
mov dword [esp + 0x24], ebp
je 0x402e05
mov edx, dword [esp + 0x24c]
mov ecx, dword [esp + 0x23c]
lea eax, [esp + 0x28]
mov dword [esp + 0x10], ebx
push eax
push ecx
mov dword [edx], ebx
xor edi, edi
mov dword [esp + 0x24], ebx
mov dword [esp + 0x20], ebx
call dword [sym.imp.USER32.dll_GetWindowRect]
mov eax, dword [esp + 0x244]
cmp eax, 0x96
jg 0x402b06
mov dword [esp + 0x20], 0x12c
mov esi, 1
jmp 0x402b19
lea esi, [eax - 0x96]
add eax, 0x96
cmp esi, eax
mov dword [esp + 0x20], eax
jge 0x402b62
mov edx, dword [esp + 0x248]
lea ebx, [edx + 0xe]
mov eax, dword [esp + 0x14]
push ebx
push esi
push eax
push ebp
call fcn.00401280
push 0x1e
push eax
push 0xfefefe
call fcn.00401200
add esp, 0x1c
cmp eax, 1
jne 0x402b51
mov eax, dword [esp + 0x18]
test eax, eax
jne 0x402b5c
mov dword [esp + 0x18], esi
mov eax, dword [esp + 0x20]
inc esi
cmp esi, eax
jl 0x402b23
jmp 0x402b60
mov dword [esp + 0x1c], esi
xor ebx, ebx
mov eax, dword [esp + 0x248]
lea esi, [eax - 0x1e]
cmp esi, ebx
jge 0x402b72
xor esi, esi
lea ebx, [eax + 0x8c]
cmp ebx, 0x2ee
jle 0x402b85
mov ebx, 0x2ee
cmp esi, ebx
jge 0x402bd9
mov ecx, dword [esp + 0x244]
mov edx, dword [esp + 0x14]
push esi
push ecx
push edx
push ebp
call fcn.00401280
push 0x1e
push eax
push 0xfefefe
call fcn.00401200
add esp, 0x1c
cmp eax, 1
jne 0x402bb8
test edi, edi
jne 0x402bbf
mov edi, esi
inc esi
cmp esi, ebx
jl 0x402b89
jmp 0x402bc3
mov dword [esp + 0x10], esi
test edi, edi
jle 0x402bd9
mov eax, dword [esp + 0x10]
test eax, eax
jne 0x402bdd
lea eax, [edi + 0x8c]
mov dword [esp + 0x10], eax
mov eax, dword [esp + 0x10]
mov ecx, dword [esp + 0x1c]
mov edx, dword [esp + 0x18]
cmp ecx, edx
jle 0x402df2
cmp eax, edi
jle 0x402df2
mov esi, eax
sub esi, edi
push esi
push eax
push edi
push ecx
push edx
push str.___d__d__d__d__d_n
call fcn.00407a26
add esp, 0x18
call dword [sym.imp.KERNEL32.dll_GetTickCount]
mov ecx, dword [esp + 0x248]
mov edx, dword [esp + 0x244]
mov eax, dword [esp + 0x14]
add ecx, 3
push ecx
push edx
push eax
push ebp
call fcn.00401280
mov ebx, eax
push 0xa
push 0xa1112
push ebx
call fcn.00401200
add esp, 0x1c
cmp eax, 1
je 0x402c7e
mov ecx, ebx
xor edx, edx
shr ecx, 0x10
mov dl, bh
and ecx, 0xff
and edx, 0xff
push ecx
and ebx, 0xff
push edx
push ebx
push 0x42b1b0
call fcn.00407a26
add esp, 0x10
xor eax, eax
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x228
ret
mov ebp, dword [sym.imp.KERNEL32.dll_DeleteFileA]
xor esi, esi
inc esi
lea eax, [esp + 0x138]
push esi
push 0x42feb4
push str._s_d__d.bmp
push eax
call fcn.00407915
mov ecx, dword [esp + 0x2c]
mov edx, dword [esp + 0x28]
lea ebx, [edi + 0x11]
lea eax, [esp + 0x148]
push ebx
push ecx
push edi
mov edi, dword [esp + 0x258]
push edx
push eax
push edi
call fcn.00401e10
push str.111_n
call fcn.00407a26
lea ecx, [esp + 0x164]
lea edx, [esp + 0x64]
push ecx
push edx
call fcn.00401b30
push str.222_n
call fcn.00407a26
add esp, 0x38
lea eax, [esp + 0x138]
push eax
call ebp
lea ecx, [esp + 0x38]
push str.take
push ecx
call fcn.00407f30
add esp, 8
test eax, eax
je 0x402d38
lea edx, [esp + 0x38]
push str.bones
push edx
call fcn.00407f30
add esp, 8
test eax, eax
je 0x402d38
lea eax, [esp + 0x38]
push 0x42b17c
push eax
call fcn.00407f30
add esp, 8
test eax, eax
jne 0x402db5
lea ecx, [esp + 0x38]
push str.take
push ecx
call fcn.00407f30
add esp, 8
test eax, eax
je 0x402d64
lea edx, [esp + 0x38]
push 0x42b178
push edx
call fcn.00407f30
add esp, 8
test eax, eax
jne 0x402db5
lea eax, [esp + 0x38]
push str.walk
push eax
call fcn.00407f30
add esp, 8
test eax, eax
jne 0x402d9b
lea ecx, [esp + 0x38]
push 0x42b16c
push ecx
call fcn.00407f30
add esp, 8
test eax, eax
jne 0x402d9b
cmp esi, 6
mov edi, ebx
jl 0x402c86
mov edx, dword [esp + 0x24]
push edx
call fcn.00407e3e
add esp, 4
xor eax, eax
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x228
ret
mov edx, dword [esp + 0x248]
mov eax, dword [esp + 0x244]
mov ecx, dword [esp + 0x240]
push esi
push edx
push eax
push ecx
push edi
call fcn.00402330
add esp, 0x14
push 0x3e8
call dword [sym.imp.KERNEL32.dll_Sleep]
pop edi
pop esi
pop ebp
mov eax, 1
pop ebx
add esp, 0x228
ret
push 0x42b15c
call fcn.00407a26
push ebp
call fcn.00407e3e
add esp, 8
pop edi
pop esi
pop ebp
xor eax, eax
pop ebx
add esp, 0x228
ret