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

Disassembly:
push ebp
mov ebp, esp
push ebx
push edi
push esi
sub esp, 0x5c
mov eax, dword [ebp + 0xc]
mov dword [ebp - 0x60], eax
mov eax, dword [ebp + 8]
mov dword [ebp - 0x5c], eax
mov eax, dword [0x43e080]
xor eax, ebp
mov dword [ebp - 0x10], eax
mov ecx, dword [0x43f56c]
mov eax, dword [0x43f568]
mov edx, ecx
sub edx, 0xff52e66c
sub edx, 1
add edx, 0xff52e66c
imul ecx, edx
and ecx, 1
cmp ecx, 0
sete cl
and cl, 1
mov byte [ebp - 0x52], cl
cmp eax, 0xa
setl al
and al, 1
mov byte [ebp - 0x51], al
mov dword [ebp - 0x58], 0x1c4cba62
mov eax, dword [ebp - 0x58]
mov dword [ebp - 0x64], eax
sub eax, 0x810aaa88
je 0x40ca56
jmp 0x40bc15
mov eax, dword [ebp - 0x64]
sub eax, 0x83e7e775
je 0x40cbd5
jmp 0x40bc28
mov eax, dword [ebp - 0x64]
sub eax, 0x8457b865
je 0x40c589
jmp 0x40bc3b
mov eax, dword [ebp - 0x64]
sub eax, 0x86063d70
je 0x40c86a
jmp 0x40bc4e
mov eax, dword [ebp - 0x64]
sub eax, 0x933df160
je 0x40c318
jmp 0x40bc61
mov eax, dword [ebp - 0x64]
sub eax, 0x9506c5b1
je 0x40c69d
jmp 0x40bc74
mov eax, dword [ebp - 0x64]
sub eax, 0x978b7079
je 0x40c937
jmp 0x40bc87
mov eax, dword [ebp - 0x64]
sub eax, 0x99d203c2
je 0x40c8e5
jmp 0x40bc9a
mov eax, dword [ebp - 0x64]
sub eax, 0x9f66f38d
je 0x40cb9e
jmp 0x40bcad
mov eax, dword [ebp - 0x64]
sub eax, 0xa0e88692
je 0x40cdb2
jmp 0x40bcc0
mov eax, dword [ebp - 0x64]
sub eax, 0xa363fb06
je 0x40c897
jmp 0x40bcd3
mov eax, dword [ebp - 0x64]
sub eax, 0xa416d2c5
je 0x40c71c
jmp 0x40bce6
mov eax, dword [ebp - 0x64]
sub eax, 0xa8413c77
je 0x40c617
jmp 0x40bcf9
mov eax, dword [ebp - 0x64]
sub eax, 0xa89926c5
je 0x40ce56
jmp 0x40bd0c
mov eax, dword [ebp - 0x64]
sub eax, 0xb0309067
je 0x40c228
jmp 0x40bd1f
mov eax, dword [ebp - 0x64]
sub eax, 0xb2eee447
je 0x40c402
jmp 0x40bd32
mov eax, dword [ebp - 0x64]
sub eax, 0xb69e512a
je 0x40c536
jmp 0x40bd45
mov eax, dword [ebp - 0x64]
sub eax, 0xc0892385
je 0x40c208
jmp 0x40bd58
mov eax, dword [ebp - 0x64]
sub eax, 0xc7d439fe
je 0x40ceb3
jmp 0x40bd6b
mov eax, dword [ebp - 0x64]
sub eax, 0xcd19a69d
je 0x40ca00
jmp 0x40bd7e
mov eax, dword [ebp - 0x64]
sub eax, 0xd03126ae
je 0x40caee
jmp 0x40bd91
mov eax, dword [ebp - 0x64]
sub eax, 0xd52f19e5
je 0x40c139
jmp 0x40bda4
mov eax, dword [ebp - 0x64]
sub eax, 0xdadbaba9
je 0x40ce98
jmp 0x40bdb7
mov eax, dword [ebp - 0x64]
sub eax, 0xdc635e4d
je 0x40ce62
jmp 0x40bdca
mov eax, dword [ebp - 0x64]
sub eax, 0xe5a261e6
je 0x40c46a
jmp 0x40bddd
mov eax, dword [ebp - 0x64]
sub eax, 0xea212821
je 0x40cced
jmp 0x40bdf0
mov eax, dword [ebp - 0x64]
sub eax, 0xf07ff70d
je 0x40cb92
jmp 0x40be03
mov eax, dword [ebp - 0x64]
sub eax, 0xf1886116
je 0x40c333
jmp 0x40be16
mov eax, dword [ebp - 0x64]
sub eax, 0xf53924c5
je 0x40ce4a
jmp 0x40be29
mov eax, dword [ebp - 0x64]
sub eax, 0xf6f7716d
je 0x40ce89
jmp 0x40be3c
mov eax, dword [ebp - 0x64]
sub eax, 0xfd14e56b
je 0x40cdd2
jmp 0x40be4f
mov eax, dword [ebp - 0x64]
sub eax, 0xfdc2a4ff
je 0x40cbc9
jmp 0x40be62
mov eax, dword [ebp - 0x64]
sub eax, 0x329c9fd
je 0x40c3f6
jmp 0x40be75
mov eax, dword [ebp - 0x64]
sub eax, 0x88e9f77
je 0x40c56b
jmp 0x40be88
mov eax, dword [ebp - 0x64]
sub eax, 0xb0f3757
je 0x40c4b0
jmp 0x40be9b
mov eax, dword [ebp - 0x64]
sub eax, 0x125d24b6
je 0x40ca9c
jmp 0x40beae
mov eax, dword [ebp - 0x64]
sub eax, 0x128170bc
je 0x40c7f7
jmp 0x40bec1
mov eax, dword [ebp - 0x64]
sub eax, 0x1764aad5
je 0x40ce71
jmp 0x40bed4
mov eax, dword [ebp - 0x64]
sub eax, 0x1c32f1b0
je 0x40ccf9
jmp 0x40bee7
mov eax, dword [ebp - 0x64]
sub eax, 0x1c4cba62
je 0x40c113
jmp 0x40befa
mov eax, dword [ebp - 0x64]
sub eax, 0x1d72c226
je 0x40c6a9
jmp 0x40bf0d
mov eax, dword [ebp - 0x64]
sub eax, 0x231134ac
je 0x40c778
jmp 0x40bf20
mov eax, dword [ebp - 0x64]
sub eax, 0x288685c3
je 0x40ce7d
jmp 0x40bf33
mov eax, dword [ebp - 0x64]
sub eax, 0x2a280f41
je 0x40c682
jmp 0x40bf46
mov eax, dword [ebp - 0x64]
sub eax, 0x2a6c9d12
je 0x40cae2
jmp 0x40bf59
mov eax, dword [ebp - 0x64]
sub eax, 0x2f18b9a8
je 0x40cec2
jmp 0x40bf6c
mov eax, dword [ebp - 0x64]
sub eax, 0x2fc975dd
je 0x40cea4
jmp 0x40bf7f
mov eax, dword [ebp - 0x64]
sub eax, 0x321e9e34
je 0x40cbbd
jmp 0x40bf92
mov eax, dword [ebp - 0x64]
sub eax, 0x34b77ed5
je 0x40cc95
jmp 0x40bfa5
mov eax, dword [ebp - 0x64]
sub eax, 0x38ac2de9
je 0x40c51b
jmp 0x40bfb8
mov eax, dword [ebp - 0x64]
sub eax, 0x40e801ba
je 0x40c784
jmp 0x40bfcb
mov eax, dword [ebp - 0x64]
sub eax, 0x43a4887e
je 0x40ce2f
jmp 0x40bfde
mov eax, dword [ebp - 0x64]
sub eax, 0x45a66b42
je 0x40c92b
jmp 0x40bff1
mov eax, dword [ebp - 0x64]
sub eax, 0x46518059
je 0x40c29b
jmp 0x40c004
mov eax, dword [ebp - 0x64]
sub eax, 0x47d21fc4
je 0x40cd47
jmp 0x40c017
mov eax, dword [ebp - 0x64]
sub eax, 0x4a758056
je 0x40c214
jmp 0x40c02a
mov eax, dword [ebp - 0x64]
sub eax, 0x4f21f444
je 0x40c54a
jmp 0x40c03d
mov eax, dword [ebp - 0x64]
sub eax, 0x50d2571a
je 0x40c345
jmp 0x40c050
mov eax, dword [ebp - 0x64]
sub eax, 0x60414d89
je 0x40c5d1
jmp 0x40c063
mov eax, dword [ebp - 0x64]
sub eax, 0x666d4b02
je 0x40ce3e
jmp 0x40c076
mov eax, dword [ebp - 0x64]
sub eax, 0x68796fce
je 0x40ca0c
jmp 0x40c089
mov eax, dword [ebp - 0x64]
sub eax, 0x6a6863bb
je 0x40c3b0
jmp 0x40c09c
mov eax, dword [ebp - 0x64]
sub eax, 0x6e51fe2c
je 0x40c985
jmp 0x40c0af
mov eax, dword [ebp - 0x64]
sub eax, 0x74bbdc0a
je 0x40cc22
jmp 0x40c0c2
mov eax, dword [ebp - 0x64]
sub eax, 0x79b89365
je 0x40cbe9
mov al, byte [ebp - 0x52]
mov cl, byte [ebp - 0x51]
mov dl, al
and dl, cl
xor al, cl
or dl, al
mov eax, 0xfd14e56b
mov ecx, 0xd52f19e5
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x58], eax
jmp 0x40cec9
mov ecx, dword [ebp - 0x5c]
mov esi, dword [ebp - 0x60]
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
push eax
mov edx, esp
mov dword [ebp - 0x48], edx
push eax
mov edx, esp
mov dword [ebp - 0x44], edx
push eax
mov edx, esp
mov dword [ebp - 0x40], edx
push eax
mov edx, esp
mov dword [ebp - 0x3c], edx
push eax
sub esp, 0xffc
mov edx, esp
mov dword [ebp - 0x38], edx
push eax
mov edx, esp
mov dword [ebp - 0x34], edx
mov edx, dword [ebp - 0x4c]
mov dword [edx], esi
mov dword [eax], ecx
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 - 0x30], eax
mov eax, dword [0x43f56c]
mov ecx, dword [0x43f568]
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, 0xfd14e56b
mov ecx, 0xc0892385
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x58], eax
jmp 0x40cec9
mov dword [ebp - 0x58], 0x4a758056
jmp 0x40cec9
mov eax, dword [ebp - 0x48]
mov ecx, dword [ebp - 0x30]
mov dword [eax], ecx
mov dword [ebp - 0x58], 0xb0309067
jmp 0x40cec9
mov ecx, dword [0x43f56c]
mov eax, dword [0x43f568]
mov edx, ecx
add edx, 0x57124af
sub edx, 1
sub edx, 0x57124af
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, 0x43a4887e
mov ecx, 0x46518059
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x58], eax
jmp 0x40cec9
mov eax, dword [ebp - 0x48]
mov ecx, 0xffffffff
cmp dword [eax], ecx
sete al
and al, 1
mov byte [ebp - 0x2a], al
mov ecx, dword [0x43f56c]
mov eax, dword [0x43f568]
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, 0x43a4887e
mov ecx, 0x933df160
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x58], eax
jmp 0x40cec9
mov dl, byte [ebp - 0x2a]
mov eax, 0xb2eee447
mov ecx, 0xf1886116
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x58], eax
jmp 0x40cec9
mov eax, dword [ebp - 0x50]
mov byte [eax], 0
mov dword [ebp - 0x58], 0x50d2571a
jmp 0x40cec9
mov ecx, dword [0x43f56c]
mov eax, dword [0x43f568]
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, 0x666d4b02
mov ecx, 0x6a6863bb
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x58], eax
jmp 0x40cec9
mov eax, dword [0x43f56c]
mov ecx, dword [0x43f568]
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, 0x666d4b02
mov ecx, 0x329c9fd
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x58], eax
jmp 0x40cec9
mov dword [ebp - 0x58], 0x74bbdc0a
jmp 0x40cec9
mov eax, dword [ebp - 0x4c]
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 ecx, eax
mov eax, dword [ebp - 0x44]
mov dword [eax], ecx
mov eax, dword [ebp - 0x44]
mov ecx, 0xffffffff
cmp dword [eax], ecx
sete al
and al, 1
mov byte [ebp - 0x29], al
mov dword [ebp - 0x58], 0xe5a261e6
jmp 0x40cec9
mov eax, dword [0x43f56c]
mov ecx, dword [0x43f568]
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, 0xf53924c5
mov ecx, 0xb0f3757
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x58], eax
jmp 0x40cec9
mov ecx, dword [0x43f56c]
mov eax, dword [0x43f568]
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, 0xf53924c5
mov ecx, 0x38ac2de9
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x58], eax
jmp 0x40cec9
mov dl, byte [ebp - 0x29]
mov eax, 0x88e9f77
mov ecx, 0xb69e512a
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x58], eax
jmp 0x40cec9
mov eax, dword [ebp - 0x48]
mov eax, dword [eax]
mov dword [ebp - 0x28], eax
mov dword [ebp - 0x58], 0x4f21f444
jmp 0x40cec9
mov eax, dword [ebp - 0x28]
sub esp, 4
mov dword [esp], eax
call dword [sym.imp.KERNEL32.dll_CloseHandle]
mov eax, dword [ebp - 0x50]
mov byte [eax], 0
mov dword [ebp - 0x58], 0x74bbdc0a
jmp 0x40cec9
mov eax, dword [ebp - 0x40]
mov byte [eax], 0
mov dword [ebp - 0x58], 0x7a7817b4
jmp 0x40cec9
mov ecx, dword [ebp - 0x38]
mov eax, dword [ebp - 0x48]
mov edx, dword [eax]
mov eax, 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 - 0x22], al
mov dword [ebp - 0x58], 0x60414d89
jmp 0x40cec9
mov eax, dword [0x43f56c]
mov ecx, dword [0x43f568]
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, 0xa89926c5
mov ecx, 0xa8413c77
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x58], eax
jmp 0x40cec9
mov ecx, dword [0x43f56c]
mov eax, dword [0x43f568]
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, 0xa89926c5
mov ecx, 0x2a280f41
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x58], eax
jmp 0x40cec9
mov dl, byte [ebp - 0x22]
mov eax, 0x9506c5b1
mov ecx, 0x1d72c226
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x58], eax
jmp 0x40cec9
mov dword [ebp - 0x58], 0x83e7e775
jmp 0x40cec9
mov ecx, dword [0x43f56c]
mov eax, dword [0x43f568]
mov edx, ecx
sub edx, 0x5bfafc3f
sub edx, 1
add edx, 0x5bfafc3f
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, 0xdc635e4d
mov ecx, 0xa416d2c5
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x58], eax
jmp 0x40cec9
mov eax, dword [ebp - 0x34]
cmp dword [eax], 0
sete al
and al, 1
mov byte [ebp - 0x21], al
mov eax, dword [0x43f56c]
mov ecx, dword [0x43f568]
mov edx, eax
sub edx, 0x67564a5
sub edx, 1
add edx, 0x67564a5
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, 0xdc635e4d
mov ecx, 0x231134ac
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x58], eax
jmp 0x40cec9
mov dword [ebp - 0x58], 0x40e801ba
jmp 0x40cec9
mov ecx, dword [0x43f56c]
mov eax, dword [0x43f568]
mov edx, ecx
sub edx, 0xc187882b
sub edx, 1
add edx, 0xc187882b
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, 0x1764aad5
mov ecx, 0x128170bc
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x58], eax
jmp 0x40cec9
mov ecx, dword [0x43f56c]
mov eax, dword [0x43f568]
mov edx, ecx
sub edx, 0x23ad6bc3
sub edx, 1
add edx, 0x23ad6bc3
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, 0x1764aad5
mov ecx, 0x86063d70
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x58], eax
jmp 0x40cec9
mov dl, byte [ebp - 0x21]
mov eax, 0x978b7079
mov ecx, 0x7a4df764
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x58], eax
jmp 0x40cec9
mov eax, dword [0x43f56c]
mov ecx, dword [0x43f568]
mov edx, eax
add edx, 0xb631d273
sub edx, 1
sub edx, 0xb631d273
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, 0x288685c3
mov ecx, 0x99d203c2
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x58], eax
jmp 0x40cec9
mov eax, dword [0x43f56c]
mov ecx, dword [0x43f568]
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, 0x288685c3
mov ecx, 0x45a66b42
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x58], eax
jmp 0x40cec9
mov dword [ebp - 0x58], 0x83e7e775
jmp 0x40cec9
mov eax, dword [0x43f56c]
mov ecx, dword [0x43f568]
mov edx, eax
add edx, 0x31310360
sub edx, 1
sub edx, 0x31310360
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, 0xf6f7716d
mov ecx, 0x6e51fe2c
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x58], eax
jmp 0x40cec9
mov eax, dword [ebp - 0x34]
mov eax, dword [eax]
mov dword [ebp - 0x20], eax
mov ecx, dword [0x43f56c]
mov eax, dword [0x43f568]
mov edx, ecx
add edx, 0x32bb4541
sub edx, 1
sub edx, 0x32bb4541
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, 0xf6f7716d
mov ecx, 0xcd19a69d
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x58], eax
jmp 0x40cec9
mov dword [ebp - 0x58], 0x68796fce
jmp 0x40cec9
mov edx, dword [ebp - 0x38]
mov eax, dword [ebp - 0x44]
mov esi, dword [eax]
mov eax, dword [ebp - 0x3c]
mov ecx, dword [ebp - 0x20]
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, 0x810aaa88
mov ecx, 0xd03126ae
cmp edx, 0
cmovne eax, ecx
mov dword [ebp - 0x58], eax
jmp 0x40cec9
mov eax, dword [0x43f56c]
mov ecx, dword [0x43f568]
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, 0xdadbaba9
mov ecx, 0x125d24b6
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x58], eax
jmp 0x40cec9
mov eax, dword [0x43f56c]
mov ecx, dword [0x43f568]
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, 0xdadbaba9
mov ecx, 0x2a6c9d12
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x58], eax
jmp 0x40cec9
mov dword [ebp - 0x58], 0x83e7e775
jmp 0x40cec9
mov eax, dword [0x43f56c]
mov ecx, dword [0x43f568]
mov edx, eax
add edx, 0x70d3b706
sub edx, 1
sub edx, 0x70d3b706
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, 0x2fc975dd
mov ecx, 0x7ae7fd65
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x58], eax
jmp 0x40cec9
mov dword [ebp - 0x58], 0x9f66f38d
jmp 0x40cec9
mov eax, dword [ebp - 0x34]
mov esi, dword [eax]
mov edx, dword [ebp - 0x1c]
mov eax, 0xfdc2a4ff
mov ecx, 0x321e9e34
cmp edx, esi
cmovne eax, ecx
mov dword [ebp - 0x58], eax
jmp 0x40cec9
mov dword [ebp - 0x58], 0x83e7e775
jmp 0x40cec9
mov dword [ebp - 0x58], 0x8457b865
jmp 0x40cec9
mov eax, dword [ebp - 0x48]
mov eax, dword [eax]
mov dword [ebp - 0x18], eax
mov dword [ebp - 0x58], 0x79b89365
jmp 0x40cec9
mov ecx, dword [0x43f56c]
mov eax, dword [0x43f568]
mov edx, ecx
sub edx, 0x7080589a
sub edx, 1
add edx, 0x7080589a
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, 0xc7d439fe
mov ecx, 0x34b77ed5
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x58], eax
jmp 0x40cec9
mov eax, dword [ebp - 0x50]
mov al, byte [eax]
and al, 1
mov byte [ebp - 0x11], al
mov eax, dword [0x43f56c]
mov ecx, dword [0x43f568]
mov edx, eax
add edx, 0x459e1782
sub edx, 1
sub edx, 0x459e1782
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, 0xc7d439fe
mov ecx, 0xea212821
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x58], eax
jmp 0x40cec9
mov dword [ebp - 0x58], 0x1c32f1b0
jmp 0x40cec9
mov eax, dword [0x43f56c]
mov ecx, dword [0x43f568]
mov edx, eax
sub edx, 0x33e796b8
sub edx, 1
add edx, 0x33e796b8
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, 0x2f18b9a8
mov ecx, 0x47d21fc4
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x58], eax
jmp 0x40cec9
mov ecx, dword [0x43f56c]
mov eax, dword [0x43f568]
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, 0x2f18b9a8
mov ecx, 0xa0e88692
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x58], eax
jmp 0x40cec9
mov al, byte [ebp - 0x11]
and al, 1
movzx eax, al
mov dword [ebp - 0x68], eax
mov ecx, dword [ebp - 0x10]
xor ecx, ebp
call fcn.004271b0
mov eax, dword [ebp - 0x68]
lea esp, [ebp - 0xc]
pop esi
pop edi
pop ebx
pop ebp
ret
mov ecx, dword [ebp - 0x5c]
mov esi, dword [ebp - 0x60]
push eax
push eax
mov edx, esp
push eax
mov eax, esp
mov dword [edx], esi
mov dword [eax], ecx
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 - 0x58], 0xd52f19e5
jmp 0x40cec9
mov eax, dword [ebp - 0x48]
mov dword [ebp - 0x58], 0x46518059
jmp 0x40cec9
mov dword [ebp - 0x58], 0x6a6863bb
jmp 0x40cec9
mov dword [ebp - 0x58], 0xb0f3757
jmp 0x40cec9
mov dword [ebp - 0x58], 0xa8413c77
jmp 0x40cec9
mov eax, dword [ebp - 0x34]
mov dword [ebp - 0x58], 0xa416d2c5
jmp 0x40cec9
mov dword [ebp - 0x58], 0x128170bc
jmp 0x40cec9
mov dword [ebp - 0x58], 0x99d203c2
jmp 0x40cec9
mov eax, dword [ebp - 0x34]
mov dword [ebp - 0x58], 0x6e51fe2c
jmp 0x40cec9
mov dword [ebp - 0x58], 0x125d24b6
jmp 0x40cec9
mov eax, dword [ebp - 0x3c]
mov dword [ebp - 0x58], 0x7ae7fd65
jmp 0x40cec9
mov eax, dword [ebp - 0x50]
mov dword [ebp - 0x58], 0x34b77ed5
jmp 0x40cec9
mov dword [ebp - 0x58], 0x47d21fc4
jmp 0x40bbff