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

Disassembly:
push 0x55c
mov eax, 0x4f08ba
call fcn.004bcfcf
mov edi, ecx
xor esi, esi
push esi
push esi
mov dword [ebp - 0x564], esi
mov dword [ebp - 0x560], esi
call fcn.0042e948
mov dword [ebp - 0x564], eax
lea ecx, [ebp - 0x430]
mov dword [ebp - 4], 2
call fcn.0042dd0c
mov eax, dword [ebp + 0x10]
mov ecx, edi
mov byte [ebp - 4], 3
mov dword [edi + 0x28], eax
add eax, 0x50
mov dword [edi + 0x24], eax
call fcn.0042cfc2
mov ebx, dword [sym.imp.USER32.dll_GetDlgItem]
push 0x3ee
push dword [edi + 4]
call ebx
push 0x640000
push esi
push 0x401
push eax
mov dword [edi + 0x3c], eax
call dword [sym.imp.USER32.dll_SendMessageW]
push 2
push dword [edi + 4]
call ebx
push 0x19
pop ebx
push dword [edi + 0x24]
lea ecx, [edi + 0x58]
mov dword [edi + 0x2c], eax
call fcn.0042e79e
lea ecx, [edi + 0x58]
and dword [eax], esi
mov dword [eax + 4], ebx
mov eax, dword [edi + 0x24]
add eax, 0x18
push eax
call fcn.0042e79e
mov dword [eax], ebx
xor ebx, ebx
mov dword [eax + 4], 0x32
mov eax, dword [edi + 0x24]
add eax, 0x30
cmp dword [eax + 0x14], 8
jb 0x42da01
mov eax, dword [eax]
lea ecx, [ebp - 0x4cc]
push 3
mov dword [ebp - 0x4d0], ecx
lea ecx, [ebp - 0x4d0]
push eax
call fcn.0042403f
mov byte [ebp - 4], 4
push 0x50fac8
push dword [ebp - 0x4d0]
call fcn.004c0ed5
mov esi, eax
mov byte [ebp - 4], 3
pop ecx
test esi, esi
pop ecx
sete al
lea ecx, [ebp - 0x4cc]
mov byte [ebp - 0x559], al
cmp dword [ebp - 0x4d0], ecx
je 0x42da62
push dword [ebp - 0x4d0]
call fcn.004bbc6e
mov al, byte [ebp - 0x559]
pop ecx
test al, al
jne 0x42db52
mov eax, dword [edi + 0x24]
add eax, 0x18
cmp dword [eax + 0x14], 8
jb 0x42da78
mov eax, dword [eax]
lea ecx, [ebp - 0x554]
push 3
mov dword [ebp - 0x558], ecx
lea ecx, [ebp - 0x558]
push eax
call fcn.0042403f
mov byte [ebp - 4], 5
push 0x5123ec
push dword [ebp - 0x558]
call fcn.004c0ed5
mov ebx, eax
mov byte [ebp - 4], 3
pop ecx
test ebx, ebx
pop ecx
sete al
lea ecx, [ebp - 0x554]
mov byte [ebp - 0x559], al
cmp dword [ebp - 0x558], ecx
je 0x42dad9
push dword [ebp - 0x558]
call fcn.004bbc6e
mov al, byte [ebp - 0x559]
pop ecx
test al, al
jne 0x42db52
push 2
push 0xfff83000
push esi
call fcn.004c13fe
add esp, 0xc
push 2
push 0
push ebx
call fcn.004c13fe
add esp, 0xc
jmp 0x42db47
push esi
push 0x400
lea eax, [ebp - 0x410]
push 1
push eax
call fcn.004c12c3
add esp, 0x10
test eax, eax
je 0x42db47
xor ecx, ecx
test eax, eax
je 0x42db34
cmp byte [ebp + ecx - 0x410], 0x5b
jne 0x42db2f
mov byte [ebp + ecx - 0x410], 0x3b
inc ecx
cmp ecx, eax
jb 0x42db1d
push ebx
push eax
lea eax, [ebp - 0x410]
push 1
push eax
call fcn.004c2abe
add esp, 0x10
push esi
call fcn.004c0dc5
pop ecx
test eax, eax
je 0x42dafc
test esi, esi
je 0x42db5d
push esi
call fcn.004c0d4e
pop ecx
test ebx, ebx
je 0x42db68
push ebx
call fcn.004c0d4e
pop ecx
push dword [edi + 0x24]
lea ecx, [ebp - 0x430]
push dword [ebp - 0x430]
call fcn.0042eb02
mov eax, dword [edi + 0x24]
lea ecx, [ebp - 0x430]
add eax, 0x18
push eax
push dword [ebp - 0x430]
call fcn.0042eb02
mov esi, str..zip
lea eax, [ebp - 0x448]
push esi
push dword [edi + 0x24]
push eax
call fcn.00424515
add esp, 0xc
push eax
lea ecx, [ebp - 0x428]
mov byte [ebp - 4], 6
call fcn.00406d10
lea ecx, [ebp - 0x448]
mov byte [ebp - 4], 3
call fcn.00402a40
lea eax, [ebp - 0x430]
push eax
push dword [ebp - 0x564]
lea ecx, [ebp - 0x564]
call fcn.0042eb32
lea ecx, [ebp - 0x430]
call fcn.0042e701
mov eax, dword [edi + 0x24]
lea ecx, [ebp - 0x430]
add eax, 0x18
push eax
push dword [ebp - 0x430]
call fcn.0042eb02
mov eax, dword [edi + 0x24]
add eax, 0x18
push esi
push eax
lea eax, [ebp - 0x448]
push eax
call fcn.00424515
add esp, 0xc
push eax
lea ecx, [ebp - 0x428]
mov byte [ebp - 4], 7
call fcn.00406d10
lea ecx, [ebp - 0x448]
mov byte [ebp - 4], 3
call fcn.00402a40
lea eax, [ebp - 0x430]
push eax
push dword [ebp - 0x564]
lea ecx, [ebp - 0x564]
call fcn.0042eb32
push ecx
push ecx
lea eax, [ebp - 0x564]
mov dword [ebp - 0x568], esp
mov ecx, esp
lea esi, [edi + 0x20]
push eax
call fcn.0042e72b
mov byte [ebp - 4], 8
lea ecx, [edi + 0x40]
push esi
mov byte [ebp - 4], 3
call fcn.0043f7bd
push 0x3f1
push dword [edi + 4]
call dword [sym.imp.USER32.dll_GetDlgItem]
push 0x7ff8
xor ebx, ebx
mov esi, eax
push ebx
call dword [sym.imp.USER32.dll_LoadBitmapW]
push eax
push ebx
push 0x172
push esi
call dword [sym.imp.USER32.dll_SendMessageW]
mov eax, dword [edi + 0x28]
cmp dword [eax + 0xb0], ebx
je 0x42dcc0
push 5
push dword [edi + 4]
call dword [sym.imp.USER32.dll_ShowWindow]
lea ecx, [ebp - 0x428]
mov byte [ebp - 4], 2
call fcn.00402a40
lea ecx, [ebp - 0x430]
call fcn.0042e701
push dword [ebp - 0x430]
call fcn.0048185e
or dword [ebp - 4], 0xffffffff
pop ecx
lea ecx, [ebp - 0x564]
call fcn.0042e858
push dword [ebp - 0x564]
call fcn.0048185e
xor eax, eax
pop ecx
inc eax
call fcn.004bcf7e
ret 0x10