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

Disassembly:
push ebp
mov ebp, esp
push ebx
push edi
push esi
sub esp, 0x6c
mov eax, dword [ebp + 0xc]
mov dword [ebp - 0x70], eax
mov eax, dword [ebp + 8]
mov dword [ebp - 0x6c], eax
mov eax, dword [0x43f080]
xor eax, ebp
mov dword [ebp - 0x10], eax
mov ecx, dword [0x44055c]
mov eax, dword [0x440558]
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 - 0x62], cl
cmp eax, 0xa
setl al
and al, 1
mov byte [ebp - 0x61], al
mov dword [ebp - 0x68], 0xbd629603
mov eax, dword [ebp - 0x68]
mov dword [ebp - 0x74], eax
sub eax, 0x84a99a43
je 0x40cd48
jmp 0x40c25d
mov eax, dword [ebp - 0x74]
sub eax, 0x8597c0e1
je 0x40ce79
jmp 0x40c270
mov eax, dword [ebp - 0x74]
sub eax, 0x8a15c2e8
je 0x40cb07
jmp 0x40c283
mov eax, dword [ebp - 0x74]
sub eax, 0x8b6e2ca7
je 0x40d3d3
jmp 0x40c296
mov eax, dword [ebp - 0x74]
sub eax, 0x8c69f62b
je 0x40c7d1
jmp 0x40c2a9
mov eax, dword [ebp - 0x74]
sub eax, 0x8e84ccba
je 0x40ca89
jmp 0x40c2bc
mov eax, dword [ebp - 0x74]
sub eax, 0x9437b0b3
je 0x40d3fc
jmp 0x40c2cf
mov eax, dword [ebp - 0x74]
sub eax, 0x97504096
je 0x40ca2a
jmp 0x40c2e2
mov eax, dword [ebp - 0x74]
sub eax, 0x98931534
je 0x40d234
jmp 0x40c2f5
mov eax, dword [ebp - 0x74]
sub eax, 0x9b2e3056
je 0x40d15b
jmp 0x40c308
mov eax, dword [ebp - 0x74]
sub eax, 0x9bf43b08
je 0x40d140
jmp 0x40c31b
mov eax, dword [ebp - 0x74]
sub eax, 0x9dd07244
je 0x40cf96
jmp 0x40c32e
mov eax, dword [ebp - 0x74]
sub eax, 0x9f0c5b32
je 0x40ce6d
jmp 0x40c341
mov eax, dword [ebp - 0x74]
sub eax, 0xa13e4150
je 0x40cd3c
jmp 0x40c354
mov eax, dword [ebp - 0x74]
sub eax, 0xa213dddf
je 0x40cec7
jmp 0x40c367
mov eax, dword [ebp - 0x74]
sub eax, 0xa5429d58
je 0x40ce5b
jmp 0x40c37a
mov eax, dword [ebp - 0x74]
sub eax, 0xab878788
je 0x40cf40
jmp 0x40c38d
mov eax, dword [ebp - 0x74]
sub eax, 0xaee6dea4
je 0x40d3f0
jmp 0x40c3a0
mov eax, dword [ebp - 0x74]
sub eax, 0xb0468a71
je 0x40d077
jmp 0x40c3b3
mov eax, dword [ebp - 0x74]
sub eax, 0xb1c29ff9
je 0x40d21c
jmp 0x40c3c6
mov eax, dword [ebp - 0x74]
sub eax, 0xb4183572
je 0x40c8f0
jmp 0x40c3d9
mov eax, dword [ebp - 0x74]
sub eax, 0xbc553e74
je 0x40cab9
jmp 0x40c3ec
mov eax, dword [ebp - 0x74]
sub eax, 0xbd629603
je 0x40c722
jmp 0x40c3ff
mov eax, dword [ebp - 0x74]
sub eax, 0xcdaad148
je 0x40cdcd
jmp 0x40c412
mov eax, dword [ebp - 0x74]
sub eax, 0xd8c47302
je 0x40d228
jmp 0x40c425
mov eax, dword [ebp - 0x74]
sub eax, 0xdd01865d
je 0x40cb55
jmp 0x40c438
mov eax, dword [ebp - 0x74]
sub eax, 0xe07936b1
je 0x40d384
jmp 0x40c44b
mov eax, dword [ebp - 0x74]
sub eax, 0xe2f02239
je 0x40cc68
jmp 0x40c45e
mov eax, dword [ebp - 0x74]
sub eax, 0xe61dba52
je 0x40cf4c
jmp 0x40c471
mov eax, dword [ebp - 0x74]
sub eax, 0xe627ed5d
je 0x40cff0
jmp 0x40c484
mov eax, dword [ebp - 0x74]
sub eax, 0xe914baff
je 0x40d0ea
jmp 0x40c497
mov eax, dword [ebp - 0x74]
sub eax, 0xf2f00071
je 0x40c748
jmp 0x40c4aa
mov eax, dword [ebp - 0x74]
sub eax, 0xf6517d9a
je 0x40cd62
jmp 0x40c4bd
mov eax, dword [ebp - 0x74]
sub eax, 0xf7866c23
je 0x40d342
jmp 0x40c4d0
mov eax, dword [ebp - 0x74]
sub eax, 0xfc8a7e28
je 0x40c8a2
jmp 0x40c4e3
mov eax, dword [ebp - 0x74]
sub eax, 0xfca70757
je 0x40d282
jmp 0x40c4f6
mov eax, dword [ebp - 0x74]
sub eax, 0xfdfd16ca
je 0x40d378
jmp 0x40c509
mov eax, dword [ebp - 0x74]
sub eax, 0x8f52d3c
je 0x40ce40
jmp 0x40c51c
mov eax, dword [ebp - 0x74]
sub eax, 0x902cc4f
je 0x40c884
jmp 0x40c52f
mov eax, dword [ebp - 0x74]
sub eax, 0xf9829b0
je 0x40c7c5
jmp 0x40c542
mov eax, dword [ebp - 0x74]
sub eax, 0x13043976
je 0x40d493
jmp 0x40c555
mov eax, dword [ebp - 0x74]
sub eax, 0x16e47a94
je 0x40c9a9
jmp 0x40c568
mov eax, dword [ebp - 0x74]
sub eax, 0x2ab2817e
je 0x40d463
jmp 0x40c57b
mov eax, dword [ebp - 0x74]
sub eax, 0x2baa7c70
je 0x40d1a9
jmp 0x40c58e
mov eax, dword [ebp - 0x74]
sub eax, 0x3462d677
je 0x40cfa2
jmp 0x40c5a1
mov eax, dword [ebp - 0x74]
sub eax, 0x358ff038
je 0x40caa7
jmp 0x40c5b4
mov eax, dword [ebp - 0x74]
sub eax, 0x3948e990
je 0x40d31a
jmp 0x40c5c7
mov eax, dword [ebp - 0x74]
sub eax, 0x3d20021a
je 0x40ccf6
jmp 0x40c5da
mov eax, dword [ebp - 0x74]
sub eax, 0x3e29068a
je 0x40d358
jmp 0x40c5ed
mov eax, dword [ebp - 0x74]
sub eax, 0x3f63afcc
je 0x40d06b
jmp 0x40c600
mov eax, dword [ebp - 0x74]
sub eax, 0x4027d3dd
je 0x40d451
jmp 0x40c613
mov eax, dword [ebp - 0x74]
sub eax, 0x471eae01
je 0x40d475
jmp 0x40c626
mov eax, dword [ebp - 0x74]
sub eax, 0x4ac34d71
je 0x40cb73
jmp 0x40c639
mov eax, dword [ebp - 0x74]
sub eax, 0x4c652245
je 0x40d487
jmp 0x40c64c
mov eax, dword [ebp - 0x74]
sub eax, 0x4cbe4cbb
je 0x40cc83
jmp 0x40c65f
mov eax, dword [ebp - 0x74]
sub eax, 0x512d57a2
je 0x40c9b5
jmp 0x40c672
mov eax, dword [ebp - 0x74]
sub eax, 0x533631c8
je 0x40ca95
jmp 0x40c685
mov eax, dword [ebp - 0x74]
sub eax, 0x5b1d6502
je 0x40c896
jmp 0x40c698
mov eax, dword [ebp - 0x74]
sub eax, 0x60e6a9b5
je 0x40cb61
jmp 0x40c6ab
mov eax, dword [ebp - 0x74]
sub eax, 0x677a85af
je 0x40cbe6
jmp 0x40c6be
mov eax, dword [ebp - 0x74]
sub eax, 0x68707e72
je 0x40d445
jmp 0x40c6d1
mov eax, dword [ebp - 0x74]
sub eax, 0x6a288a08
je 0x40c85d
jmp 0x40c6e4
mov eax, dword [ebp - 0x74]
sub eax, 0x71928856
je 0x40d30e
jmp 0x40c6f7
mov eax, dword [ebp - 0x74]
sub eax, 0x7737fb7d
je 0x40c9dc
jmp 0x40c70a
mov eax, dword [ebp - 0x74]
sub eax, 0x7d30c882
je 0x40d439
mov al, byte [ebp - 0x62]
mov cl, byte [ebp - 0x61]
mov dl, al
and dl, cl
xor al, cl
or dl, al
mov eax, 0xfdfd16ca
mov ecx, 0xf2f00071
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x68], eax
jmp 0x40d4ae
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 ecx, dword [0x44055c]
mov eax, dword [0x440558]
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, 0xfdfd16ca
mov ecx, 0xf9829b0
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x68], eax
jmp 0x40d4ae
mov dword [ebp - 0x68], 0x8c69f62b
jmp 0x40d4ae
mov ecx, dword [ebp - 0x6c]
mov edx, dword [ebp - 0x70]
push eax
mov eax, esp
mov dword [ebp - 0x54], eax
push eax
mov eax, esp
mov dword [ebp - 0x50], eax
push eax
mov eax, esp
mov dword [ebp - 0x4c], eax
push eax
mov eax, esp
mov dword [ebp - 0x48], eax
push eax
sub esp, 0xffc
mov eax, esp
mov dword [ebp - 0x44], eax
push eax
mov eax, esp
mov dword [ebp - 0x40], eax
mov eax, dword [ebp - 0x5c]
mov dword [eax], edx
mov eax, dword [ebp - 0x58]
mov dword [eax], ecx
mov eax, dword [ebp - 0x58]
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 dword [ebp - 0x3c], eax
mov dword [ebp - 0x68], 0x6a288a08
jmp 0x40d4ae
mov eax, dword [ebp - 0x54]
mov ecx, dword [ebp - 0x3c]
mov dword [eax], ecx
mov edx, dword [ebp - 0x54]
mov esi, 0xffffffff
mov eax, 0xfc8a7e28
mov ecx, 0x902cc4f
cmp dword [edx], esi
cmove eax, ecx
mov dword [ebp - 0x68], eax
jmp 0x40d4ae
mov eax, dword [ebp - 0x60]
mov byte [eax], 0
mov dword [ebp - 0x68], 0x5b1d6502
jmp 0x40d4ae
mov dword [ebp - 0x68], 0xf7866c23
jmp 0x40d4ae
mov eax, dword [0x44055c]
mov ecx, dword [0x440558]
mov edx, eax
sub edx, 0xc486e0c0
sub edx, 1
add edx, 0xc486e0c0
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, 0xe07936b1
mov ecx, 0xb4183572
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x68], eax
jmp 0x40d4ae
mov eax, dword [ebp - 0x5c]
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 - 0x38], eax
mov ecx, dword [0x44055c]
mov eax, dword [0x440558]
mov edx, ecx
add edx, 0xbe93c29d
sub edx, 1
sub edx, 0xbe93c29d
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, 0xe07936b1
mov ecx, 0x16e47a94
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x68], eax
jmp 0x40d4ae
mov dword [ebp - 0x68], 0x512d57a2
jmp 0x40d4ae
mov eax, dword [ebp - 0x50]
mov ecx, dword [ebp - 0x38]
mov dword [eax], ecx
mov edx, dword [ebp - 0x50]
mov esi, 0xffffffff
mov eax, 0x358ff038
mov ecx, 0x7737fb7d
cmp dword [edx], esi
cmove eax, ecx
mov dword [ebp - 0x68], eax
jmp 0x40d4ae
mov eax, dword [0x44055c]
mov ecx, dword [0x440558]
mov edx, eax
sub edx, 0x3fbf6b01
sub edx, 1
add edx, 0x3fbf6b01
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, 0x8b6e2ca7
mov ecx, 0x97504096
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x68], eax
jmp 0x40d4ae
mov eax, dword [ebp - 0x54]
mov eax, dword [eax]
sub esp, 4
mov dword [esp], eax
call dword [sym.imp.KERNEL32.dll_CloseHandle]
mov eax, dword [0x44055c]
mov ecx, dword [0x440558]
mov edx, eax
sub edx, 0x8b980a7
sub edx, 1
add edx, 0x8b980a7
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, 0x8b6e2ca7
mov ecx, 0x8e84ccba
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x68], eax
jmp 0x40d4ae
mov dword [ebp - 0x68], 0x533631c8
jmp 0x40d4ae
mov eax, dword [ebp - 0x60]
mov byte [eax], 0
mov dword [ebp - 0x68], 0xf7866c23
jmp 0x40d4ae
mov eax, dword [ebp - 0x4c]
mov byte [eax], 0
mov dword [ebp - 0x68], 0xbc553e74
jmp 0x40d4ae
mov eax, dword [0x44055c]
mov ecx, dword [0x440558]
mov edx, eax
sub edx, 0xd48a6cd3
sub edx, 1
add edx, 0xd48a6cd3
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, 0xaee6dea4
mov ecx, 0x8a15c2e8
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x68], eax
jmp 0x40d4ae
mov eax, dword [0x44055c]
mov ecx, dword [0x440558]
mov edx, eax
sub edx, 0xd38bff13
sub edx, 1
add edx, 0xd38bff13
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, 0xaee6dea4
mov ecx, 0xdd01865d
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x68], eax
jmp 0x40d4ae
mov dword [ebp - 0x68], 0x60e6a9b5
jmp 0x40d4ae
mov eax, dword [ebp - 0x44]
mov dword [ebp - 0x34], eax
mov dword [ebp - 0x68], 0x4ac34d71
jmp 0x40d4ae
mov ecx, dword [0x44055c]
mov eax, dword [0x440558]
mov edx, ecx
add edx, 0xb8f78fe
sub edx, 1
sub edx, 0xb8f78fe
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, 0x9437b0b3
mov ecx, 0x677a85af
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x68], eax
jmp 0x40d4ae
mov eax, dword [ebp - 0x54]
mov edx, dword [eax]
mov eax, dword [ebp - 0x40]
mov ecx, dword [ebp - 0x34]
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 - 0x2e], al
mov eax, dword [0x44055c]
mov ecx, dword [0x440558]
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, 0x9437b0b3
mov ecx, 0xe2f02239
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x68], eax
jmp 0x40d4ae
mov dl, byte [ebp - 0x2e]
mov eax, 0x4cbe4cbb
mov ecx, 0x84a99a43
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x68], eax
jmp 0x40d4ae
mov ecx, dword [0x44055c]
mov eax, dword [0x440558]
mov edx, ecx
add edx, 0xb74c24f3
sub edx, 1
sub edx, 0xb74c24f3
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, 0x7d30c882
mov ecx, 0x3d20021a
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x68], eax
jmp 0x40d4ae
mov eax, dword [0x44055c]
mov ecx, dword [0x440558]
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, 0x7d30c882
mov ecx, 0xa13e4150
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x68], eax
jmp 0x40d4ae
mov dword [ebp - 0x68], 0x98931534
jmp 0x40d4ae
mov eax, dword [ebp - 0x40]
cmp dword [eax], 0
sete al
and al, 1
mov byte [ebp - 0x2d], al
mov dword [ebp - 0x68], 0xf6517d9a
jmp 0x40d4ae
mov ecx, dword [0x44055c]
mov eax, dword [0x440558]
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, 0x68707e72
mov ecx, 0xcdaad148
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x68], eax
jmp 0x40d4ae
mov ecx, dword [0x44055c]
mov eax, dword [0x440558]
mov edx, ecx
sub edx, 0x2707da02
sub edx, 1
add edx, 0x2707da02
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, 0x68707e72
mov ecx, 0x8f52d3c
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x68], eax
jmp 0x40d4ae
mov dl, byte [ebp - 0x2d]
mov eax, 0x8597c0e1
mov ecx, 0xa5429d58
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x68], eax
jmp 0x40d4ae
mov eax, dword [ebp - 0x4c]
mov byte [eax], 1
mov dword [ebp - 0x68], 0x9f0c5b32
jmp 0x40d4ae
mov dword [ebp - 0x68], 0x98931534
jmp 0x40d4ae
mov eax, dword [0x44055c]
mov ecx, dword [0x440558]
mov edx, eax
sub edx, 0x9f7d3a79
sub edx, 1
add edx, 0x9f7d3a79
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, 0x4027d3dd
mov ecx, 0xa213dddf
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x68], eax
jmp 0x40d4ae
mov eax, dword [ebp - 0x40]
mov eax, dword [eax]
mov dword [ebp - 0x2c], eax
mov eax, dword [ebp - 0x44]
mov dword [ebp - 0x28], eax
mov ecx, dword [0x44055c]
mov eax, dword [0x440558]
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, 0x4027d3dd
mov ecx, 0xab878788
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x68], eax
jmp 0x40d4ae
mov dword [ebp - 0x68], 0xe61dba52
jmp 0x40d4ae
mov eax, dword [ebp - 0x50]
mov esi, dword [eax]
mov eax, dword [ebp - 0x48]
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, 0x9dd07244
mov ecx, 0x3462d677
cmp edx, 0
cmovne eax, ecx
mov dword [ebp - 0x68], eax
jmp 0x40d4ae
mov dword [ebp - 0x68], 0x98931534
jmp 0x40d4ae
mov eax, dword [0x44055c]
mov ecx, dword [0x440558]
mov edx, eax
sub edx, 0x30b9d95a
sub edx, 1
add edx, 0x30b9d95a
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, 0x2ab2817e
mov ecx, 0xe627ed5d
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x68], eax
jmp 0x40d4ae
mov eax, dword [ebp - 0x48]
mov eax, dword [eax]
mov dword [ebp - 0x24], eax
mov eax, dword [ebp - 0x40]
mov eax, dword [eax]
mov dword [ebp - 0x20], eax
mov ecx, dword [0x44055c]
mov eax, dword [0x440558]
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, 0x2ab2817e
mov ecx, 0x3f63afcc
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x68], eax
jmp 0x40d4ae
mov dword [ebp - 0x68], 0xb0468a71
jmp 0x40d4ae
mov ecx, dword [0x44055c]
mov eax, dword [0x440558]
mov edx, ecx
sub edx, 0x48bd177b
sub edx, 1
add edx, 0x48bd177b
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, 0x471eae01
mov ecx, 0xe914baff
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x68], eax
jmp 0x40d4ae
mov eax, dword [ebp - 0x24]
mov ecx, dword [ebp - 0x20]
cmp eax, ecx
setne al
and al, 1
mov byte [ebp - 0x19], al
mov eax, dword [0x44055c]
mov ecx, dword [0x440558]
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, 0x471eae01
mov ecx, 0x9bf43b08
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x68], eax
jmp 0x40d4ae
mov dl, byte [ebp - 0x19]
mov eax, 0xd8c47302
mov ecx, 0x9b2e3056
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x68], eax
jmp 0x40d4ae
mov eax, dword [0x44055c]
mov ecx, dword [0x440558]
mov edx, eax
add edx, 0x390ac793
sub edx, 1
sub edx, 0x390ac793
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, 0x4c652245
mov ecx, 0x2baa7c70
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x68], eax
jmp 0x40d4ae
mov ecx, dword [0x44055c]
mov eax, dword [0x440558]
mov edx, ecx
sub edx, 0x1ec9db40
sub edx, 1
add edx, 0x1ec9db40
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, 0x4c652245
mov ecx, 0xb1c29ff9
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x68], eax
jmp 0x40d4ae
mov dword [ebp - 0x68], 0x98931534
jmp 0x40d4ae
mov dword [ebp - 0x68], 0x60e6a9b5
jmp 0x40d4ae
mov eax, dword [0x44055c]
mov ecx, dword [0x440558]
mov edx, eax
sub edx, 0x5de1e900
sub edx, 1
add edx, 0x5de1e900
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, 0x13043976
mov ecx, 0xfca70757
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x68], eax
jmp 0x40d4ae
mov eax, dword [ebp - 0x54]
mov eax, dword [eax]
sub esp, 4
mov dword [esp], eax
call dword [sym.imp.KERNEL32.dll_CloseHandle]
mov eax, dword [ebp - 0x50]
mov eax, dword [eax]
mov dword [ebp - 0x18], eax
mov ecx, dword [0x44055c]
mov eax, dword [0x440558]
mov edx, ecx
add edx, 0x9054a38b
sub edx, 1
sub edx, 0x9054a38b
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, 0x13043976
mov ecx, 0x71928856
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x68], eax
jmp 0x40d4ae
mov dword [ebp - 0x68], 0x3948e990
jmp 0x40d4ae
mov eax, dword [ebp - 0x18]
sub esp, 4
mov dword [esp], eax
call dword [sym.imp.KERNEL32.dll_CloseHandle]
mov eax, dword [ebp - 0x4c]
mov cl, byte [eax]
mov eax, dword [ebp - 0x60]
and cl, 1
mov byte [eax], cl
mov dword [ebp - 0x68], 0xf7866c23
jmp 0x40d4ae
mov eax, dword [ebp - 0x60]
mov al, byte [eax]
and al, 1
mov byte [ebp - 0x11], al
mov dword [ebp - 0x68], 0x3e29068a
jmp 0x40d4ae
mov al, byte [ebp - 0x11]
and al, 1
movzx eax, al
mov dword [ebp - 0x78], eax
mov ecx, dword [ebp - 0x10]
xor ecx, ebp
call fcn.00428c30
mov eax, dword [ebp - 0x78]
lea esp, [ebp - 0xc]
pop esi
pop edi
pop ebx
pop ebp
ret
mov dword [ebp - 0x68], 0xf2f00071
jmp 0x40d4ae
mov eax, dword [ebp - 0x5c]
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 - 0x68], 0xb4183572
jmp 0x40d4ae
mov eax, dword [ebp - 0x54]
mov eax, dword [eax]
sub esp, 4
mov dword [esp], eax
call dword [sym.imp.KERNEL32.dll_CloseHandle]
mov dword [ebp - 0x68], 0x97504096
jmp 0x40d4ae
mov dword [ebp - 0x68], 0x8a15c2e8
jmp 0x40d4ae
mov eax, dword [ebp - 0x54]
mov edx, dword [eax]
mov eax, dword [ebp - 0x40]
mov ecx, dword [ebp - 0x34]
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 - 0x68], 0x677a85af
jmp 0x40d4ae
mov dword [ebp - 0x68], 0xcdaad148
jmp 0x40d4ae
mov eax, dword [ebp - 0x40]
mov eax, dword [ebp - 0x44]
mov dword [ebp - 0x68], 0xa213dddf
jmp 0x40d4ae
mov eax, dword [ebp - 0x48]
mov eax, dword [ebp - 0x40]
mov dword [ebp - 0x68], 0xe627ed5d
jmp 0x40d4ae
mov eax, dword [ebp - 0x24]
mov eax, dword [ebp - 0x20]
mov dword [ebp - 0x68], 0xe914baff
jmp 0x40d4ae
mov dword [ebp - 0x68], 0x2baa7c70
jmp 0x40d4ae
mov eax, dword [ebp - 0x54]
mov eax, dword [eax]
sub esp, 4
mov dword [esp], eax
call dword [sym.imp.KERNEL32.dll_CloseHandle]
mov eax, dword [ebp - 0x50]
mov dword [ebp - 0x68], 0xfca70757
jmp 0x40c247