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

Disassembly:
push ebp
mov ebp, esp
push ebx
push edi
push esi
mov eax, 0x1070
call fcn.0040b7a0
mov eax, dword [ebp + 0xc]
mov dword [ebp - 0x1058], eax
mov eax, dword [ebp + 8]
mov dword [ebp - 0x1054], eax
mov eax, dword [section..data]
xor eax, ebp
mov dword [ebp - 0x10], eax
mov dword [ebp - 0x1050], 0x7ef604b6
mov eax, dword [ebp - 0x1050]
mov dword [ebp - 0x105c], eax
sub eax, 0x81494ee2
je 0x40143c
jmp 0x401052
mov eax, dword [ebp - 0x105c]
sub eax, 0x81864be1
je 0x401835
jmp 0x401068
mov eax, dword [ebp - 0x105c]
sub eax, 0x913a28f5
je 0x40142d
jmp 0x40107e
mov eax, dword [ebp - 0x105c]
sub eax, 0x93afbd4b
je 0x401968
jmp 0x401094
mov eax, dword [ebp - 0x105c]
sub eax, 0x9de5aea2
je 0x40194a
jmp 0x4010aa
mov eax, dword [ebp - 0x105c]
sub eax, 0xa4473f20
je 0x401a1e
jmp 0x4010c0
mov eax, dword [ebp - 0x105c]
sub eax, 0xab2cd9dc
je 0x40157f
jmp 0x4010d6
mov eax, dword [ebp - 0x105c]
sub eax, 0xb31d1ba0
je 0x4019a9
jmp 0x4010ec
mov eax, dword [ebp - 0x105c]
sub eax, 0xb9a2eb34
je 0x401511
jmp 0x401102
mov eax, dword [ebp - 0x105c]
sub eax, 0xbc07b238
je 0x401495
jmp 0x401118
mov eax, dword [ebp - 0x105c]
sub eax, 0xbcea16a0
je 0x401886
jmp 0x40112e
mov eax, dword [ebp - 0x105c]
sub eax, 0xc377500a
je 0x4017a8
jmp 0x401144
mov eax, dword [ebp - 0x105c]
sub eax, 0xcf9afe72
je 0x401696
jmp 0x40115a
mov eax, dword [ebp - 0x105c]
sub eax, 0xd164c62d
je 0x4017b7
jmp 0x401170
mov eax, dword [ebp - 0x105c]
sub eax, 0xd3164cb7
je 0x401a0f
jmp 0x401186
mov eax, dword [ebp - 0x105c]
sub eax, 0xecb98cdf
je 0x401a33
jmp 0x40119c
mov eax, dword [ebp - 0x105c]
sub eax, 0xfd915659
je 0x4019e3
jmp 0x4011b2
mov eax, dword [ebp - 0x105c]
sub eax, 0x4e21449
je 0x401617
jmp 0x4011c8
mov eax, dword [ebp - 0x105c]
sub eax, 0x7a8d46f
je 0x4016e7
jmp 0x4011de
mov eax, dword [ebp - 0x105c]
sub eax, 0xa4a98c7
je 0x401792
jmp 0x4011f4
mov eax, dword [ebp - 0x105c]
sub eax, 0xc84ab97
je 0x401771
jmp 0x40120a
mov eax, dword [ebp - 0x105c]
sub eax, 0xf098f9f
je 0x401903
jmp 0x401220
mov eax, dword [ebp - 0x105c]
sub eax, 0x1c0e807e
je 0x4015fc
jmp 0x401236
mov eax, dword [ebp - 0x105c]
sub eax, 0x23c79c25
je 0x40166c
jmp 0x40124c
mov eax, dword [ebp - 0x105c]
sub eax, 0x2f2163e7
je 0x4013f6
jmp 0x401262
mov eax, dword [ebp - 0x105c]
sub eax, 0x46503f65
je 0x4018f4
jmp 0x401278
mov eax, dword [ebp - 0x105c]
sub eax, 0x50209ab7
je 0x4014b8
jmp 0x40128e
mov eax, dword [ebp - 0x105c]
sub eax, 0x5028192d
je 0x401417
jmp 0x4012a4
mov eax, dword [ebp - 0x105c]
sub eax, 0x5d5c7026
je 0x4015ed
jmp 0x4012ba
mov eax, dword [ebp - 0x105c]
sub eax, 0x611a464a
je 0x4014fb
jmp 0x4012d0
mov eax, dword [ebp - 0x105c]
sub eax, 0x753395ba
je 0x4017de
jmp 0x4012e6
mov eax, dword [ebp - 0x105c]
sub eax, 0x76310080
je 0x4019c6
jmp 0x4012fc
mov eax, dword [ebp - 0x105c]
sub eax, 0x77e615c6
je 0x401959
jmp 0x401312
mov eax, dword [ebp - 0x105c]
sub eax, 0x78e95581
je 0x40167b
jmp 0x401328
mov eax, dword [ebp - 0x105c]
sub eax, 0x7d691315
je 0x401929
jmp 0x40133e
mov eax, dword [ebp - 0x105c]
sub eax, 0x7d6e072d
je 0x4014d3
jmp 0x401354
mov eax, dword [ebp - 0x105c]
sub eax, 0x7ef604b6
je 0x40136f
jmp 0x40136a
jmp 0x401a3d
mov eax, dword [ebp - 0x1054]
mov ecx, dword [ebp - 0x1058]
mov dword [ebp - 0x103c], ecx
mov dword [ebp - 0x1040], eax
mov eax, dword [ebp - 0x1040]
xor ecx, ecx
mov dword [esp], eax
mov dword [esp + 4], 0x80000000
mov dword [esp + 8], 1
mov dword [esp + 0xc], 0
mov dword [esp + 0x10], 3
mov dword [esp + 0x14], 0x80
mov dword [esp + 0x18], 0
call dword [sym.imp.KERNEL32.dll_CreateFileA]
sub esp, 0x1c
mov dword [ebp - 0x1044], eax
mov eax, 0xffffffff
cmp dword [ebp - 0x1044], eax
sete al
and al, 1
mov byte [ebp - 0x1035], al
mov dword [ebp - 0x1050], 0x2f2163e7
jmp 0x401a3d
mov dl, byte [ebp - 0x1035]
mov eax, 0x81494ee2
mov ecx, 0x5028192d
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x1050], eax
jmp 0x401a3d
mov byte [ebp - 0x1036], 0
mov dword [ebp - 0x1050], 0x913a28f5
jmp 0x401a3d
mov dword [ebp - 0x1050], 0x76310080
jmp 0x401a3d
mov eax, dword [ebp - 0x103c]
xor ecx, ecx
mov dword [esp], eax
mov dword [esp + 4], 0x40000000
mov dword [esp + 8], 0
mov dword [esp + 0xc], 0
mov dword [esp + 0x10], 2
mov dword [esp + 0x14], 0x80
mov dword [esp + 0x18], 0
call dword [sym.imp.KERNEL32.dll_CreateFileA]
sub esp, 0x1c
mov dword [ebp - 0x1048], eax
mov dword [ebp - 0x1050], 0xbc07b238
jmp 0x401a3d
mov edx, 0xffffffff
mov eax, 0x611a464a
mov ecx, 0x50209ab7
cmp dword [ebp - 0x1048], edx
cmove eax, ecx
mov dword [ebp - 0x1050], eax
jmp 0x401a3d
mov eax, dword [ebp - 0x1044]
mov dword [ebp - 0x1034], eax
mov dword [ebp - 0x1050], 0x7d6e072d
jmp 0x401a3d
mov eax, dword [ebp - 0x1034]
mov dword [esp], eax
call dword [sym.imp.KERNEL32.dll_CloseHandle]
sub esp, 4
mov byte [ebp - 0x1036], 0
mov dword [ebp - 0x1050], 0x76310080
jmp 0x401a3d
mov byte [ebp - 0x1049], 0
mov dword [ebp - 0x1050], 0xb9a2eb34
jmp 0x401a3d
mov ecx, dword [0x42139c]
mov eax, dword [0x421398]
xor esi, esi
sub esi, 1
mov edx, ecx
add edx, esi
imul ecx, edx
and ecx, 1
cmp ecx, 0
sete bl
cmp eax, 0xa
setl dh
mov al, bl
xor al, 0xff
mov ah, dh
xor ah, 0xff
mov cl, 1
xor cl, 1
mov dl, al
and dl, 0xff
and bl, cl
mov ch, ah
and ch, 0xff
and dh, cl
or dl, bl
or ch, dh
xor dl, ch
or al, ah
xor al, 0xff
or cl, 1
and al, cl
or dl, al
mov eax, 0xd3164cb7
mov ecx, 0xab2cd9dc
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x1050], eax
jmp 0x401a3d
mov ecx, dword [0x42139c]
mov eax, dword [0x421398]
xor esi, esi
sub esi, 1
mov edx, ecx
add edx, esi
imul ecx, edx
and ecx, 1
cmp ecx, 0
sete bl
cmp eax, 0xa
setl dh
mov al, bl
xor al, 0xff
mov ah, dh
xor ah, 0xff
mov cl, 1
xor cl, 1
mov dl, al
and dl, 0xff
and bl, cl
mov ch, ah
and ch, 0xff
and dh, cl
or dl, bl
or ch, dh
xor dl, ch
or al, ah
xor al, 0xff
or cl, 1
and al, cl
or dl, al
mov eax, 0xd3164cb7
mov ecx, 0x5d5c7026
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x1050], eax
jmp 0x401a3d
mov dword [ebp - 0x1050], 0x1c0e807e
jmp 0x401a3d
lea eax, [ebp - 0x1010]
mov dword [ebp - 0x1030], eax
mov dword [ebp - 0x1050], 0x4e21449
jmp 0x401a3d
mov edx, dword [ebp - 0x1044]
mov ecx, dword [ebp - 0x1030]
lea eax, [ebp - 0x1018]
xor esi, esi
mov dword [esp], edx
mov dword [esp + 4], ecx
mov dword [esp + 8], 0x1000
mov dword [esp + 0xc], eax
mov dword [esp + 0x10], 0
call dword [sym.imp.KERNEL32.dll_ReadFile]
sub esp, 0x14
mov edx, eax
mov eax, 0x23c79c25
mov ecx, 0x78e95581
cmp edx, 0
cmovne eax, ecx
mov dword [ebp - 0x1050], eax
jmp 0x401a3d
mov dword [ebp - 0x1050], 0x93afbd4b
jmp 0x401a3d
mov eax, dword [ebp - 0x1018]
mov dword [ebp - 0x102c], eax
mov dword [ebp - 0x1050], 0xcf9afe72
jmp 0x401a3d
mov eax, dword [0x42139c]
mov ecx, dword [0x421398]
mov edx, eax
add edx, 0x6a7150a3
sub edx, 1
sub edx, 0x6a7150a3
imul eax, edx
and eax, 1
cmp eax, 0
sete al
cmp ecx, 0xa
setl cl
mov dl, al
and dl, cl
xor al, cl
or dl, al
mov eax, 0xa4473f20
mov ecx, 0x7a8d46f
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x1050], eax
jmp 0x401a3d
mov eax, dword [ebp - 0x102c]
cmp eax, 0
sete al
and al, 1
mov byte [ebp - 0x1025], al
mov ecx, dword [0x42139c]
mov eax, dword [0x421398]
mov edx, ecx
sub edx, 0x1ada041f
sub edx, 1
add edx, 0x1ada041f
imul ecx, edx
and ecx, 1
cmp ecx, 0
sete bl
cmp eax, 0xa
setl dh
mov al, bl
xor al, 0xff
mov ah, dh
xor ah, 0xff
mov cl, 1
xor cl, 1
mov dl, al
and dl, 0xff
and bl, cl
mov ch, ah
and ch, 0xff
and dh, cl
or dl, bl
or ch, dh
xor dl, ch
or al, ah
xor al, 0xff
or cl, 1
and al, cl
or dl, al
mov eax, 0xa4473f20
mov ecx, 0xc84ab97
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x1050], eax
jmp 0x401a3d
mov dl, byte [ebp - 0x1025]
mov eax, 0xd164c62d
mov ecx, 0xa4a98c7
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x1050], eax
jmp 0x401a3d
mov byte [ebp - 0x1049], 1
mov dword [ebp - 0x1050], 0xc377500a
jmp 0x401a3d
mov dword [ebp - 0x1050], 0x93afbd4b
jmp 0x401a3d
mov eax, dword [ebp - 0x1018]
mov dword [ebp - 0x1024], eax
lea eax, [ebp - 0x1010]
mov dword [ebp - 0x1020], eax
mov dword [ebp - 0x1050], 0x753395ba
jmp 0x401a3d
mov esi, dword [ebp - 0x1048]
mov ecx, dword [ebp - 0x1024]
mov edx, dword [ebp - 0x1020]
lea eax, [ebp - 0x1014]
xor edi, edi
mov dword [esp], esi
mov dword [esp + 4], edx
mov dword [esp + 8], ecx
mov dword [esp + 0xc], eax
mov dword [esp + 0x10], 0
call dword [sym.imp.KERNEL32.dll_WriteFile]
sub esp, 0x14
mov edx, eax
mov eax, 0x81864be1
mov ecx, 0xf098f9f
cmp edx, 0
cmovne eax, ecx
mov dword [ebp - 0x1050], eax
jmp 0x401a3d
mov eax, dword [0x42139c]
mov ecx, dword [0x421398]
mov edx, eax
add edx, 0x2a01dc4e
sub edx, 1
sub edx, 0x2a01dc4e
imul eax, edx
and eax, 1
cmp eax, 0
sete al
cmp ecx, 0xa
setl cl
mov dl, al
and dl, cl
xor al, cl
or dl, al
mov eax, 0xecb98cdf
mov ecx, 0xbcea16a0
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x1050], eax
jmp 0x401a3d
mov ecx, dword [0x42139c]
mov eax, dword [0x421398]
xor esi, esi
sub esi, 1
mov edx, ecx
add edx, esi
imul ecx, edx
and ecx, 1
cmp ecx, 0
sete bl
cmp eax, 0xa
setl dh
mov al, bl
xor al, 0xff
mov ah, dh
xor ah, 0xff
mov cl, 1
xor cl, 1
mov dl, al
and dl, 0xff
and bl, cl
mov ch, ah
and ch, 0xff
and dh, cl
or dl, bl
or ch, dh
xor dl, ch
or al, ah
xor al, 0xff
or cl, 1
and al, cl
or dl, al
mov eax, 0xecb98cdf
mov ecx, 0x46503f65
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x1050], eax
jmp 0x401a3d
mov dword [ebp - 0x1050], 0x93afbd4b
jmp 0x401a3d
mov eax, dword [ebp - 0x1014]
cmp eax, dword [ebp - 0x1018]
setne al
and al, 1
mov byte [ebp - 0x101b], al
mov dword [ebp - 0x1050], 0x7d691315
jmp 0x401a3d
mov dl, byte [ebp - 0x101b]
mov eax, 0x77e615c6
mov ecx, 0x9de5aea2
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x1050], eax
jmp 0x401a3d
mov dword [ebp - 0x1050], 0x93afbd4b
jmp 0x401a3d
mov dword [ebp - 0x1050], 0x1c0e807e
jmp 0x401a3d
mov eax, dword [ebp - 0x1044]
mov dword [esp], eax
call dword [sym.imp.KERNEL32.dll_CloseHandle]
sub esp, 4
mov eax, dword [ebp - 0x1048]
mov dword [esp], eax
call dword [sym.imp.KERNEL32.dll_CloseHandle]
sub esp, 4
mov al, byte [ebp - 0x1049]
and al, 1
mov byte [ebp - 0x101a], al
mov dword [ebp - 0x1050], 0xb31d1ba0
jmp 0x401a3d
mov al, byte [ebp - 0x101a]
and al, 1
mov byte [ebp - 0x1036], al
mov dword [ebp - 0x1050], 0x76310080
jmp 0x401a3d
mov al, byte [ebp - 0x1036]
and al, 1
mov byte [ebp - 0x1019], al
mov dword [ebp - 0x1050], 0xfd915659
jmp 0x401a3d
mov al, byte [ebp - 0x1019]
and al, 1
movzx eax, al
mov dword [ebp - 0x1060], eax
mov ecx, dword [ebp - 0x10]
xor ecx, ebp
call fcn.0040b7cb
mov eax, dword [ebp - 0x1060]
add esp, 0x1070
pop esi
pop edi
pop ebx
pop ebp
ret
mov dword [ebp - 0x1050], 0xab2cd9dc
jmp 0x401a3d
mov eax, dword [ebp - 0x102c]
mov dword [ebp - 0x1050], 0x7a8d46f
jmp 0x401a3d
mov dword [ebp - 0x1050], 0xbcea16a0
jmp 0x401036