Function at 0x4b7d30
Capabilities:
Delete file
Move file

Disassembly:
push ebp
mov ebp, esp
and esp, 0xfffffff8
sub esp, 0x434
mov eax, dword [0x4ff074]
xor eax, esp
mov dword [esp + 0x430], eax
movzx eax, byte [0x7ea8f0]
mov dl, cl
movzx ecx, dl
shl ecx, 6
push ebx
push esi
push edi
mov bl, byte [ecx + 0x7ea7dd]
mov byte [esp + 0x10], dl
mov word [esp + 0x14], 0
mov byte [esp + 0x13], 0
mov byte [esp + 0x12], 0
mov dword [esp + 0x18], ecx
mov byte [esp + 0x11], bl
cmp bl, byte [eax + 0x4e9918]
jb 0x4b8298
xor dh, dh
mov esi, str.games_snookerplayer1
mov byte [esp + 0xf], dh
nop word [eax + eax]
test dh, dh
mov dword [esp + 0x1c], 0xffffffff
mov eax, str.games_snookercueclub
mov edi, 0xffff
cmove eax, esi
cmp byte [ecx + 0x7ea7d0], 1
mov dword [esp + 0x20], eax
jne 0x4b7dce
test dh, dh
je 0x4b809e
jmp 0x4b7de0
cmp dl, 1
jne 0x4b7de0
cmp byte [0x7eaacf], 0
jne 0x4b809e
test dh, dh
mov ebx, 0x7efde0
mov eax, 0x7ed6d0
cmovne ebx, eax
xor cl, cl
movzx eax, cl
lea eax, [eax + eax*4]
cmp byte [ebx + eax*8 + 0x26], 0
je 0x4b7e0b
inc cl
cmp cl, 0xfa
jb 0x4b7df1
mov eax, dword [esp + 0x1c]
jmp 0x4b7e14
movzx eax, cl
cmp ax, 0xffff
jne 0x4b7e4d
mov cl, byte [esp + 0x11]
lea esi, [ebx + 0x20]
movzx ecx, cl
xor dl, dl
mov word [esp + 0x1c], cx
movzx ecx, word [esi]
cmp word [esp + 0x1c], cx
jbe 0x4b7e39
cmp cx, di
jae 0x4b7e39
movzx eax, dl
mov edi, ecx
inc dl
add esi, 0x28
cmp dl, 0xfa
jb 0x4b7e25
cmp ax, 0xffff
je 0x4b808d
movsx edi, ax
mov dword [esp + 0x1c], edi
lea eax, [edi + edi*4]
shl eax, 3
lea esi, [eax + ebx]
mov dword [esp + 0x24], eax
mov bl, byte [esp + 0x11]
movzx eax, bl
mov word [esi + 0x20], ax
mov eax, dword [esp + 0x18]
lea eax, [eax + 0x7ea7b0]
push eax
push 0x10
push esi
call dword [sym.imp.api_ms_win_crt_string_l1_1_0.dll_wcscpy_s]
add esp, 0xc
lea eax, [esp + 0x28]
push eax
call dword [sym.imp.KERNEL32.dll_GetSystemTime]
mov ax, word [esp + 0x28]
mov cl, byte [esp + 0xf]
mov word [esi + 0x22], ax
mov al, byte [esp + 0x2a]
mov byte [esi + 0x24], al
mov al, byte [esp + 0x2e]
mov byte [esi + 0x25], al
mov eax, dword [esp + 0x18]
mov byte [esi + 0x26], 1
cmp byte [eax + 0x7ea7d0], 1
je 0x4b7edc
cmp byte [0x7e8066], 0
jne 0x4b7edc
test byte [0xa9292c], 6
jne 0x4b7edc
cmp bl, 0x14
jb 0x4b7edc
test cl, cl
jne 0x4b7edc
mov eax, 1
jmp 0x4b7ede
xor eax, eax
mov byte [esi + 0x27], al
xor esi, esi
movzx eax, cl
mov byte [esp + eax + 0x14], 1
nop dword [eax + eax]
movzx eax, si
lea edx, [esp + 0x138]
push eax
push edi
push dword [esp + 0x28]
push ecx
xor cl, cl
call fcn.00435cb0
lea eax, [esp + 0x148]
push eax
push 0xa92828
push str._s_s.dat
lea eax, [esp + 0x54]
push 0x80
push eax
call fcn.0042cda0
add esp, 0x24
lea eax, [esp + 0x38]
push 0
push 0x80
push 3
push 0
push 1
push 0x80000000
push eax
call dword [sym.imp.KERNEL32.dll_CreateFileW]
cmp eax, 0xffffffff
je 0x4b7f8a
push eax
call dword [sym.imp.KERNEL32.dll_CloseHandle]
lea eax, [esp + 0x138]
push eax
push 0xa92828
push str._s_s.dat
lea eax, [esp + 0x44]
push 0x80
push eax
call fcn.0042cda0
add esp, 0x14
lea eax, [esp + 0x38]
push eax
call dword [sym.imp.KERNEL32.dll_DeleteFileW]
inc esi
jmp 0x4b7ef0
xor edi, edi
cmp byte [0x7e803e], 0
jbe 0x4b804f
mov ebx, dword [esp + 0x1c]
nop dword [eax]
movzx esi, di
lea eax, [esi + 1]
push eax
push dword [esp + 0x24]
lea eax, [esp + 0x40]
push str._s_temp_d
push 0x80
push eax
call fcn.0042cda0
add esp, 0x14
lea edx, [esp + 0x138]
push esi
push ebx
push dword [esp + 0x28]
push ecx
xor cl, cl
call fcn.00435cb0
lea eax, [esp + 0x48]
push eax
push 0xa92828
push str._s_s.dat
lea eax, [esp + 0x354]
push 0x80
push eax
call fcn.0042cda0
add esp, 0x24
lea eax, [esp + 0x138]
push eax
push 0xa92828
push str._s_s.dat
lea eax, [esp + 0x244]
push 0x80
push eax
call fcn.0042cda0
add esp, 0x14
lea eax, [esp + 0x238]
push 9
push eax
lea eax, [esp + 0x340]
push eax
call dword [sym.imp.KERNEL32.dll_MoveFileExW]
movzx eax, byte [0x7e803e]
inc edi
cmp di, ax
jb 0x4b7fa0
mov bl, byte [esp + 0x11]
mov dh, byte [esp + 0xf]
test dh, dh
jne 0x4b8091
mov eax, dword [esp + 0x24]
cmp byte [eax + 0x7efe07], 1
jne 0x4b8091
lea ecx, [eax + 0x7efde0]
call fcn.00499b90
mov dh, byte [esp + 0xf]
mov esi, str.games_snookerplayer1
mov ecx, dword [esp + 0x18]
mov dl, byte [esp + 0x10]
test al, al
je 0x4b809e
or byte [0x7c9bb6], 2
jmp 0x4b809e
mov bl, byte [esp + 0x11]
mov ecx, dword [esp + 0x18]
mov esi, str.games_snookerplayer1
mov dl, byte [esp + 0x10]
inc dh
mov byte [esp + 0xf], dh
cmp dh, 2
jb 0x4b7da0
cmp byte [esp + 0x14], 0
jne 0x4b80bb
cmp byte [esp + 0x15], 0
je 0x4b80c0
call fcn.00433f10
cmp byte [0x7ea961], 0
je 0x4b80f9
cmp byte [0x7e8029], 6
je 0x4b80f9
cmp byte [0x7e811b], 1
jne 0x4b80f9
cmp bl, 0x64
jb 0x4b80e4
mov cl, 3
jmp 0x4b80f4
cmp bl, 0x32
jb 0x4b80ed
mov cl, 1
jmp 0x4b80f4
cmp bl, 0x1e
jb 0x4b80f9
xor cl, cl
call fcn.004485c0
cmp byte [0x7c9ce1], 0
jne 0x4b8298
mov edx, 0xffff
cmp bl, 0x93
jb 0x4b8127
mov ax, word [0x7e833e]
cmp ax, dx
jae 0x4b8127
inc ax
mov cl, 1
mov word [0x7e833e], ax
jmp 0x4b812b
mov cl, byte [esp + 0x12]
cmp bl, 0x64
jb 0x4b8145
mov ax, word [0x7e833c]
cmp ax, dx
jae 0x4b8145
inc ax
mov cl, 1
mov word [0x7e833c], ax
cmp bl, 0x32
jb 0x4b815f
mov ax, word [0x7e833a]
cmp ax, dx
jae 0x4b815f
inc ax
mov word [0x7e833a], ax
jmp 0x4b8163
test cl, cl
je 0x4b8168
call fcn.00435d80
cmp byte [0x7e8036], 0
jne 0x4b8298
cmp bl, 0x1e
jb 0x4b8198
cmp byte [0x7eab97], 0
jne 0x4b8198
mov byte [0x7eab97], 1
mov al, 1
mov dword [0x555964], 7
jmp 0x4b819c
mov al, byte [esp + 0x13]
cmp bl, 0x28
jb 0x4b81bd
cmp byte [0x7eab98], 0
jne 0x4b81bd
mov byte [0x7eab98], 1
mov al, 1
mov dword [0x555964], 8
cmp bl, 0x32
jb 0x4b81de
cmp byte [0x7eab99], 0
jne 0x4b81de
mov byte [0x7eab99], 1
mov al, 1
mov dword [0x555964], 9
cmp bl, 0x4b
jb 0x4b81ff
cmp byte [0x7eab9f], 0
jne 0x4b81ff
mov byte [0x7eab9f], 1
mov al, 1
mov dword [0x555964], 0xf
cmp bl, 0x64
jb 0x4b8220
cmp byte [0x7eaba0], 0
jne 0x4b8220
mov byte [0x7eaba0], 1
mov al, 1
mov dword [0x555964], 0x10
cmp bl, 0x93
jb 0x4b8241
cmp byte [0x7eaba1], 0
jne 0x4b8241
mov byte [0x7eaba1], 1
mov dword [0x555964], 0x11
jmp 0x4b8245
test al, al
je 0x4b8298
call fcn.00438520
call fcn.00434f80
movss xmm2, dword [0x4fc604]
xorps xmm0, xmm0
movss xmm1, dword [0x4fca5c]
mov dword [0x52edd0], 0
mov byte [0x7e7fd2], 1
call fcn.004bea90
mov ecx, 0x5558b0
call fcn.00460890
mov ecx, 0x1e
call fcn.00417e70
xor dl, dl
mov ecx, 0x1d
call fcn.004bd4f0
mov ecx, dword [esp + 0x43c]
pop edi
pop esi
pop ebx
xor ecx, esp
call fcn.004d66b5
mov esp, ebp
pop ebp
ret