Function at 0x53bbae
Capabilities:
Delete file
Read file on windows

Disassembly:
jmp 0x683574
push 0x28c
mov eax, 0x7ade52
call fcn.0053ba0f
mov esi, ecx
mov ebx, dword [ebp + 8]
mov ecx, 0x25ad6b0
mov dword [ebp - 0x28c], ebx
call fcn.0053c469
mov eax, dword [ebp + 0xc]
mov dword [0xa71224], ebx
mov ebx, 0x320
and dword [esi + 0x184], 0
push 0x10
pop edi
mov dword [esi + 0x10], ebx
mov dword [esi + 0x14], 0x258
mov dword [esi + 0x18], edi
mov dword [esi + 0x1c], eax
call fcn.00536343
and dword [ebp - 0x244], 0
lea eax, [ebx - 0x20]
push 0x20
pop ecx
push 0x7bcfdc
mov dword [ebp - 0x200], eax
mov dword [ebp - 0x1e8], eax
lea eax, [ebp - 0x244]
push str.Config.bin
push eax
mov dword [ebp - 0x21c], 0x280
mov dword [ebp - 0x218], 0x1e0
mov dword [ebp - 0x214], ecx
mov dword [ebp - 0x210], ebx
mov dword [ebp - 0x20c], 0x258
mov dword [ebp - 0x208], ecx
mov dword [ebp - 0x204], 0x400
mov dword [ebp - 0x1fc], ecx
mov dword [ebp - 0x1f8], 0x500
mov dword [ebp - 0x1f4], 0x3c0
mov dword [ebp - 0x1f0], ecx
mov dword [ebp - 0x1ec], 0x556
mov dword [ebp - 0x1e4], ecx
mov dword [ebp - 0x1e0], 0x780
mov dword [ebp - 0x1dc], 0x438
mov dword [ebp - 0x1d8], ecx
call dword [sym.imp.ucrtbased.dll_fopen_s]
xor ebx, ebx
add esp, 0xc
inc ebx
cmp dword [ebp - 0x244], 0
je 0x6836f1
push dword [ebp - 0x244]
lea eax, [ebp - 0x240]
push ebx
push 0x1e
push eax
call dword [sym.imp.ucrtbased.dll_fread]
push dword [ebp - 0x244]
call dword [sym.imp.ucrtbased.dll_fclose]
movzx eax, word [ebp - 0x226]
add esp, 0x14
and dword [ebp - 0x244], 0
mov cx, word [ebp - 0x22e]
mov dword [ebp - 0x294], eax
mov ax, word [ebp - 0x228]
mov dword [ebp - 0x284], eax
mov ax, word [ebp - 0x22a]
mov dword [ebp - 0x290], eax
mov ax, word [ebp - 0x230]
mov dword [ebp - 0x288], eax
jmp 0x683746
movaps xmm0, xmmword [0x7be8d0]
mov eax, ebx
mov dword [ebp - 0x288], eax
mov ecx, ebx
mov word [ebp - 0x230], ax
xor eax, eax
movups xmmword [ebp - 0x240], xmm0
mov word [ebp - 0x22e], cx
mov word [ebp - 0x22c], bx
mov dword [ebp - 0x290], eax
mov dword [ebp - 0x22a], eax
mov dword [ebp - 0x284], eax
mov dword [ebp - 0x294], eax
mov word [ebp - 0x226], ax
mov word [ebp - 0x224], bx
movsx eax, word [ebp - 0x23e]
movsx edx, word [ebp - 0x234]
mov dword [ebp - 0x298], eax
xor eax, eax
mov dword [0xa71214], eax
mov dword [0xa71218], eax
mov dword [0xa7121c], eax
movsx eax, word [ebp - 0x23a]
mov dword [esi + 0x184], eax
movsx eax, word [ebp - 0x238]
mov dword [esi + 0x188], eax
mov eax, dword [ebp - 0x288]
cwde
mov dword [0x7fe9f4], eax
movsx eax, cx
mov dword [ebp - 0x288], eax
test cx, cx
js 0x6837ad
xor eax, eax
cmp dword [ebp - 0x288], eax
sete al
mov dword [esi + 0x1c], eax
mov eax, dword [ebp - 0x294]
xor ecx, ecx
cmp word [ebp - 0x290], cx
cwde
setg cl
mov dword [0xa71220], eax
xor eax, eax
mov dword [esi + 0x18c], ebx
cmp word [ebp - 0x284], ax
mov dword [0x7fe9f8], 2
setle al
mov dword [0x7fe1a8], ecx
mov dword [0x7fbbb8], eax
mov dword [0x7fbbbc], 0x1e
test edx, edx
jns 0x6837fe
xor edx, edx
jmp 0x683806
push 0x64
pop eax
cmp edx, eax
cmovg edx, eax
movsx eax, word [ebp - 0x232]
mov dword [0x7fe178], edx
mov dword [0x8019d8], ebx
cmp eax, ebx
jne 0x683826
and dword [0xa65814], 0
jmp 0x68386c
push 0x81
push dword [ebp - 0x28c]
mov dword [0xa65814], 2
call dword [sym.imp.USER32.dll_LoadCursorA]
push 0x82
push dword [ebp - 0x28c]
mov dword [0xa65818], eax
call dword [sym.imp.USER32.dll_LoadCursorA]
mov dword [0xa6581c], eax
mov eax, dword [0xa65818]
test eax, eax
je 0x68386c
push eax
call dword [sym.imp.USER32.dll_SetCursor]
imul eax, dword [ebp - 0x298], 0xc
mov ecx, dword [ebp + eax - 0x224]
mov edx, dword [ebp + eax - 0x228]
mov eax, dword [ebp + eax - 0x220]
push eax
push ecx
mov dword [esi + 0x14], ecx
mov ecx, esi
push edx
mov dword [esi + 0x10], edx
mov dword [esi + 0x18], eax
call fcn.00536a14
test al, al
jne 0x6838b4
mov dword [esi + 0x10], 0x320
mov dword [esi + 0x14], 0x258
mov dword [esi + 0x18], 0x20
mov eax, dword [esi + 0x10]
sub eax, 0x280
je 0x6838e4
sub eax, 0xa0
je 0x6838e0
sub eax, 0xe0
je 0x6838e7
sub eax, 0x100
je 0x6838dc
sub eax, 0x56
je 0x6838dc
push 0x18
jmp 0x6838e6
push 0x11
jmp 0x6838e6
push 0xd
jmp 0x6838e6
push 0xa
pop edi
mov ecx, esi
mov dword [0x7fe18c], edi
mov dword [0x7fe194], 0x200
call fcn.005381d9
mov eax, dword [esi + 4]
test eax, eax
jne 0x6839f7
mov edi, dword [ebp - 0x28c]
and dword [ebp - 0x278], eax
and dword [ebp - 0x274], eax
push 0x6b
push edi
mov dword [ebp - 0x280], 8
mov dword [ebp - 0x27c], 0x537b12
mov dword [ebp - 0x270], edi
call dword [sym.imp.USER32.dll_LoadIconA]
push 0x7f00
push 0
mov dword [ebp - 0x26c], eax
call dword [sym.imp.USER32.dll_LoadCursorA]
push 4
mov dword [ebp - 0x268], eax
call dword [sym.imp.GDI32.dll_GetStockObject]
and dword [ebp - 0x260], 0
mov dword [ebp - 0x264], eax
lea eax, [ebp - 0x280]
push eax
mov dword [ebp - 0x25c], 0x7be63c
call dword [sym.imp.USER32.dll_RegisterClassA]
push dword [esi + 0x14]
xor edx, edx
mov ecx, 0x10ca0000
push dword [esi + 0x10]
cmp dword [esi + 0x1c], edx
mov eax, 0x90000000
push edx
cmove eax, ecx
mov dword [esi + 0xc], eax
lea eax, [ebp - 0x258]
push edx
push eax
call dword [sym.imp.USER32.dll_SetRect]
push 0
push dword [esi + 0xc]
lea eax, [ebp - 0x258]
push eax
call dword [sym.imp.USER32.dll_AdjustWindowRect]
mov eax, dword [ebp - 0x24c]
xor ecx, ecx
sub eax, dword [ebp - 0x254]
push ecx
push edi
push ecx
push ecx
push eax
mov eax, dword [ebp - 0x250]
sub eax, dword [ebp - 0x258]
push eax
push ecx
push ecx
push dword [esi + 0xc]
lea eax, [esi + 0x20]
push eax
push 0x7be63c
push ecx
call dword [sym.imp.USER32.dll_CreateWindowExA]
mov dword [esi + 4], eax
mov dword [0x8114b8], eax
call fcn.0053c96e
test eax, eax
jne 0x683a30
push eax
push str.Error
push str.Initialize_Data_Failed
push dword [esi + 4]
call dword [sym.imp.USER32.dll_MessageBoxA]
push str.Initialize_Data_Failed_r_n
call fcn.005377ca
pop ecx
call fcn.0053afb5
xor eax, eax
jmp 0x683c7c
call fcn.00537518
call fcn.00536ea1
call fcn.0053ca63
call fcn.0053ccfc
call fcn.0053a70e
push 0x124
call fcn.00537b1c
mov edi, eax
pop ecx
mov dword [ebp - 0x298], edi
and dword [ebp - 4], 0
test edi, edi
je 0x683a7c
push 0x124
mov ecx, edi
call fcn.00539f0c
push dword [esi + 0x1c]
mov ecx, edi
call fcn.0053c860
jmp 0x683a7e
xor eax, eax
or dword [ebp - 4], 0xffffffff
mov dword [esi + 0x168], eax
test eax, eax
je 0x683ab2
push str.WYD.avi
mov ecx, eax
call fcn.0053806c
test eax, eax
jne 0x683ab2
mov ecx, dword [esi + 0x168]
test ecx, ecx
je 0x683ab2
mov eax, dword [ecx]
push ebx
call dword [eax]
and dword [esi + 0x168], 0
push 0x75d410
push 0
push 0x18b3098
call fcn.00538b89
lea eax, [ebp - 0x198]
push str.itemhelp.dat
push eax
call fcn.0053d3a5
push str.Change.exe
call dword [sym.imp.ucrtbased.dll_remove]
add esp, 0x18
mov ecx, esi
call fcn.00537455
push 0x7bd088
lea eax, [ebp - 0x198]
push eax
lea eax, [ebp - 0x244]
push eax
call dword [sym.imp.ucrtbased.dll_fopen_s]
add esp, 0xc
cmp dword [ebp - 0x244], 0
jne 0x683b28
push 0
push str.Error
push str.Cant_open_itemhelp.dat
push dword [esi + 4]
call dword [sym.imp.USER32.dll_MessageBoxA]
jmp 0x683a29
push 0x100
lea eax, [ebp - 0x118]
xorps xmm0, xmm0
push 0
push eax
movlpd qword [ebp - 0x18], xmm0
call fcn.00538b89
and dword [ebp - 0x248], 0
add esp, 0xc
and dword [ebp - 0x220], 0
mov dword [ebp - 0x284], 0x1964
xor edi, edi
push dword [ebp - 0x244]
lea eax, [ebp - 0x118]
push 0x100
push eax
call dword [sym.imp.ucrtbased.dll_fgets]
add esp, 0xc
test eax, eax
je 0x683c4e
test edi, edi
jne 0x683ba5
lea eax, [ebp - 0x248]
push eax
lea eax, [ebp - 0x118]
push 0x7bd12c
push eax
call fcn.0053c559
add esp, 0xc
inc edi
jmp 0x683b60
push 6
lea eax, [ebp - 0x118]
xorps xmm0, xmm0
push eax
lea eax, [ebp - 0x18]
movlpd qword [ebp - 0x18], xmm0
push eax
call dword [sym.imp.ucrtbased.dll_strncpy]
lea eax, [ebp - 0x220]
push eax
lea eax, [ebp - 0x18]
push 0x7be764
push eax
call fcn.0053c559
lea eax, [ebp - 0x118]
push 0x7be768
push eax
call fcn.0053d030
add esp, 0x20
test eax, eax
je 0x683bf0
mov byte [eax], 0
mov al, byte [ebp - 0x110]
cmp al, 9
je 0x683bfe
cmp al, 0x20
jne 0x683c2a
imul ecx, dword [ebp - 0x248], 0x4a4
lea eax, [ebp - 0x10f]
push eax
mov eax, edi
shl eax, 7
push 0x7b9eb8
lea eax, [eax + 0x18b303c]
add eax, ecx
push eax
call fcn.0053d3a5
add esp, 0xc
imul eax, dword [ebp - 0x248], 0x129
movsx ecx, word [ebp - 0x220]
add eax, edi
inc edi
mov dword [eax*4 + 0x18b3094], ecx
cmp edi, 0xa
jl 0x683b60
sub dword [ebp - 0x284], 1
jne 0x683b5e
push dword [ebp - 0x244]
call dword [sym.imp.ucrtbased.dll_fclose]
cmp dword [esi + 0x168], 0
pop ecx
je 0x683c75
mov eax, ebx
jmp 0x683c7c
mov ecx, esi
call fcn.00537680
call fcn.0053d6cf
ret 8