Function at 0x4082ac
Capabilities:
Read file on windows
Write file on windows

Disassembly:
push 0x55c
mov eax, 0x4b81db
call fcn.0048ff65
mov ebx, ecx
xor edi, edi
push edi
push edi
mov dword [ebp - 0x560], edi
call fcn.004093e9
mov dword [ebp - 0x564], eax
push edi
mov dword [ebp - 4], edi
push edi
lea ecx, [ebp - 0x430]
mov dword [ebp - 0x430], edi
mov dword [ebp - 0x42c], edi
call fcn.004093b5
mov dword [ebp - 0x430], eax
xor eax, eax
mov dword [ebp - 0x414], 7
mov dword [ebp - 0x418], edi
mov word [ebp - 0x428], ax
mov eax, dword [ebp + 0x10]
mov byte [ebp - 4], 1
mov dword [ebx + 0x28], eax
add eax, 0x50
mov ecx, ebx
mov dword [ebx + 0x24], eax
call fcn.00407b4e
mov esi, dword [sym.imp.USER32.dll_GetDlgItem]
push 0x3ee
push dword [ebx + 4]
call esi
push 0x640000
push edi
push 0x401
push eax
mov dword [ebx + 0x3c], eax
call dword [sym.imp.USER32.dll_SendMessageW]
push 2
push dword [ebx + 4]
call esi
push 0x19
pop edi
push dword [ebx + 0x24]
lea ecx, [ebx + 0x58]
mov dword [ebx + 0x2c], eax
call fcn.0040911c
and dword [eax], 0
mov dword [eax + 4], edi
mov eax, dword [ebx + 0x24]
add eax, 0x18
push eax
lea ecx, [ebx + 0x58]
call fcn.0040911c
mov dword [eax], edi
mov dword [eax + 4], 0x32
mov eax, dword [ebx + 0x24]
add eax, 0x30
xor edi, edi
cmp dword [eax + 0x14], 8
jb 0x40838f
mov eax, dword [eax]
lea ecx, [ebp - 0x4cc]
push 3
mov dword [ebp - 0x4d0], ecx
push eax
lea ecx, [ebp - 0x4d0]
call fcn.004045ee
push 0x4d457c
push dword [ebp - 0x4d0]
call fcn.00493eaf
mov esi, eax
pop ecx
test esi, esi
pop ecx
sete al
lea ecx, [ebp - 0x4cc]
mov byte [ebp - 0x559], al
cmp dword [ebp - 0x4d0], ecx
je 0x4083e8
push dword [ebp - 0x4d0]
call fcn.0048f255
mov al, byte [ebp - 0x559]
pop ecx
test al, al
jne 0x4084d0
mov eax, dword [ebx + 0x24]
add eax, 0x18
cmp dword [eax + 0x14], 8
jb 0x4083fe
mov eax, dword [eax]
lea ecx, [ebp - 0x554]
push 3
mov dword [ebp - 0x558], ecx
push eax
lea ecx, [ebp - 0x558]
call fcn.004045ee
push 0x4d4580
push dword [ebp - 0x558]
call fcn.00493eaf
mov edi, eax
pop ecx
test edi, edi
pop ecx
sete al
lea ecx, [ebp - 0x554]
mov byte [ebp - 0x559], al
cmp dword [ebp - 0x558], ecx
je 0x408457
push dword [ebp - 0x558]
call fcn.0048f255
mov al, byte [ebp - 0x559]
pop ecx
test al, al
jne 0x4084d0
push 2
push 0xfff83000
push esi
call fcn.004942d4
add esp, 0xc
push 2
push 0
push edi
call fcn.004942d4
add esp, 0xc
jmp 0x4084c5
push esi
push 0x400
lea eax, [ebp - 0x410]
push 1
push eax
call fcn.00494199
add esp, 0x10
test eax, eax
je 0x4084c5
xor ecx, ecx
test eax, eax
je 0x4084b2
cmp byte [ebp + ecx - 0x410], 0x5b
jne 0x4084ad
mov byte [ebp + ecx - 0x410], 0x3b
inc ecx
cmp ecx, eax
jb 0x40849b
push edi
push eax
lea eax, [ebp - 0x410]
push 1
push eax
call fcn.00495c3e
add esp, 0x10
push esi
call fcn.00493dc5
pop ecx
test eax, eax
je 0x40847a
test esi, esi
je 0x4084db
push esi
call fcn.00493d4e
pop ecx
test edi, edi
je 0x4084e6
push edi
call fcn.00493d4e
pop ecx
mov edi, dword [ebp - 0x430]
push dword [ebx + 0x24]
lea ecx, [ebp - 0x430]
push dword [edi + 4]
push edi
call fcn.00409a03
push ecx
lea ecx, [ebp - 0x430]
mov esi, eax
call fcn.00409686
mov dword [edi + 4], esi
mov ecx, dword [esi + 4]
mov dword [ecx], esi
mov eax, dword [ebx + 0x24]
mov edi, dword [ebp - 0x430]
add eax, 0x18
push eax
push dword [edi + 4]
lea ecx, [ebp - 0x430]
push edi
call fcn.00409a03
push ecx
lea ecx, [ebp - 0x430]
mov esi, eax
call fcn.00409686
mov dword [edi + 4], esi
mov ecx, dword [esi + 4]
push str..zip
mov dword [ecx], esi
push dword [ebx + 0x24]
lea eax, [ebp - 0x448]
push eax
call fcn.0040954d
add esp, 0xc
lea ecx, [ebp - 0x428]
push eax
call fcn.00409050
push 0
push 1
lea ecx, [ebp - 0x448]
call fcn.00405ac5
lea eax, [ebp - 0x430]
push eax
push dword [ebp - 0x564]
lea ecx, [ebp - 0x564]
call fcn.004095e8
lea ecx, [ebp - 0x430]
call fcn.00409087
mov eax, dword [ebx + 0x24]
mov edi, dword [ebp - 0x430]
add eax, 0x18
push eax
push dword [edi + 4]
lea ecx, [ebp - 0x430]
push edi
call fcn.00409a03
push ecx
lea ecx, [ebp - 0x430]
mov esi, eax
call fcn.00409686
mov dword [edi + 4], esi
mov ecx, dword [esi + 4]
push str..zip
mov dword [ecx], esi
mov eax, dword [ebx + 0x24]
add eax, 0x18
push eax
lea eax, [ebp - 0x448]
push eax
call fcn.0040954d
add esp, 0xc
lea ecx, [ebp - 0x428]
push eax
call fcn.00409050
xor edi, edi
push edi
push 1
lea ecx, [ebp - 0x448]
call fcn.00405ac5
lea eax, [ebp - 0x430]
push eax
push dword [ebp - 0x564]
lea ecx, [ebp - 0x564]
call fcn.004095e8
push ecx
push ecx
lea eax, [ebp - 0x564]
mov ecx, esp
push eax
lea esi, [ebx + 0x20]
call fcn.004090b1
push esi
lea ecx, [ebx + 0x40]
call fcn.0041af03
push 0x3f1
push dword [ebx + 4]
call dword [sym.imp.USER32.dll_GetDlgItem]
push 0x7ff8
push edi
mov esi, eax
call dword [sym.imp.USER32.dll_LoadBitmapW]
push eax
push edi
push 0x172
push esi
call dword [sym.imp.USER32.dll_SendMessageW]
mov eax, dword [ebx + 0x28]
cmp dword [eax + 0xb0], edi
je 0x408678
push 5
push dword [ebx + 4]
call dword [sym.imp.USER32.dll_ShowWindow]
lea ecx, [ebp - 0x430]
call fcn.004086a5
lea ecx, [ebp - 0x564]
call fcn.0040929b
push dword [ebp - 0x564]
call fcn.00449b2b
xor eax, eax
pop ecx
inc eax
call fcn.0048ff14
ret 0x10