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

Disassembly:
push ebp
mov ebp, esp
push ebx
push edi
push esi
sub esp, 0x58
mov eax, dword [ebp + 0xc]
mov dword [ebp - 0x5c], eax
mov eax, dword [ebp + 8]
mov dword [ebp - 0x58], eax
mov eax, dword [0x43e080]
xor eax, ebp
mov dword [ebp - 0x10], eax
mov ecx, dword [0x43f57c]
mov eax, dword [0x43f578]
mov edx, ecx
sub edx, 0xe080a4d6
sub edx, 1
add edx, 0xe080a4d6
imul ecx, edx
and ecx, 1
cmp ecx, 0
sete cl
and cl, 1
mov byte [ebp - 0x4e], cl
cmp eax, 0xa
setl al
and al, 1
mov byte [ebp - 0x4d], al
mov dword [ebp - 0x54], 0x8273f930
mov eax, dword [ebp - 0x54]
mov dword [ebp - 0x60], eax
sub eax, 0x812e860a
je 0x40becb
jmp 0x40b915
mov eax, dword [ebp - 0x60]
sub eax, 0x8273f930
je 0x40bd68
jmp 0x40b928
mov eax, dword [ebp - 0x60]
sub eax, 0x829b9404
je 0x40c5b8
jmp 0x40b93b
mov eax, dword [ebp - 0x60]
sub eax, 0x86503c4b
je 0x40c0e8
jmp 0x40b94e
mov eax, dword [ebp - 0x60]
sub eax, 0x86990763
je 0x40c425
jmp 0x40b961
mov eax, dword [ebp - 0x60]
sub eax, 0x86acb76a
je 0x40c562
jmp 0x40b974
mov eax, dword [ebp - 0x60]
sub eax, 0x8b33e80a
je 0x40c886
jmp 0x40b987
mov eax, dword [ebp - 0x60]
sub eax, 0x8b36ac36
je 0x40c4ac
jmp 0x40b99a
mov eax, dword [ebp - 0x60]
sub eax, 0x9240cc0c
je 0x40c3d3
jmp 0x40b9ad
mov eax, dword [ebp - 0x60]
sub eax, 0x94c579fb
je 0x40c898
jmp 0x40b9c0
mov eax, dword [ebp - 0x60]
sub eax, 0x94f91079
je 0x40c67a
jmp 0x40b9d3
mov eax, dword [ebp - 0x60]
sub eax, 0x9732ea1a
je 0x40c822
jmp 0x40b9e6
mov eax, dword [ebp - 0x60]
sub eax, 0x99840c03
je 0x40c4b8
jmp 0x40b9f9
mov eax, dword [ebp - 0x60]
sub eax, 0x9aa6d19e
je 0x40c244
jmp 0x40ba0c
mov eax, dword [ebp - 0x60]
sub eax, 0x9bcdcf8e
je 0x40bfc9
jmp 0x40ba1f
mov eax, dword [ebp - 0x60]
sub eax, 0x9e058919
je 0x40be36
jmp 0x40ba32
mov eax, dword [ebp - 0x60]
sub eax, 0xa483a3fc
je 0x40c3b8
jmp 0x40ba45
mov eax, dword [ebp - 0x60]
sub eax, 0xad51ecb8
je 0x40c5d8
jmp 0x40ba58
mov eax, dword [ebp - 0x60]
sub eax, 0xb16593a7
je 0x40c60f
jmp 0x40ba6b
mov eax, dword [ebp - 0x60]
sub eax, 0xb3f7c23c
je 0x40c177
jmp 0x40ba7e
mov eax, dword [ebp - 0x60]
sub eax, 0xb7f20d8b
je 0x40c473
jmp 0x40ba91
mov eax, dword [ebp - 0x60]
sub eax, 0xba97b9d1
je 0x40c117
jmp 0x40baa4
mov eax, dword [ebp - 0x60]
sub eax, 0xbc13c595
je 0x40c345
jmp 0x40bab7
mov eax, dword [ebp - 0x60]
sub eax, 0xbf8fe27e
je 0x40c129
jmp 0x40baca
mov eax, dword [ebp - 0x60]
sub eax, 0xc1301821
je 0x40c031
jmp 0x40badd
mov eax, dword [ebp - 0x60]
sub eax, 0xc3bc52b9
je 0x40c5f7
jmp 0x40baf0
mov eax, dword [ebp - 0x60]
sub eax, 0xc56cec9a
je 0x40be2a
jmp 0x40bb03
mov eax, dword [ebp - 0x60]
sub eax, 0xc6104c8f
je 0x40c816
jmp 0x40bb16
mov eax, dword [ebp - 0x60]
sub eax, 0xddfb0f2d
je 0x40c3df
jmp 0x40bb29
mov eax, dword [ebp - 0x60]
sub eax, 0xe0977698
je 0x40c0cd
jmp 0x40bb3c
mov eax, dword [ebp - 0x60]
sub eax, 0xe118e731
je 0x40c1ea
jmp 0x40bb4f
mov eax, dword [ebp - 0x60]
sub eax, 0xed80d68e
je 0x40c7bc
jmp 0x40bb62
mov eax, dword [ebp - 0x60]
sub eax, 0xf2913bf2
je 0x40c49a
jmp 0x40bb75
mov eax, dword [ebp - 0x60]
sub eax, 0xf837d540
je 0x40befc
jmp 0x40bb88
mov eax, dword [ebp - 0x60]
sub eax, 0xfa30d1df
je 0x40c603
jmp 0x40bb9b
mov eax, dword [ebp - 0x60]
sub eax, 0x87216f
je 0x40c877
jmp 0x40bbae
mov eax, dword [ebp - 0x60]
sub eax, 0x293d4d3
je 0x40c1f6
jmp 0x40bbc1
mov eax, dword [ebp - 0x60]
sub eax, 0x773a7d7
je 0x40c56e
jmp 0x40bbd4
mov eax, dword [ebp - 0x60]
sub eax, 0xab27a86
je 0x40c7fe
jmp 0x40bbe7
mov eax, dword [ebp - 0x60]
sub eax, 0x258ecb4a
je 0x40c2f7
jmp 0x40bbfa
mov eax, dword [ebp - 0x60]
sub eax, 0x2d2e18cf
je 0x40c76e
jmp 0x40bc0d
mov eax, dword [ebp - 0x60]
sub eax, 0x3010d892
je 0x40c714
jmp 0x40bc20
mov eax, dword [ebp - 0x60]
sub eax, 0x30b48e7c
je 0x40bdb3
jmp 0x40bc33
mov eax, dword [ebp - 0x60]
sub eax, 0x37650355
je 0x40c47f
jmp 0x40bc46
mov eax, dword [ebp - 0x60]
sub eax, 0x38d84066
je 0x40bfbd
jmp 0x40bc59
mov eax, dword [ebp - 0x60]
sub eax, 0x3f5435fe
je 0x40beea
jmp 0x40bc6c
mov eax, dword [ebp - 0x60]
sub eax, 0x4d09eb99
je 0x40c7de
jmp 0x40bc7f
mov eax, dword [ebp - 0x60]
sub eax, 0x4fc76ffc
je 0x40c2eb
jmp 0x40bc92
mov eax, dword [ebp - 0x60]
sub eax, 0x59729fde
je 0x40c7c8
jmp 0x40bca5
mov eax, dword [ebp - 0x60]
sub eax, 0x5e87b9f5
je 0x40bf6f
jmp 0x40bcb8
mov eax, dword [ebp - 0x60]
sub eax, 0x5efa633e
je 0x40c105
jmp 0x40bccb
mov eax, dword [ebp - 0x60]
sub eax, 0x60e4d46e
je 0x40c82e
jmp 0x40bcde
mov eax, dword [ebp - 0x60]
sub eax, 0x61821af4
je 0x40c720
jmp 0x40bcf1
mov eax, dword [ebp - 0x60]
sub eax, 0x639d8655
je 0x40c86b
jmp 0x40bd04
mov eax, dword [ebp - 0x60]
sub eax, 0x63a61eda
je 0x40c80a
jmp 0x40bd17
mov eax, dword [ebp - 0x60]
sub eax, 0x6d4b450e
je 0x40c5c4
jmp 0x40bd2a
mov eax, dword [ebp - 0x60]
sub eax, 0x6eb3d2c4
je 0x40c506
jmp 0x40bd3d
mov eax, dword [ebp - 0x60]
sub eax, 0x71ed00e0
je 0x40c8d3
jmp 0x40bd50
mov eax, dword [ebp - 0x60]
sub eax, 0x796eacc6
je 0x40c07f
jmp 0x40bd63
jmp 0x40c8da
mov bl, byte [ebp - 0x4e]
mov dh, byte [ebp - 0x4d]
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, 0xab27a86
mov ecx, 0x30b48e7c
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x54], eax
jmp 0x40c8da
push eax
mov eax, esp
mov dword [ebp - 0x4c], eax
push eax
mov eax, esp
mov dword [ebp - 0x48], eax
mov ecx, dword [0x43f57c]
mov eax, dword [0x43f578]
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, 0xab27a86
mov ecx, 0xc56cec9a
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x54], eax
jmp 0x40c8da
mov dword [ebp - 0x54], 0x9e058919
jmp 0x40c8da
mov ecx, dword [ebp - 0x58]
mov esi, dword [ebp - 0x5c]
push eax
mov eax, esp
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
mov edx, esp
mov dword [ebp - 0x38], edx
push eax
sub esp, 0xffc
mov edx, esp
mov dword [ebp - 0x34], edx
push eax
mov edx, esp
mov dword [ebp - 0x30], edx
mov edx, dword [ebp - 0x48]
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 ecx, eax
mov eax, dword [ebp - 0x44]
mov dword [eax], ecx
mov eax, dword [ebp - 0x44]
mov eax, dword [eax]
mov dword [ebp - 0x2c], eax
mov dword [ebp - 0x54], 0x812e860a
jmp 0x40c8da
mov edx, dword [ebp - 0x2c]
mov esi, 0xffffffff
mov eax, 0x9bcdcf8e
mov ecx, 0x3f5435fe
cmp edx, esi
cmove eax, ecx
mov dword [ebp - 0x54], eax
jmp 0x40c8da
mov eax, dword [ebp - 0x4c]
mov byte [eax], 0
mov dword [ebp - 0x54], 0xf837d540
jmp 0x40c8da
mov ecx, dword [0x43f57c]
mov eax, dword [0x43f578]
mov edx, ecx
sub edx, 0xc29cb931
sub edx, 1
add edx, 0xc29cb931
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, 0x63a61eda
mov ecx, 0x5e87b9f5
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x54], eax
jmp 0x40c8da
mov eax, dword [0x43f57c]
mov ecx, dword [0x43f578]
mov edx, eax
sub edx, 0x3161f10
sub edx, 1
add edx, 0x3161f10
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, 0x63a61eda
mov ecx, 0x38d84066
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x54], eax
jmp 0x40c8da
mov dword [ebp - 0x54], 0x59729fde
jmp 0x40c8da
mov eax, dword [ebp - 0x48]
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 - 0x40]
mov dword [eax], ecx
mov eax, dword [ebp - 0x40]
mov ecx, 0xffffffff
cmp dword [eax], ecx
sete al
and al, 1
mov byte [ebp - 0x26], al
mov dword [ebp - 0x54], 0xc1301821
jmp 0x40c8da
mov eax, dword [0x43f57c]
mov ecx, dword [0x43f578]
mov edx, eax
sub edx, 0x93d06a3f
sub edx, 1
add edx, 0x93d06a3f
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, 0xc6104c8f
mov ecx, 0x796eacc6
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x54], eax
jmp 0x40c8da
mov eax, dword [0x43f57c]
mov ecx, dword [0x43f578]
mov edx, eax
add edx, 0xb32ebdcd
sub edx, 1
sub edx, 0xb32ebdcd
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, 0xc6104c8f
mov ecx, 0xe0977698
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x54], eax
jmp 0x40c8da
mov dl, byte [ebp - 0x26]
mov eax, 0xba97b9d1
mov ecx, 0x86503c4b
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x54], eax
jmp 0x40c8da
mov eax, dword [ebp - 0x44]
mov eax, dword [eax]
sub esp, 4
mov dword [esp], eax
call dword [sym.imp.KERNEL32.dll_CloseHandle]
mov dword [ebp - 0x54], 0x5efa633e
jmp 0x40c8da
mov eax, dword [ebp - 0x4c]
mov byte [eax], 0
mov dword [ebp - 0x54], 0x59729fde
jmp 0x40c8da
mov eax, dword [ebp - 0x3c]
mov byte [eax], 0
mov dword [ebp - 0x54], 0xbf8fe27e
jmp 0x40c8da
mov eax, dword [0x43f57c]
mov ecx, dword [0x43f578]
mov edx, eax
add edx, 0xfd619787
sub edx, 1
sub edx, 0xfd619787
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, 0x9732ea1a
mov ecx, 0xb3f7c23c
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x54], eax
jmp 0x40c8da
mov ecx, dword [0x43f57c]
mov eax, dword [0x43f578]
mov edx, ecx
add edx, 0x20fe2735
sub edx, 1
sub edx, 0x20fe2735
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, 0x9732ea1a
mov ecx, 0xe118e731
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x54], eax
jmp 0x40c8da
mov dword [ebp - 0x54], 0x293d4d3
jmp 0x40c8da
mov eax, dword [0x43f57c]
mov ecx, dword [0x43f578]
mov edx, eax
add edx, 0xa90a1ca8
sub edx, 1
sub edx, 0xa90a1ca8
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, 0x60e4d46e
mov ecx, 0x9aa6d19e
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x54], eax
jmp 0x40c8da
mov ecx, dword [ebp - 0x34]
mov eax, dword [ebp - 0x44]
mov edx, dword [eax]
mov eax, dword [ebp - 0x30]
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 - 0x25], al
mov ecx, dword [0x43f57c]
mov eax, dword [0x43f578]
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, 0x60e4d46e
mov ecx, 0x4fc76ffc
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x54], eax
jmp 0x40c8da
mov dword [ebp - 0x54], 0x258ecb4a
jmp 0x40c8da
mov eax, dword [0x43f57c]
mov ecx, dword [0x43f578]
mov edx, eax
add edx, 0x33583634
sub edx, 1
sub edx, 0x33583634
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, 0x639d8655
mov ecx, 0xbc13c595
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x54], eax
jmp 0x40c8da
mov ecx, dword [0x43f57c]
mov eax, dword [0x43f578]
mov edx, ecx
add edx, 0xf81a59a1
sub edx, 1
sub edx, 0xf81a59a1
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, 0x639d8655
mov ecx, 0xa483a3fc
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x54], eax
jmp 0x40c8da
mov dl, byte [ebp - 0x25]
mov eax, 0x9240cc0c
mov ecx, 0xddfb0f2d
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x54], eax
jmp 0x40c8da
mov dword [ebp - 0x54], 0xb16593a7
jmp 0x40c8da
mov eax, dword [0x43f57c]
mov ecx, dword [0x43f578]
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, 0x87216f
mov ecx, 0x86990763
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x54], eax
jmp 0x40c8da
mov eax, dword [ebp - 0x30]
mov eax, dword [eax]
mov dword [ebp - 0x24], eax
mov eax, dword [0x43f57c]
mov ecx, dword [0x43f578]
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, 0x87216f
mov ecx, 0xb7f20d8b
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x54], eax
jmp 0x40c8da
mov dword [ebp - 0x54], 0x37650355
jmp 0x40c8da
mov edx, dword [ebp - 0x24]
mov eax, 0x99840c03
mov ecx, 0xf2913bf2
cmp edx, 0
cmove eax, ecx
mov dword [ebp - 0x54], eax
jmp 0x40c8da
mov eax, dword [ebp - 0x3c]
mov byte [eax], 1
mov dword [ebp - 0x54], 0x8b36ac36
jmp 0x40c8da
mov dword [ebp - 0x54], 0xb16593a7
jmp 0x40c8da
mov eax, dword [0x43f57c]
mov ecx, dword [0x43f578]
mov edx, eax
sub edx, 0xc9fe0341
sub edx, 1
add edx, 0xc9fe0341
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, 0x8b33e80a
mov ecx, 0x6eb3d2c4
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x54], eax
jmp 0x40c8da
mov eax, dword [ebp - 0x30]
mov eax, dword [eax]
mov dword [ebp - 0x20], eax
mov eax, dword [ebp - 0x34]
mov dword [ebp - 0x1c], eax
mov eax, dword [0x43f57c]
mov ecx, dword [0x43f578]
mov edx, eax
sub edx, 0xff39d8c6
sub edx, 1
add edx, 0xff39d8c6
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, 0x8b33e80a
mov ecx, 0x86acb76a
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x54], eax
jmp 0x40c8da
mov dword [ebp - 0x54], 0x773a7d7
jmp 0x40c8da
mov eax, dword [ebp - 0x40]
mov esi, dword [eax]
mov eax, dword [ebp - 0x38]
mov ecx, dword [ebp - 0x20]
mov edx, dword [ebp - 0x1c]
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, 0x829b9404
mov ecx, 0x6d4b450e
cmp edx, 0
cmovne eax, ecx
mov dword [ebp - 0x54], eax
jmp 0x40c8da
mov dword [ebp - 0x54], 0xb16593a7
jmp 0x40c8da
mov eax, dword [ebp - 0x38]
mov eax, dword [eax]
mov dword [ebp - 0x18], eax
mov dword [ebp - 0x54], 0xad51ecb8
jmp 0x40c8da
mov eax, dword [ebp - 0x30]
mov esi, dword [eax]
mov edx, dword [ebp - 0x18]
mov eax, 0xfa30d1df
mov ecx, 0xc3bc52b9
cmp edx, esi
cmovne eax, ecx
mov dword [ebp - 0x54], eax
jmp 0x40c8da
mov dword [ebp - 0x54], 0xb16593a7
jmp 0x40c8da
mov dword [ebp - 0x54], 0x293d4d3
jmp 0x40c8da
mov ecx, dword [0x43f57c]
mov eax, dword [0x43f578]
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, 0x94c579fb
mov ecx, 0x94f91079
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x54], eax
jmp 0x40c8da
mov eax, dword [ebp - 0x44]
mov eax, dword [eax]
sub esp, 4
mov dword [esp], eax
call dword [sym.imp.KERNEL32.dll_CloseHandle]
mov eax, dword [ebp - 0x40]
mov eax, dword [eax]
sub esp, 4
mov dword [esp], eax
call dword [sym.imp.KERNEL32.dll_CloseHandle]
mov eax, dword [ebp - 0x3c]
mov cl, byte [eax]
mov eax, dword [ebp - 0x4c]
and cl, 1
mov byte [eax], cl
mov ecx, dword [0x43f57c]
mov eax, dword [0x43f578]
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, 0x94c579fb
mov ecx, 0x3010d892
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x54], eax
jmp 0x40c8da
mov dword [ebp - 0x54], 0x61821af4
jmp 0x40c8da
mov eax, dword [0x43f57c]
mov ecx, dword [0x43f578]
mov edx, eax
add edx, 0x74a58a07
sub edx, 1
sub edx, 0x74a58a07
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, 0x71ed00e0
mov ecx, 0x2d2e18cf
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x54], eax
jmp 0x40c8da
mov eax, dword [0x43f57c]
mov ecx, dword [0x43f578]
mov edx, eax
add edx, 0xfad28db1
sub edx, 1
sub edx, 0xfad28db1
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, 0x71ed00e0
mov ecx, 0xed80d68e
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x54], eax
jmp 0x40c8da
mov dword [ebp - 0x54], 0x59729fde
jmp 0x40c8da
mov eax, dword [ebp - 0x4c]
mov al, byte [eax]
and al, 1
mov byte [ebp - 0x11], al
mov dword [ebp - 0x54], 0x4d09eb99
jmp 0x40c8da
mov al, byte [ebp - 0x11]
and al, 1
movzx eax, al
mov dword [ebp - 0x64], eax
mov ecx, dword [ebp - 0x10]
xor ecx, ebp
call fcn.00426e60
mov eax, dword [ebp - 0x64]
lea esp, [ebp - 0xc]
pop esi
pop edi
pop ebx
pop ebp
ret
mov dword [ebp - 0x54], 0x30b48e7c
jmp 0x40c8da
mov dword [ebp - 0x54], 0x5e87b9f5
jmp 0x40c8da
mov dword [ebp - 0x54], 0x796eacc6
jmp 0x40c8da
mov dword [ebp - 0x54], 0xb3f7c23c
jmp 0x40c8da
mov ecx, dword [ebp - 0x34]
mov eax, dword [ebp - 0x44]
mov edx, dword [eax]
mov eax, dword [ebp - 0x30]
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 - 0x54], 0x9aa6d19e
jmp 0x40c8da
mov dword [ebp - 0x54], 0xbc13c595
jmp 0x40c8da
mov eax, dword [ebp - 0x30]
mov dword [ebp - 0x54], 0x86990763
jmp 0x40c8da
mov eax, dword [ebp - 0x30]
mov eax, dword [ebp - 0x34]
mov dword [ebp - 0x54], 0x6eb3d2c4
jmp 0x40c8da
mov eax, dword [ebp - 0x44]
mov eax, dword [eax]
sub esp, 4
mov dword [esp], eax
call dword [sym.imp.KERNEL32.dll_CloseHandle]
mov eax, dword [ebp - 0x40]
mov eax, dword [eax]
sub esp, 4
mov dword [esp], eax
call dword [sym.imp.KERNEL32.dll_CloseHandle]
mov eax, dword [ebp - 0x3c]
mov cl, byte [eax]
mov eax, dword [ebp - 0x4c]
and cl, 1
mov byte [eax], cl
mov dword [ebp - 0x54], 0x94f91079
jmp 0x40c8da
mov dword [ebp - 0x54], 0x2d2e18cf
jmp 0x40b8ff