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

Disassembly:
push ebp
mov ebp, esp
push ebx
push edi
push esi
sub esp, 0x50
mov eax, dword [ebp + 0xc]
mov dword [ebp - 0x54], eax
mov eax, dword [ebp + 8]
mov dword [ebp - 0x50], eax
mov eax, dword [0x440080]
xor eax, ebp
mov dword [ebp - 0x10], eax
mov dword [ebp - 0x4c], 0xaa9be0d
mov eax, dword [ebp - 0x4c]
mov dword [ebp - 0x58], eax
sub eax, 0x8050e3bb
je 0x40bc87
jmp 0x40b08c
mov eax, dword [ebp - 0x58]
sub eax, 0x8440caf2
je 0x40b904
jmp 0x40b09f
mov eax, dword [ebp - 0x58]
sub eax, 0x8cbb440d
je 0x40bb53
jmp 0x40b0b2
mov eax, dword [ebp - 0x58]
sub eax, 0x8dc0b58a
je 0x40b885
jmp 0x40b0c5
mov eax, dword [ebp - 0x58]
sub eax, 0x97a547ff
je 0x40bcfa
jmp 0x40b0d8
mov eax, dword [ebp - 0x58]
sub eax, 0x98101731
je 0x40c2ae
jmp 0x40b0eb
mov eax, dword [ebp - 0x58]
sub eax, 0x9a9beef5
je 0x40c346
jmp 0x40b0fe
mov eax, dword [ebp - 0x58]
sub eax, 0xa0b67bd3
je 0x40b612
jmp 0x40b111
mov eax, dword [ebp - 0x58]
sub eax, 0xab68ef8d
je 0x40bd54
jmp 0x40b124
mov eax, dword [ebp - 0x58]
sub eax, 0xb0893362
je 0x40bfa1
jmp 0x40b137
mov eax, dword [ebp - 0x58]
sub eax, 0xb25c2b3b
je 0x40c0a9
jmp 0x40b14a
mov eax, dword [ebp - 0x58]
sub eax, 0xb51ed88c
je 0x40be4c
jmp 0x40b15d
mov eax, dword [ebp - 0x58]
sub eax, 0xb76bce2a
je 0x40c2ce
jmp 0x40b170
mov eax, dword [ebp - 0x58]
sub eax, 0xb77e1cca
je 0x40b61e
jmp 0x40b183
mov eax, dword [ebp - 0x58]
sub eax, 0xbc76d549
je 0x40bdfe
jmp 0x40b196
mov eax, dword [ebp - 0x58]
sub eax, 0xbd8c8da2
je 0x40bfc9
jmp 0x40b1a9
mov eax, dword [ebp - 0x58]
sub eax, 0xc8fa7e1d
je 0x40c1cd
jmp 0x40b1bc
mov eax, dword [ebp - 0x58]
sub eax, 0xcb2dbe25
je 0x40b602
jmp 0x40b1cf
mov eax, dword [ebp - 0x58]
sub eax, 0xd59c039d
je 0x40bb24
jmp 0x40b1e2
mov eax, dword [ebp - 0x58]
sub eax, 0xde206640
je 0x40bafd
jmp 0x40b1f5
mov eax, dword [ebp - 0x58]
sub eax, 0xeaa7c969
je 0x40bdf2
jmp 0x40b208
mov eax, dword [ebp - 0x58]
sub eax, 0xedacbbbc
je 0x40c3e1
jmp 0x40b21b
mov eax, dword [ebp - 0x58]
sub eax, 0xef3331d6
je 0x40c33a
jmp 0x40b22e
mov eax, dword [ebp - 0x58]
sub eax, 0xf25fa10e
je 0x40b9f2
jmp 0x40b241
mov eax, dword [ebp - 0x58]
sub eax, 0xfabe5d99
je 0x40c3ba
jmp 0x40b254
mov eax, dword [ebp - 0x58]
sub eax, 0xfb69e21f
je 0x40c3c9
jmp 0x40b267
mov eax, dword [ebp - 0x58]
sub eax, 0xfea36956
je 0x40c31b
jmp 0x40b27a
mov eax, dword [ebp - 0x58]
sub eax, 0x2def4b4
je 0x40bc1c
jmp 0x40b28d
mov eax, dword [ebp - 0x58]
sub eax, 0x421f5ca
je 0x40b9fe
jmp 0x40b2a0
mov eax, dword [ebp - 0x58]
sub eax, 0x6719665
je 0x40b691
jmp 0x40b2b3
mov eax, dword [ebp - 0x58]
sub eax, 0x71d10b0
je 0x40c37e
jmp 0x40b2c6
mov eax, dword [ebp - 0x58]
sub eax, 0xaa9be0d
je 0x40b577
jmp 0x40b2d9
mov eax, dword [ebp - 0x58]
sub eax, 0xf4c5a26
je 0x40bb18
jmp 0x40b2ec
mov eax, dword [ebp - 0x58]
sub eax, 0x1084c9e4
je 0x40b81a
jmp 0x40b2ff
mov eax, dword [ebp - 0x58]
sub eax, 0x1431a822
je 0x40b58f
jmp 0x40b312
mov eax, dword [ebp - 0x58]
sub eax, 0x167cb64e
je 0x40bbc6
jmp 0x40b325
mov eax, dword [ebp - 0x58]
sub eax, 0x1aaf8032
je 0x40c3d5
jmp 0x40b338
mov eax, dword [ebp - 0x58]
sub eax, 0x20518aca
je 0x40c372
jmp 0x40b34b
mov eax, dword [ebp - 0x58]
sub eax, 0x22a51a52
je 0x40c09d
jmp 0x40b35e
mov eax, dword [ebp - 0x58]
sub eax, 0x22e0cb03
je 0x40b9e6
jmp 0x40b371
mov eax, dword [ebp - 0x58]
sub eax, 0x28b1c3fa
je 0x40ba92
jmp 0x40b384
mov eax, dword [ebp - 0x58]
sub eax, 0x29bbf217
je 0x40c128
jmp 0x40b397
mov eax, dword [ebp - 0x58]
sub eax, 0x30393a43
je 0x40c40b
jmp 0x40b3aa
mov eax, dword [ebp - 0x58]
sub eax, 0x325c415b
je 0x40b80e
jmp 0x40b3bd
mov eax, dword [ebp - 0x58]
sub eax, 0x334eeee5
je 0x40b7b5
jmp 0x40b3d0
mov eax, dword [ebp - 0x58]
sub eax, 0x4580124d
je 0x40c362
jmp 0x40b3e3
mov eax, dword [ebp - 0x58]
sub eax, 0x466b47c0
je 0x40bf2e
jmp 0x40b3f6
mov eax, dword [ebp - 0x58]
sub eax, 0x49b435d7
je 0x40c356
jmp 0x40b409
mov eax, dword [ebp - 0x58]
sub eax, 0x49b9dec7
je 0x40b8f8
jmp 0x40b41c
mov eax, dword [ebp - 0x58]
sub eax, 0x4ab044a8
je 0x40ba44
jmp 0x40b42f
mov eax, dword [ebp - 0x58]
sub eax, 0x55d1f625
je 0x40c0b5
jmp 0x40b442
mov eax, dword [ebp - 0x58]
sub eax, 0x55d610bf
je 0x40c29a
jmp 0x40b455
mov eax, dword [ebp - 0x58]
sub eax, 0x5dac80be
je 0x40b74c
jmp 0x40b468
mov eax, dword [ebp - 0x58]
sub eax, 0x5f70fa15
je 0x40c03c
jmp 0x40b47b
mov eax, dword [ebp - 0x58]
sub eax, 0x604ed47f
je 0x40bc10
jmp 0x40b48e
mov eax, dword [ebp - 0x58]
sub eax, 0x65e7b1fb
je 0x40c240
jmp 0x40b4a1
mov eax, dword [ebp - 0x58]
sub eax, 0x662f68e5
je 0x40bec5
jmp 0x40b4b4
mov eax, dword [ebp - 0x58]
sub eax, 0x693e81e6
je 0x40b740
jmp 0x40b4c7
mov eax, dword [ebp - 0x58]
sub eax, 0x6cae2d3b
je 0x40bd06
jmp 0x40b4da
mov eax, dword [ebp - 0x58]
sub eax, 0x6f42e29d
je 0x40b96f
jmp 0x40b4ed
mov eax, dword [ebp - 0x58]
sub eax, 0x6f9a4575
je 0x40c1c1
jmp 0x40b500
mov eax, dword [ebp - 0x58]
sub eax, 0x70f61d8f
je 0x40bee0
jmp 0x40b513
mov eax, dword [ebp - 0x58]
sub eax, 0x721d609b
je 0x40c28e
jmp 0x40b526
mov eax, dword [ebp - 0x58]
sub eax, 0x7401ea57
je 0x40b76f
jmp 0x40b539
mov eax, dword [ebp - 0x58]
sub eax, 0x74b0e417
je 0x40c082
push eax
sub esp, 0xffc
mov eax, esp
mov dword [ebp - 0x30], eax
mov dword [ebp - 0x4c], 0x1431a822
jmp 0x40c41a
mov eax, dword [ebp - 0x50]
mov ecx, dword [ebp - 0x54]
push eax
mov edx, esp
mov dword [ebp - 0x2c], edx
mov dword [ebp - 0x38], ecx
mov dword [ebp - 0x3c], eax
mov eax, dword [ebp - 0x3c]
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 - 0x40], eax
mov edx, 0xffffffff
mov eax, 0xb77e1cca
mov ecx, 0xcb2dbe25
cmp dword [ebp - 0x40], edx
cmove eax, ecx
mov dword [ebp - 0x4c], eax
jmp 0x40c41a
mov byte [ebp - 0x31], 0
mov dword [ebp - 0x4c], 0xa0b67bd3
jmp 0x40c41a
mov dword [ebp - 0x4c], 0x55d610bf
jmp 0x40c41a
mov ecx, dword [0x44157c]
mov eax, dword [0x441578]
mov edx, ecx
add edx, 0x48bb0def
sub edx, 1
sub edx, 0x48bb0def
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, 0xb76bce2a
mov ecx, 0x6719665
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x4c], eax
jmp 0x40c41a
mov eax, dword [ebp - 0x38]
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 - 0x28], eax
mov ecx, dword [0x44157c]
mov eax, dword [0x441578]
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, 0xb76bce2a
mov ecx, 0x693e81e6
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x4c], eax
jmp 0x40c41a
mov dword [ebp - 0x4c], 0x5dac80be
jmp 0x40c41a
mov eax, dword [ebp - 0x28]
mov dword [ebp - 0x44], eax
mov edx, 0xffffffff
mov eax, 0x8440caf2
mov ecx, 0x7401ea57
cmp dword [ebp - 0x44], edx
cmove eax, ecx
mov dword [ebp - 0x4c], eax
jmp 0x40c41a
mov eax, dword [0x44157c]
mov ecx, dword [0x441578]
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, 0xfea36956
mov ecx, 0x334eeee5
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x4c], eax
jmp 0x40c41a
mov eax, dword [ebp - 0x40]
sub esp, 4
mov dword [esp], eax
call dword [sym.imp.KERNEL32.dll_CloseHandle]
mov byte [ebp - 0x31], 0
mov eax, dword [0x44157c]
mov ecx, dword [0x441578]
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, 0xfea36956
mov ecx, 0x325c415b
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x4c], eax
jmp 0x40c41a
mov dword [ebp - 0x4c], 0x1084c9e4
jmp 0x40c41a
mov ecx, dword [0x44157c]
mov eax, dword [0x441578]
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, 0xef3331d6
mov ecx, 0x8dc0b58a
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x4c], eax
jmp 0x40c41a
mov ecx, dword [0x44157c]
mov eax, dword [0x441578]
mov edx, ecx
add edx, 0xa6729135
sub edx, 1
sub edx, 0xa6729135
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, 0xef3331d6
mov ecx, 0x49b9dec7
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x4c], eax
jmp 0x40c41a
mov dword [ebp - 0x4c], 0x55d610bf
jmp 0x40c41a
mov ecx, dword [0x44157c]
mov eax, dword [0x441578]
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, 0x9a9beef5
mov ecx, 0x6f42e29d
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x4c], eax
jmp 0x40c41a
mov byte [ebp - 0x45], 0
mov ecx, dword [0x44157c]
mov eax, dword [0x441578]
mov edx, ecx
sub edx, 0x8d0b2041
sub edx, 1
add edx, 0x8d0b2041
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, 0x9a9beef5
mov ecx, 0x22e0cb03
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x4c], eax
jmp 0x40c41a
mov dword [ebp - 0x4c], 0xf25fa10e
jmp 0x40c41a
mov dword [ebp - 0x4c], 0x421f5ca
jmp 0x40c41a
mov ecx, dword [ebp - 0x30]
mov edx, dword [ebp - 0x40]
mov eax, dword [ebp - 0x2c]
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 - 0x21], al
mov dword [ebp - 0x4c], 0x4ab044a8
jmp 0x40c41a
mov eax, dword [0x44157c]
mov ecx, dword [0x441578]
mov edx, eax
sub edx, 0x7079bb50
sub edx, 1
add edx, 0x7079bb50
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, 0x49b435d7
mov ecx, 0x28b1c3fa
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x4c], eax
jmp 0x40c41a
mov ecx, dword [0x44157c]
mov eax, dword [0x441578]
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, 0x49b435d7
mov ecx, 0xde206640
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x4c], eax
jmp 0x40c41a
mov dl, byte [ebp - 0x21]
mov eax, 0xf4c5a26
mov ecx, 0xd59c039d
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x4c], eax
jmp 0x40c41a
mov dword [ebp - 0x4c], 0x55d1f625
jmp 0x40c41a
mov eax, dword [ebp - 0x2c]
mov eax, dword [eax]
mov dword [ebp - 0x20], eax
mov dword [ebp - 0x4c], 0x7fbd97c2
jmp 0x40c41a
mov ecx, dword [0x44157c]
mov eax, dword [0x441578]
mov edx, ecx
add edx, 0x2cee3120
sub edx, 1
sub edx, 0x2cee3120
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, 0x4580124d
mov ecx, 0x167cb64e
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x4c], eax
jmp 0x40c41a
mov byte [ebp - 0x45], 1
mov eax, dword [0x44157c]
mov ecx, dword [0x441578]
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, 0x4580124d
mov ecx, 0x604ed47f
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x4c], eax
jmp 0x40c41a
mov dword [ebp - 0x4c], 0x2def4b4
jmp 0x40c41a
mov ecx, dword [0x44157c]
mov eax, dword [0x441578]
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, 0x20518aca
mov ecx, 0x8050e3bb
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x4c], eax
jmp 0x40c41a
mov ecx, dword [0x44157c]
mov eax, dword [0x441578]
mov edx, ecx
add edx, 0x14ad4b49
sub edx, 1
sub edx, 0x14ad4b49
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, 0x20518aca
mov ecx, 0x97a547ff
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x4c], eax
jmp 0x40c41a
mov dword [ebp - 0x4c], 0x55d1f625
jmp 0x40c41a
mov eax, dword [0x44157c]
mov ecx, dword [0x441578]
mov edx, eax
sub edx, 0x6012ac52
sub edx, 1
add edx, 0x6012ac52
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, 0x71d10b0
mov ecx, 0xab68ef8d
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x4c], eax
jmp 0x40c41a
mov eax, dword [ebp - 0x2c]
mov ecx, dword [eax]
mov edx, dword [ebp - 0x30]
mov esi, dword [ebp - 0x44]
lea eax, [ebp - 0x14]
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 dword [ebp - 0x1c], eax
mov ecx, dword [0x44157c]
mov eax, dword [0x441578]
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, 0x71d10b0
mov ecx, 0xeaa7c969
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x4c], eax
jmp 0x40c41a
mov dword [ebp - 0x4c], 0xbc76d549
jmp 0x40c41a
mov eax, dword [0x44157c]
mov ecx, dword [0x441578]
mov edx, eax
sub edx, 0x6fb2c163
sub edx, 1
add edx, 0x6fb2c163
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, 0xfabe5d99
mov ecx, 0xb51ed88c
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x4c], eax
jmp 0x40c41a
mov eax, dword [ebp - 0x1c]
cmp eax, 0
setne al
and al, 1
mov byte [ebp - 0x18], al
mov ecx, dword [0x44157c]
mov eax, dword [0x441578]
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, 0xfabe5d99
mov ecx, 0x662f68e5
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x4c], eax
jmp 0x40c41a
mov dl, byte [ebp - 0x18]
mov eax, 0x70f61d8f
mov ecx, 0x7d09ee67
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x4c], eax
jmp 0x40c41a
mov eax, dword [0x44157c]
mov ecx, dword [0x441578]
mov edx, eax
sub edx, 0xe62b39ef
sub edx, 1
add edx, 0xe62b39ef
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, 0xfb69e21f
mov ecx, 0x466b47c0
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x4c], eax
jmp 0x40c41a
mov ecx, dword [0x44157c]
mov eax, dword [0x441578]
mov edx, ecx
sub edx, 0x3a3842e0
sub edx, 1
add edx, 0x3a3842e0
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, 0xfb69e21f
mov ecx, 0xb0893362
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x4c], eax
jmp 0x40c41a
mov dword [ebp - 0x4c], 0x55d1f625
jmp 0x40c41a
mov ecx, dword [0x44157c]
mov eax, dword [0x441578]
mov edx, ecx
add edx, 0xf7865e09
sub edx, 1
sub edx, 0xf7865e09
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, 0x1aaf8032
mov ecx, 0x5f70fa15
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x4c], eax
jmp 0x40c41a
mov eax, dword [0x44157c]
mov ecx, dword [0x441578]
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, 0x1aaf8032
mov ecx, 0x74b0e417
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x4c], eax
jmp 0x40c41a
mov dword [ebp - 0x4c], 0x55d1f625
jmp 0x40c41a
mov dword [ebp - 0x4c], 0x421f5ca
jmp 0x40c41a
mov ecx, dword [0x44157c]
mov eax, dword [0x441578]
mov edx, ecx
add edx, 0x7b5083a
sub edx, 1
sub edx, 0x7b5083a
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, 0xedacbbbc
mov ecx, 0x29bbf217
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x4c], eax
jmp 0x40c41a
mov eax, dword [ebp - 0x40]
sub esp, 4
mov dword [esp], eax
call dword [sym.imp.KERNEL32.dll_CloseHandle]
mov eax, dword [ebp - 0x44]
sub esp, 4
mov dword [esp], eax
call dword [sym.imp.KERNEL32.dll_CloseHandle]
mov al, byte [ebp - 0x45]
and al, 1
mov byte [ebp - 0x16], al
mov ecx, dword [0x44157c]
mov eax, dword [0x441578]
mov edx, ecx
add edx, 0x78b47d37
sub edx, 1
sub edx, 0x78b47d37
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, 0xedacbbbc
mov ecx, 0x6f9a4575
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x4c], eax
jmp 0x40c41a
mov dword [ebp - 0x4c], 0xc8fa7e1d
jmp 0x40c41a
mov ecx, dword [0x44157c]
mov eax, dword [0x441578]
mov edx, ecx
sub edx, 0x378d2bfb
sub edx, 1
add edx, 0x378d2bfb
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, 0x30393a43
mov ecx, 0x65e7b1fb
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x4c], eax
jmp 0x40c41a
mov al, byte [ebp - 0x16]
and al, 1
mov byte [ebp - 0x31], al
mov eax, dword [0x44157c]
mov ecx, dword [0x441578]
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, 0x30393a43
mov ecx, 0x721d609b
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x4c], eax
jmp 0x40c41a
mov dword [ebp - 0x4c], 0x55d610bf
jmp 0x40c41a
mov al, byte [ebp - 0x31]
and al, 1
mov byte [ebp - 0x15], al
mov dword [ebp - 0x4c], 0x98101731
jmp 0x40c41a
mov al, byte [ebp - 0x15]
and al, 1
movzx eax, al
mov dword [ebp - 0x5c], eax
mov ecx, dword [ebp - 0x10]
xor ecx, ebp
call fcn.004295e0
mov eax, dword [ebp - 0x5c]
lea esp, [ebp - 0xc]
pop esi
pop edi
pop ebx
pop ebp
ret
mov eax, dword [ebp - 0x38]
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 - 0x4c], 0x6719665
jmp 0x40c41a
mov eax, dword [ebp - 0x40]
sub esp, 4
mov dword [esp], eax
call dword [sym.imp.KERNEL32.dll_CloseHandle]
mov byte [ebp - 0x31], 0
mov dword [ebp - 0x4c], 0x334eeee5
jmp 0x40c41a
mov dword [ebp - 0x4c], 0x8dc0b58a
jmp 0x40c41a
mov byte [ebp - 0x45], 0
mov dword [ebp - 0x4c], 0x6f42e29d
jmp 0x40c41a
mov dword [ebp - 0x4c], 0x28b1c3fa
jmp 0x40c41a
mov byte [ebp - 0x45], 1
mov dword [ebp - 0x4c], 0x167cb64e
jmp 0x40c41a
mov dword [ebp - 0x4c], 0x8050e3bb
jmp 0x40c41a
mov eax, dword [ebp - 0x2c]
mov ecx, dword [eax]
mov edx, dword [ebp - 0x30]
mov esi, dword [ebp - 0x44]
lea eax, [ebp - 0x14]
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 dword [ebp - 0x4c], 0xab68ef8d
jmp 0x40c41a
mov eax, dword [ebp - 0x1c]
mov dword [ebp - 0x4c], 0xb51ed88c
jmp 0x40c41a
mov dword [ebp - 0x4c], 0x466b47c0
jmp 0x40c41a
mov dword [ebp - 0x4c], 0x5f70fa15
jmp 0x40c41a
mov eax, dword [ebp - 0x40]
sub esp, 4
mov dword [esp], eax
call dword [sym.imp.KERNEL32.dll_CloseHandle]
mov eax, dword [ebp - 0x44]
sub esp, 4
mov dword [esp], eax
call dword [sym.imp.KERNEL32.dll_CloseHandle]
mov dword [ebp - 0x4c], 0x29bbf217
jmp 0x40c41a
mov al, byte [ebp - 0x16]
and al, 1
mov byte [ebp - 0x31], al
mov dword [ebp - 0x4c], 0x65e7b1fb
jmp 0x40b076