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

Disassembly:
push ebp
mov ebp, esp
push ebx
push edi
push esi
sub esp, 0x7c
mov eax, dword [ebp + 0xc]
mov dword [ebp - 0x80], eax
mov eax, dword [ebp + 8]
mov dword [ebp - 0x7c], eax
mov eax, dword [0x441080]
xor eax, ebp
mov dword [ebp - 0x10], eax
mov ecx, dword [0x442584]
mov eax, dword [0x442580]
xor esi, esi
sub esi, 1
mov edx, ecx
add edx, esi
imul ecx, edx
and ecx, 1
cmp ecx, 0
sete cl
and cl, 1
mov byte [ebp - 0x72], cl
cmp eax, 0xa
setl al
and al, 1
mov byte [ebp - 0x71], al
mov dword [ebp - 0x78], 0x534e1dce
mov eax, dword [ebp - 0x78]
mov dword [ebp - 0x84], eax
sub eax, 0x8a8d1776
je 0x40fa16
jmp 0x40f2e0
mov eax, dword [ebp - 0x84]
sub eax, 0x905e515f
je 0x40fdfb
jmp 0x40f2f6
mov eax, dword [ebp - 0x84]
sub eax, 0x93a88e98
je 0x40ff35
jmp 0x40f30c
mov eax, dword [ebp - 0x84]
sub eax, 0x9eb03ade
je 0x4100f9
jmp 0x40f322
mov eax, dword [ebp - 0x84]
sub eax, 0xa3465061
je 0x40fa34
jmp 0x40f338
mov eax, dword [ebp - 0x84]
sub eax, 0xacc78f2f
je 0x410422
jmp 0x40f34e
mov eax, dword [ebp - 0x84]
sub eax, 0xadd6f37b
je 0x410416
jmp 0x40f364
mov eax, dword [ebp - 0x84]
sub eax, 0xb01ab8b9
je 0x410366
jmp 0x40f37a
mov eax, dword [ebp - 0x84]
sub eax, 0xb397955e
je 0x40fb3b
jmp 0x40f390
mov eax, dword [ebp - 0x84]
sub eax, 0xb3ad7272
je 0x410440
jmp 0x40f3a6
mov eax, dword [ebp - 0x84]
sub eax, 0xb9a1cf69
je 0x41019b
jmp 0x40f3bc
mov eax, dword [ebp - 0x84]
sub eax, 0xbe9b2b48
je 0x40fc47
jmp 0x40f3d2
mov eax, dword [ebp - 0x84]
sub eax, 0xc57fa323
je 0x40fd72
jmp 0x40f3e8
mov eax, dword [ebp - 0x84]
sub eax, 0xc923c7b3
je 0x4101a7
jmp 0x40f3fe
mov eax, dword [ebp - 0x84]
sub eax, 0xd14e5f43
je 0x41005e
jmp 0x40f414
mov eax, dword [ebp - 0x84]
sub eax, 0xd5c6062e
je 0x40ff41
jmp 0x40f42a
mov eax, dword [ebp - 0x84]
sub eax, 0xdea710f7
je 0x40fe6a
jmp 0x40f440
mov eax, dword [ebp - 0x84]
sub eax, 0xe494c602
je 0x40fc35
jmp 0x40f456
mov eax, dword [ebp - 0x84]
sub eax, 0xe9a30d6c
je 0x40fb47
jmp 0x40f46c
mov eax, dword [ebp - 0x84]
sub eax, 0xecb6680d
je 0x410281
jmp 0x40f482
mov eax, dword [ebp - 0x84]
sub eax, 0xedc0d88c
je 0x40f88b
jmp 0x40f498
mov eax, dword [ebp - 0x84]
sub eax, 0xf232e90e
je 0x40fcf2
jmp 0x40f4ae
mov eax, dword [ebp - 0x84]
sub eax, 0xf61f69ee
je 0x4102fd
jmp 0x40f4c4
mov eax, dword [ebp - 0x84]
sub eax, 0xff2c8712
je 0x40f807
jmp 0x40f4da
mov eax, dword [ebp - 0x84]
sub eax, 0x3258923
je 0x40fd99
jmp 0x40f4f0
mov eax, dword [ebp - 0x84]
sub eax, 0x9cf9aac
je 0x40fc7f
jmp 0x40f506
mov eax, dword [ebp - 0x84]
sub eax, 0xdc70d6d
je 0x4103cc
jmp 0x40f51c
mov eax, dword [ebp - 0x84]
sub eax, 0xe77b5ef
je 0x41042e
jmp 0x40f532
mov eax, dword [ebp - 0x84]
sub eax, 0x12765183
je 0x4102f1
jmp 0x40f548
mov eax, dword [ebp - 0x84]
sub eax, 0x1388330a
je 0x40f9ef
jmp 0x40f55e
mov eax, dword [ebp - 0x84]
sub eax, 0x1572629f
je 0x40fc59
jmp 0x40f574
mov eax, dword [ebp - 0x84]
sub eax, 0x19ea469e
je 0x40fdad
jmp 0x40f58a
mov eax, dword [ebp - 0x84]
sub eax, 0x1c18f2bc
je 0x41018f
jmp 0x40f5a0
mov eax, dword [ebp - 0x84]
sub eax, 0x2aef0522
je 0x40fe7c
jmp 0x40f5b6
mov eax, dword [ebp - 0x84]
sub eax, 0x2c7c8b45
je 0x410086
jmp 0x40f5cc
mov eax, dword [ebp - 0x84]
sub eax, 0x2c849d5e
je 0x41028d
jmp 0x40f5e2
mov eax, dword [ebp - 0x84]
sub eax, 0x2cdf9bdd
je 0x40fb95
jmp 0x40f5f8
mov eax, dword [ebp - 0x84]
sub eax, 0x30a2ef3b
je 0x40fbfd
jmp 0x40f60e
mov eax, dword [ebp - 0x84]
sub eax, 0x32705b4c
je 0x40fc65
jmp 0x40f624
mov eax, dword [ebp - 0x84]
sub eax, 0x342b5e86
je 0x41021a
jmp 0x40f63a
mov eax, dword [ebp - 0x84]
sub eax, 0x359d9b1c
je 0x40f9fb
jmp 0x40f650
mov eax, dword [ebp - 0x84]
sub eax, 0x3833e1a4
je 0x41006a
jmp 0x40f666
mov eax, dword [ebp - 0x84]
sub eax, 0x3a13c0bc
je 0x40fc18
jmp 0x40f67c
mov eax, dword [ebp - 0x84]
sub eax, 0x3c83302c
je 0x40fe4f
jmp 0x40f692
mov eax, dword [ebp - 0x84]
sub eax, 0x4183d48d
je 0x40ffa5
jmp 0x40f6a8
mov eax, dword [ebp - 0x84]
sub eax, 0x4797cfb3
je 0x4103b5
jmp 0x40f6be
mov eax, dword [ebp - 0x84]
sub eax, 0x4d28cd24
je 0x40fff3
jmp 0x40f6d4
mov eax, dword [ebp - 0x84]
sub eax, 0x4fdaeca1
je 0x4102cb
jmp 0x40f6ea
mov eax, dword [ebp - 0x84]
sub eax, 0x50c1d687
je 0x40fa28
jmp 0x40f700
mov eax, dword [ebp - 0x84]
sub eax, 0x515e1852
je 0x410174
jmp 0x40f716
mov eax, dword [ebp - 0x84]
sub eax, 0x534e1dce
je 0x40f7e1
jmp 0x40f72c
mov eax, dword [ebp - 0x84]
sub eax, 0x5ed5c45f
je 0x40f8fe
jmp 0x40f742
mov eax, dword [ebp - 0x84]
sub eax, 0x63b58c8e
je 0x40fd8d
jmp 0x40f758
mov eax, dword [ebp - 0x84]
sub eax, 0x64ce95c4
je 0x40f87f
jmp 0x40f76e
mov eax, dword [ebp - 0x84]
sub eax, 0x6658c136
je 0x410407
jmp 0x40f784
mov eax, dword [ebp - 0x84]
sub eax, 0x667648b3
je 0x40ff5b
jmp 0x40f79a
mov eax, dword [ebp - 0x84]
sub eax, 0x6db7f293
je 0x40faa7
jmp 0x40f7b0
mov eax, dword [ebp - 0x84]
sub eax, 0x782897f0
je 0x40feca
jmp 0x40f7c6
mov eax, dword [ebp - 0x84]
sub eax, 0x7fcb320f
je 0x4102b5
jmp 0x40f7dc
jmp 0x41045b
mov al, byte [ebp - 0x72]
mov cl, byte [ebp - 0x71]
mov dl, al
and dl, cl
xor al, cl
or dl, al
mov eax, 0x12765183
mov ecx, 0xff2c8712
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x78], eax
jmp 0x41045b
push eax
mov eax, esp
mov dword [ebp - 0x70], eax
push eax
mov eax, esp
mov dword [ebp - 0x6c], eax
push eax
mov eax, esp
mov dword [ebp - 0x68], eax
push eax
mov eax, esp
mov dword [ebp - 0x64], eax
push eax
mov eax, esp
mov dword [ebp - 0x60], eax
push eax
mov eax, esp
mov dword [ebp - 0x5c], eax
push eax
mov eax, esp
mov dword [ebp - 0x58], eax
mov eax, dword [0x442584]
mov ecx, dword [0x442580]
mov edx, eax
add edx, 0xa7162e14
sub edx, 1
sub edx, 0xa7162e14
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, 0x12765183
mov ecx, 0x64ce95c4
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x78], eax
jmp 0x41045b
mov dword [ebp - 0x78], 0xedc0d88c
jmp 0x41045b
mov ecx, dword [0x442584]
mov eax, dword [0x442580]
mov edx, ecx
sub edx, 0x6f33cbc1
sub edx, 1
add edx, 0x6f33cbc1
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, 0
mov dl, al
and dl, 0
and bl, cl
mov ch, ah
and ch, 0
and dh, cl
or dl, bl
or ch, dh
xor dl, ch
or al, ah
xor al, 0xff
or cl, 0
and al, cl
or dl, al
mov eax, 0xf61f69ee
mov ecx, 0x5ed5c45f
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x78], eax
jmp 0x41045b
mov ecx, dword [ebp - 0x7c]
mov edx, dword [ebp - 0x80]
push eax
sub esp, 0xffc
mov eax, esp
mov dword [ebp - 0x54], eax
push eax
mov eax, esp
mov dword [ebp - 0x50], eax
mov eax, dword [ebp - 0x6c]
mov dword [eax], edx
mov eax, dword [ebp - 0x68]
mov dword [eax], ecx
mov eax, dword [ebp - 0x68]
mov eax, dword [eax]
xor ecx, ecx
sub esp, 0x1c
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]
mov ecx, eax
mov eax, dword [ebp - 0x64]
mov dword [eax], ecx
mov eax, dword [ebp - 0x64]
mov ecx, 0xffffffff
cmp dword [eax], ecx
sete al
and al, 1
mov byte [ebp - 0x49], al
mov ecx, dword [0x442584]
mov eax, dword [0x442580]
mov edx, ecx
sub edx, 0x51769479
sub edx, 1
add edx, 0x51769479
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, 0xf61f69ee
mov ecx, 0x1388330a
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x78], eax
jmp 0x41045b
mov dword [ebp - 0x78], 0x359d9b1c
jmp 0x41045b
mov dl, byte [ebp - 0x49]
mov eax, 0xa3465061
mov ecx, 0x8a8d1776
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x78], eax
jmp 0x41045b
mov eax, dword [ebp - 0x70]
mov byte [eax], 0
mov dword [ebp - 0x78], 0x50c1d687
jmp 0x41045b
mov dword [ebp - 0x78], 0x7fcb320f
jmp 0x41045b
mov ecx, dword [0x442584]
mov eax, dword [0x442580]
mov edx, ecx
add edx, 0x7ea85335
sub edx, 1
sub edx, 0x7ea85335
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, 0
mov dl, al
and dl, 0
and bl, cl
mov ch, ah
and ch, 0
and dh, cl
or dl, bl
or ch, dh
xor dl, ch
or al, ah
xor al, 0xff
or cl, 0
and al, cl
or dl, al
mov eax, 0xb01ab8b9
mov ecx, 0x6db7f293
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x78], eax
jmp 0x41045b
mov eax, dword [ebp - 0x6c]
mov eax, dword [eax]
xor ecx, ecx
sub esp, 0x1c
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]
mov dword [ebp - 0x48], eax
mov eax, dword [0x442584]
mov ecx, dword [0x442580]
mov edx, eax
sub edx, 0x4cfab19f
sub edx, 1
add edx, 0x4cfab19f
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, 0xb01ab8b9
mov ecx, 0xb397955e
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x78], eax
jmp 0x41045b
mov dword [ebp - 0x78], 0xe9a30d6c
jmp 0x41045b
mov eax, dword [0x442584]
mov ecx, dword [0x442580]
mov edx, eax
sub edx, 0xc8643503
sub edx, 1
add edx, 0xc8643503
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, 0x4797cfb3
mov ecx, 0x2cdf9bdd
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x78], eax
jmp 0x41045b
mov eax, dword [ebp - 0x60]
mov ecx, dword [ebp - 0x48]
mov dword [eax], ecx
mov eax, dword [ebp - 0x60]
mov ecx, 0xffffffff
cmp dword [eax], ecx
sete al
and al, 1
mov byte [ebp - 0x41], al
mov eax, dword [0x442584]
mov ecx, dword [0x442580]
mov edx, eax
sub edx, 0x899848ba
sub edx, 1
add edx, 0x899848ba
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, 0x4797cfb3
mov ecx, 0x30a2ef3b
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x78], eax
jmp 0x41045b
mov dl, byte [ebp - 0x41]
mov eax, 0xbe9b2b48
mov ecx, 0x3a13c0bc
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x78], eax
jmp 0x41045b
mov eax, dword [ebp - 0x64]
mov eax, dword [eax]
sub esp, 4
mov dword [esp], eax
call dword [sym.imp.KERNEL32.dll_CloseHandle]
mov dword [ebp - 0x78], 0xe494c602
jmp 0x41045b
mov eax, dword [ebp - 0x70]
mov byte [eax], 0
mov dword [ebp - 0x78], 0x7fcb320f
jmp 0x41045b
mov eax, dword [ebp - 0x5c]
mov byte [eax], 0
mov dword [ebp - 0x78], 0x1572629f
jmp 0x41045b
mov dword [ebp - 0x78], 0x32705b4c
jmp 0x41045b
mov eax, dword [ebp - 0x54]
mov dword [ebp - 0x40], eax
mov eax, dword [ebp - 0x64]
mov eax, dword [eax]
mov dword [ebp - 0x3c], eax
mov dword [ebp - 0x78], 0x9cf9aac
jmp 0x41045b
mov ecx, dword [0x442584]
mov eax, dword [0x442580]
mov edx, ecx
sub edx, 0xf6900b48
sub edx, 1
add edx, 0xf6900b48
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, 0xdc70d6d
mov ecx, 0xf232e90e
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x78], eax
jmp 0x41045b
mov eax, dword [ebp - 0x50]
mov ecx, dword [ebp - 0x40]
mov edx, dword [ebp - 0x3c]
xor esi, esi
sub esp, 0x14
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]
cmp eax, 0
setne al
and al, 1
mov byte [ebp - 0x35], al
mov eax, dword [0x442584]
mov ecx, dword [0x442580]
xor esi, esi
sub esi, 1
mov edx, eax
add edx, esi
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, 0xdc70d6d
mov ecx, 0xc57fa323
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x78], eax
jmp 0x41045b
mov dl, byte [ebp - 0x35]
mov eax, 0x63b58c8e
mov ecx, 0x3258923
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x78], eax
jmp 0x41045b
mov dword [ebp - 0x78], 0xc923c7b3
jmp 0x41045b
mov eax, dword [ebp - 0x50]
mov eax, dword [eax]
mov dword [ebp - 0x34], eax
mov dword [ebp - 0x78], 0x19ea469e
jmp 0x41045b
mov eax, dword [0x442584]
mov ecx, dword [0x442580]
mov edx, eax
add edx, 0x6929809f
sub edx, 1
sub edx, 0x6929809f
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, 0x6658c136
mov ecx, 0x905e515f
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x78], eax
jmp 0x41045b
mov eax, dword [ebp - 0x34]
cmp eax, 0
sete al
and al, 1
mov byte [ebp - 0x2d], al
mov eax, dword [0x442584]
mov ecx, dword [0x442580]
xor esi, esi
sub esi, 1
mov edx, eax
add edx, esi
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, 0x6658c136
mov ecx, 0x3c83302c
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x78], eax
jmp 0x41045b
mov dl, byte [ebp - 0x2d]
mov eax, 0xd5c6062e
mov ecx, 0xdea710f7
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x78], eax
jmp 0x41045b
mov eax, dword [ebp - 0x5c]
mov byte [eax], 1
mov dword [ebp - 0x78], 0x2aef0522
jmp 0x41045b
mov eax, dword [0x442584]
mov ecx, dword [0x442580]
mov edx, eax
add edx, 0x530909a8
sub edx, 1
sub edx, 0x530909a8
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, 0xadd6f37b
mov ecx, 0x782897f0
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x78], eax
jmp 0x41045b
mov ecx, dword [0x442584]
mov eax, dword [0x442580]
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, 0xadd6f37b
mov ecx, 0x93a88e98
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x78], eax
jmp 0x41045b
mov dword [ebp - 0x78], 0xc923c7b3
jmp 0x41045b
mov eax, dword [ebp - 0x50]
mov eax, dword [eax]
mov dword [ebp - 0x2c], eax
mov eax, dword [ebp - 0x54]
mov dword [ebp - 0x28], eax
mov dword [ebp - 0x78], 0x667648b3
jmp 0x41045b
mov eax, dword [ebp - 0x60]
mov esi, dword [eax]
mov eax, dword [ebp - 0x58]
mov ecx, dword [ebp - 0x2c]
mov edx, dword [ebp - 0x28]
xor edi, edi
sub esp, 0x14
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]
mov edx, eax
mov eax, 0x4183d48d
mov ecx, 0x3833e1a4
cmp edx, 0
cmovne eax, ecx
mov dword [ebp - 0x78], eax
jmp 0x41045b
mov eax, dword [0x442584]
mov ecx, dword [0x442580]
mov edx, eax
add edx, 0xa58529d0
sub edx, 1
sub edx, 0xa58529d0
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, 0xacc78f2f
mov ecx, 0x4d28cd24
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x78], eax
jmp 0x41045b
mov ecx, dword [0x442584]
mov eax, dword [0x442580]
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, 0xacc78f2f
mov ecx, 0xd14e5f43
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x78], eax
jmp 0x41045b
mov dword [ebp - 0x78], 0xc923c7b3
jmp 0x41045b
mov eax, dword [ebp - 0x58]
mov eax, dword [eax]
mov dword [ebp - 0x24], eax
mov eax, dword [ebp - 0x50]
mov eax, dword [eax]
mov dword [ebp - 0x20], eax
mov dword [ebp - 0x78], 0x2c7c8b45
jmp 0x41045b
mov ecx, dword [0x442584]
mov eax, dword [0x442580]
mov edx, ecx
sub edx, 0x27f91962
sub edx, 1
add edx, 0x27f91962
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, 0
mov dl, al
and dl, 0
and bl, cl
mov ch, ah
and ch, 0
and dh, cl
or dl, bl
or ch, dh
xor dl, ch
or al, ah
xor al, 0xff
or cl, 0
and al, cl
or dl, al
mov eax, 0xe77b5ef
mov ecx, 0x9eb03ade
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x78], eax
jmp 0x41045b
mov eax, dword [ebp - 0x24]
mov ecx, dword [ebp - 0x20]
cmp eax, ecx
setne al
and al, 1
mov byte [ebp - 0x19], al
mov ecx, dword [0x442584]
mov eax, dword [0x442580]
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, 0
mov dl, al
and dl, 0
and bl, cl
mov ch, ah
and ch, 0
and dh, cl
or dl, bl
or ch, dh
xor dl, ch
or al, ah
xor al, 0xff
or cl, 0
and al, cl
or dl, al
mov eax, 0xe77b5ef
mov ecx, 0x515e1852
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x78], eax
jmp 0x41045b
mov dl, byte [ebp - 0x19]
mov eax, 0xb9a1cf69
mov ecx, 0x1c18f2bc
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x78], eax
jmp 0x41045b
mov dword [ebp - 0x78], 0xc923c7b3
jmp 0x41045b
mov dword [ebp - 0x78], 0x32705b4c
jmp 0x41045b
mov ecx, dword [0x442584]
mov eax, dword [0x442580]
mov edx, ecx
sub edx, 0xa65fbddb
sub edx, 1
add edx, 0xa65fbddb
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, 0xb3ad7272
mov ecx, 0x342b5e86
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x78], eax
jmp 0x41045b
mov eax, dword [ebp - 0x64]
mov eax, dword [eax]
sub esp, 4
mov dword [esp], eax
call dword [sym.imp.KERNEL32.dll_CloseHandle]
mov eax, dword [ebp - 0x60]
mov eax, dword [eax]
mov dword [ebp - 0x18], eax
mov eax, dword [0x442584]
mov ecx, dword [0x442580]
mov edx, eax
sub edx, 0xc52169d4
sub edx, 1
add edx, 0xc52169d4
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, 0xb3ad7272
mov ecx, 0xecb6680d
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x78], eax
jmp 0x41045b
mov dword [ebp - 0x78], 0x2c849d5e
jmp 0x41045b
mov eax, dword [ebp - 0x18]
sub esp, 4
mov dword [esp], eax
call dword [sym.imp.KERNEL32.dll_CloseHandle]
mov eax, dword [ebp - 0x5c]
mov cl, byte [eax]
mov eax, dword [ebp - 0x70]
and cl, 1
mov byte [eax], cl
mov dword [ebp - 0x78], 0x7fcb320f
jmp 0x41045b
mov eax, dword [ebp - 0x70]
mov al, byte [eax]
and al, 1
mov byte [ebp - 0x11], al
mov dword [ebp - 0x78], 0x4fdaeca1
jmp 0x41045b
mov al, byte [ebp - 0x11]
and al, 1
movzx eax, al
mov dword [ebp - 0x88], eax
mov ecx, dword [ebp - 0x10]
xor ecx, ebp
call fcn.0042b2c0
mov eax, dword [ebp - 0x88]
lea esp, [ebp - 0xc]
pop esi
pop edi
pop ebx
pop ebp
ret
mov dword [ebp - 0x78], 0xff2c8712
jmp 0x41045b
mov ecx, dword [ebp - 0x7c]
mov edx, dword [ebp - 0x80]
mov eax, dword [ebp - 0x6c]
mov dword [eax], edx
mov eax, dword [ebp - 0x68]
mov dword [eax], ecx
mov eax, dword [ebp - 0x68]
mov eax, dword [eax]
xor ecx, ecx
sub esp, 0x1c
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]
mov ecx, eax
mov eax, dword [ebp - 0x64]
mov dword [eax], ecx
mov eax, dword [ebp - 0x64]
mov dword [ebp - 0x78], 0x5ed5c45f
jmp 0x41045b
mov eax, dword [ebp - 0x6c]
mov eax, dword [eax]
xor ecx, ecx
sub esp, 0x1c
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]
mov dword [ebp - 0x78], 0x6db7f293
jmp 0x41045b
mov eax, dword [ebp - 0x60]
mov ecx, dword [ebp - 0x48]
mov dword [eax], ecx
mov eax, dword [ebp - 0x60]
mov dword [ebp - 0x78], 0x2cdf9bdd
jmp 0x41045b
mov eax, dword [ebp - 0x50]
mov ecx, dword [ebp - 0x40]
mov edx, dword [ebp - 0x3c]
xor esi, esi
sub esp, 0x14
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]
mov dword [ebp - 0x78], 0xf232e90e
jmp 0x41045b
mov eax, dword [ebp - 0x34]
mov dword [ebp - 0x78], 0x905e515f
jmp 0x41045b
mov dword [ebp - 0x78], 0x782897f0
jmp 0x41045b
mov dword [ebp - 0x78], 0x4d28cd24
jmp 0x41045b
mov eax, dword [ebp - 0x24]
mov eax, dword [ebp - 0x20]
mov dword [ebp - 0x78], 0x9eb03ade
jmp 0x41045b
mov eax, dword [ebp - 0x64]
mov eax, dword [eax]
sub esp, 4
mov dword [esp], eax
call dword [sym.imp.KERNEL32.dll_CloseHandle]
mov eax, dword [ebp - 0x60]
mov dword [ebp - 0x78], 0x342b5e86
jmp 0x40f2c7