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

Disassembly:
push ebp
mov ebp, esp
push ebx
push edi
push esi
sub esp, 0x64
mov eax, dword [ebp + 0xc]
mov dword [ebp - 0x68], eax
mov eax, dword [ebp + 8]
mov dword [ebp - 0x64], eax
mov eax, dword [0x431080]
xor eax, ebp
mov dword [ebp - 0x10], eax
mov dword [ebp - 0x60], 0x5f189b1a
mov eax, dword [ebp - 0x60]
mov dword [ebp - 0x6c], eax
sub eax, 0x80aec94d
je 0x406f10
jmp 0x4067ac
mov eax, dword [ebp - 0x6c]
sub eax, 0x82bbfded
je 0x407ade
jmp 0x4067bf
mov eax, dword [ebp - 0x6c]
sub eax, 0x8ab8fed5
je 0x407151
jmp 0x4067d2
mov eax, dword [ebp - 0x6c]
sub eax, 0x91253979
je 0x407408
jmp 0x4067e5
mov eax, dword [ebp - 0x6c]
sub eax, 0x92397bb9
je 0x4078cd
jmp 0x4067f8
mov eax, dword [ebp - 0x6c]
sub eax, 0x98cdda51
je 0x40791b
jmp 0x40680b
mov eax, dword [ebp - 0x6c]
sub eax, 0x9da0bec8
je 0x407a72
jmp 0x40681e
mov eax, dword [ebp - 0x6c]
sub eax, 0x9e9dfff6
je 0x40786b
jmp 0x406831
mov eax, dword [ebp - 0x6c]
sub eax, 0xa8443233
je 0x407274
jmp 0x406844
mov eax, dword [ebp - 0x6c]
sub eax, 0xbddafea4
je 0x407414
jmp 0x406857
mov eax, dword [ebp - 0x6c]
sub eax, 0xbebc5fcd
je 0x406da1
jmp 0x40686a
mov eax, dword [ebp - 0x6c]
sub eax, 0xc71dcb85
je 0x407aed
jmp 0x40687d
mov eax, dword [ebp - 0x6c]
sub eax, 0xc76de2f0
je 0x407518
jmp 0x406890
mov eax, dword [ebp - 0x6c]
sub eax, 0xc84c128c
je 0x4075d7
jmp 0x4068a3
mov eax, dword [ebp - 0x6c]
sub eax, 0xc91fa8d9
je 0x407308
jmp 0x4068b6
mov eax, dword [ebp - 0x6c]
sub eax, 0xcae2b0a4
je 0x406f00
jmp 0x4068c9
mov eax, dword [ebp - 0x6c]
sub eax, 0xd0694d46
je 0x4075fe
jmp 0x4068dc
mov eax, dword [ebp - 0x6c]
sub eax, 0xd1547009
je 0x40768d
jmp 0x4068ef
mov eax, dword [ebp - 0x6c]
sub eax, 0xd160d568
je 0x407583
jmp 0x406902
mov eax, dword [ebp - 0x6c]
sub eax, 0xd36f27f8
je 0x406f1c
jmp 0x406915
mov eax, dword [ebp - 0x6c]
sub eax, 0xd6ccd25c
je 0x406d95
jmp 0x406928
mov eax, dword [ebp - 0x6c]
sub eax, 0xd78bda9b
je 0x407712
jmp 0x40693b
mov eax, dword [ebp - 0x6c]
sub eax, 0xd8d081fc
je 0x4072c2
jmp 0x40694e
mov eax, dword [ebp - 0x6c]
sub eax, 0xe4bd897a
je 0x406d0a
jmp 0x406961
mov eax, dword [ebp - 0x6c]
sub eax, 0xe7d6d958
je 0x4075f2
jmp 0x406974
mov eax, dword [ebp - 0x6c]
sub eax, 0xe83477e5
je 0x407259
jmp 0x406987
mov eax, dword [ebp - 0x6c]
sub eax, 0xeea59ba7
je 0x4077b2
jmp 0x40699a
mov eax, dword [ebp - 0x6c]
sub eax, 0xfc46f3ac
je 0x407b0b
jmp 0x4069ad
mov eax, dword [ebp - 0x6c]
sub eax, 0xffe544b3
je 0x4079ae
jmp 0x4069c0
mov eax, dword [ebp - 0x6c]
sub eax, 0x3ec04b3
je 0x40720f
jmp 0x4069d3
mov eax, dword [ebp - 0x6c]
sub eax, 0x4b7427c
je 0x4077f8
jmp 0x4069e6
mov eax, dword [ebp - 0x6c]
sub eax, 0x70b6bc9
je 0x407a66
jmp 0x4069f9
mov eax, dword [ebp - 0x6c]
sub eax, 0xdfa4335
je 0x4071af
jmp 0x406a0c
mov eax, dword [ebp - 0x6c]
sub eax, 0xec67bf2
je 0x40761a
jmp 0x406a1f
mov eax, dword [ebp - 0x6c]
sub eax, 0x10d0c53f
je 0x4070a8
jmp 0x406a32
mov eax, dword [ebp - 0x6c]
sub eax, 0x125bede3
je 0x40721b
jmp 0x406a45
mov eax, dword [ebp - 0x6c]
sub eax, 0x16ba8112
je 0x407aa2
jmp 0x406a58
mov eax, dword [ebp - 0x6c]
sub eax, 0x20dd0d19
je 0x406f62
jmp 0x406a6b
mov eax, dword [ebp - 0x6c]
sub eax, 0x22a99082
je 0x4078c1
jmp 0x406a7e
mov eax, dword [ebp - 0x6c]
sub eax, 0x274d7e3b
je 0x407203
jmp 0x406a91
mov eax, dword [ebp - 0x6c]
sub eax, 0x2751f9a8
je 0x407136
jmp 0x406aa4
mov eax, dword [ebp - 0x6c]
sub eax, 0x27e5c5a3
je 0x407a84
jmp 0x406ab7
mov eax, dword [ebp - 0x6c]
sub eax, 0x2e1248be
je 0x4077a6
jmp 0x406aca
mov eax, dword [ebp - 0x6c]
sub eax, 0x316b7c53
je 0x406e14
jmp 0x406add
mov eax, dword [ebp - 0x6c]
sub eax, 0x32874ffd
je 0x40798e
jmp 0x406af0
mov eax, dword [ebp - 0x6c]
sub eax, 0x36041e41
je 0x4077c4
jmp 0x406b03
mov eax, dword [ebp - 0x6c]
sub eax, 0x369e14f7
je 0x40711b
jmp 0x406b16
mov eax, dword [ebp - 0x6c]
sub eax, 0x37eee793
je 0x407349
jmp 0x406b29
mov eax, dword [ebp - 0x6c]
sub eax, 0x3893553a
je 0x407029
jmp 0x406b3c
mov eax, dword [ebp - 0x6c]
sub eax, 0x3abdd3e2
je 0x407aff
jmp 0x406b4f
mov eax, dword [ebp - 0x6c]
sub eax, 0x3cb865a4
je 0x40750c
jmp 0x406b62
mov eax, dword [ebp - 0x6c]
sub eax, 0x40b498ad
je 0x4079ba
jmp 0x406b75
mov eax, dword [ebp - 0x6c]
sub eax, 0x428da3c4
je 0x407a90
jmp 0x406b88
mov eax, dword [ebp - 0x6c]
sub eax, 0x4a06adf3
je 0x407397
jmp 0x406b9b
mov eax, dword [ebp - 0x6c]
sub eax, 0x508ee853
je 0x407466
jmp 0x406bae
mov eax, dword [ebp - 0x6c]
sub eax, 0x57d1ea21
je 0x407760
jmp 0x406bc1
mov eax, dword [ebp - 0x6c]
sub eax, 0x5a195f4b
je 0x407a16
jmp 0x406bd4
mov eax, dword [ebp - 0x6c]
sub eax, 0x5c45f8d9
je 0x407314
jmp 0x406be7
mov eax, dword [ebp - 0x6c]
sub eax, 0x5c629966
je 0x407706
jmp 0x406bfa
mov eax, dword [ebp - 0x6c]
sub eax, 0x5d129e13
je 0x40732e
jmp 0x406c0d
mov eax, dword [ebp - 0x6c]
sub eax, 0x5d550018
je 0x406ee5
jmp 0x406c20
mov eax, dword [ebp - 0x6c]
sub eax, 0x5dc91a1a
je 0x407035
jmp 0x406c33
mov eax, dword [ebp - 0x6c]
sub eax, 0x5f189b1a
je 0x406c97
jmp 0x406c46
mov eax, dword [ebp - 0x6c]
sub eax, 0x6bf9d994
je 0x407161
jmp 0x406c59
mov eax, dword [ebp - 0x6c]
sub eax, 0x70042479
je 0x407420
mov ecx, dword [0x43254c]
mov eax, dword [0x432548]
mov edx, ecx
sub edx, 0x229ffcab
sub edx, 1
add edx, 0x229ffcab
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, 0xffe544b3
mov ecx, 0xe4bd897a
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x60], eax
jmp 0x407b1e
push eax
mov eax, esp
mov dword [ebp - 0x48], eax
push eax
mov eax, esp
mov dword [ebp - 0x44], eax
push eax
sub esp, 0xffc
mov eax, esp
mov dword [ebp - 0x40], eax
mov ecx, dword [0x43254c]
mov eax, dword [0x432548]
mov edx, ecx
sub edx, 0x6f80ba77
sub edx, 1
add edx, 0x6f80ba77
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, 0xffe544b3
mov ecx, 0xd6ccd25c
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x60], eax
jmp 0x407b1e
mov dword [ebp - 0x60], 0xbebc5fcd
jmp 0x407b1e
mov ecx, dword [0x43254c]
mov eax, dword [0x432548]
mov edx, ecx
add edx, 0x537ab683
sub edx, 1
sub edx, 0x537ab683
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, 0x40b498ad
mov ecx, 0x316b7c53
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x60], eax
jmp 0x407b1e
mov eax, dword [ebp - 0x64]
mov ecx, dword [ebp - 0x68]
push eax
mov edx, esp
mov dword [ebp - 0x3c], edx
mov dword [ebp - 0x50], ecx
mov dword [ebp - 0x54], eax
mov eax, dword [ebp - 0x54]
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], eax
mov eax, 0xffffffff
cmp dword [ebp - 0x58], eax
sete al
and al, 1
mov byte [ebp - 0x36], al
mov ecx, dword [0x43254c]
mov eax, dword [0x432548]
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, 0x40b498ad
mov ecx, 0x5d550018
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x60], eax
jmp 0x407b1e
mov dl, byte [ebp - 0x36]
mov eax, 0xd36f27f8
mov ecx, 0xcae2b0a4
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x60], eax
jmp 0x407b1e
mov byte [ebp - 0x49], 0
mov dword [ebp - 0x60], 0x80aec94d
jmp 0x407b1e
mov dword [ebp - 0x60], 0x4b7427c
jmp 0x407b1e
mov eax, dword [0x43254c]
mov ecx, dword [0x432548]
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, 0x5a195f4b
mov ecx, 0x20dd0d19
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x60], eax
jmp 0x407b1e
mov eax, dword [ebp - 0x50]
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 - 0x5c], eax
mov eax, 0xffffffff
cmp dword [ebp - 0x5c], eax
sete al
and al, 1
mov byte [ebp - 0x35], al
mov ecx, dword [0x43254c]
mov eax, dword [0x432548]
mov edx, ecx
sub edx, 0xdef71d55
sub edx, 1
add edx, 0xdef71d55
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, 0x5a195f4b
mov ecx, 0x3893553a
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x60], eax
jmp 0x407b1e
mov dword [ebp - 0x60], 0x5dc91a1a
jmp 0x407b1e
mov ecx, dword [0x43254c]
mov eax, dword [0x432548]
mov edx, ecx
add edx, 0xb185e8a6
sub edx, 1
sub edx, 0xb185e8a6
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, 0x70b6bc9
mov ecx, 0x10d0c53f
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x60], eax
jmp 0x407b1e
mov ecx, dword [0x43254c]
mov eax, dword [0x432548]
mov edx, ecx
sub edx, 0x92488253
sub edx, 1
add edx, 0x92488253
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, 0x70b6bc9
mov ecx, 0x369e14f7
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x60], eax
jmp 0x407b1e
mov dl, byte [ebp - 0x35]
mov eax, 0x6bf9d994
mov ecx, 0x2751f9a8
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x60], eax
jmp 0x407b1e
mov eax, dword [ebp - 0x58]
sub esp, 4
mov dword [esp], eax
call dword [sym.imp.KERNEL32.dll_CloseHandle]
mov dword [ebp - 0x60], 0x8ab8fed5
jmp 0x407b1e
mov byte [ebp - 0x49], 0
mov dword [ebp - 0x60], 0x4b7427c
jmp 0x407b1e
mov eax, dword [0x43254c]
mov ecx, dword [0x432548]
mov edx, eax
add edx, 0x8b770c0f
sub edx, 1
sub edx, 0x8b770c0f
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, 0x9da0bec8
mov ecx, 0xdfa4335
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x60], eax
jmp 0x407b1e
mov eax, dword [ebp - 0x48]
mov byte [eax], 0
mov eax, dword [0x43254c]
mov ecx, dword [0x432548]
mov edx, eax
add edx, 0xfedb8b31
sub edx, 1
sub edx, 0xfedb8b31
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, 0x9da0bec8
mov ecx, 0x274d7e3b
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x60], eax
jmp 0x407b1e
mov dword [ebp - 0x60], 0x3ec04b3
jmp 0x407b1e
mov dword [ebp - 0x60], 0x125bede3
jmp 0x407b1e
mov ecx, dword [ebp - 0x40]
mov edx, dword [ebp - 0x58]
mov eax, 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 - 0x34], eax
mov dword [ebp - 0x60], 0xe83477e5
jmp 0x407b1e
mov edx, dword [ebp - 0x34]
mov eax, 0xa8443233
mov ecx, 0x5c45f8d9
cmp edx, 0
cmovne eax, ecx
mov dword [ebp - 0x60], eax
jmp 0x407b1e
mov eax, dword [0x43254c]
mov ecx, dword [0x432548]
mov edx, eax
sub edx, 0x1c97de33
sub edx, 1
add edx, 0x1c97de33
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, 0x27e5c5a3
mov ecx, 0xd8d081fc
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x60], eax
jmp 0x407b1e
mov eax, dword [0x43254c]
mov ecx, dword [0x432548]
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, 0x27e5c5a3
mov ecx, 0xc91fa8d9
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x60], eax
jmp 0x407b1e
mov dword [ebp - 0x60], 0xeea59ba7
jmp 0x407b1e
mov eax, dword [ebp - 0x3c]
cmp dword [eax], 0
sete al
and al, 1
mov byte [ebp - 0x2d], al
mov dword [ebp - 0x60], 0x5d129e13
jmp 0x407b1e
mov dl, byte [ebp - 0x2d]
mov eax, 0x70042479
mov ecx, 0x37eee793
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x60], eax
jmp 0x407b1e
mov eax, dword [0x43254c]
mov ecx, dword [0x432548]
mov edx, eax
sub edx, 0x76b59b33
sub edx, 1
add edx, 0x76b59b33
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, 0x428da3c4
mov ecx, 0x4a06adf3
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x60], eax
jmp 0x407b1e
mov eax, dword [ebp - 0x48]
mov byte [eax], 1
mov ecx, dword [0x43254c]
mov eax, dword [0x432548]
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, 0x428da3c4
mov ecx, 0x91253979
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x60], eax
jmp 0x407b1e
mov dword [ebp - 0x60], 0xbddafea4
jmp 0x407b1e
mov dword [ebp - 0x60], 0xeea59ba7
jmp 0x407b1e
mov eax, dword [ebp - 0x3c]
mov ecx, dword [eax]
mov edx, dword [ebp - 0x40]
mov esi, dword [ebp - 0x5c]
mov eax, dword [ebp - 0x44]
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 - 0x2c], eax
mov ecx, dword [0x43254c]
mov eax, dword [0x432548]
mov edx, ecx
add edx, 0x5b5c68e5
sub edx, 1
sub edx, 0x5b5c68e5
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, 0x16ba8112
mov ecx, 0x3cb865a4
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x60], eax
jmp 0x407b1e
mov dword [ebp - 0x60], 0xc76de2f0
jmp 0x407b1e
mov ecx, dword [0x43254c]
mov eax, dword [0x432548]
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, 0x82bbfded
mov ecx, 0xd160d568
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x60], eax
jmp 0x407b1e
mov eax, dword [ebp - 0x2c]
cmp eax, 0
setne al
and al, 1
mov byte [ebp - 0x25], al
mov eax, dword [0x43254c]
mov ecx, dword [0x432548]
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, 0x82bbfded
mov ecx, 0xc84c128c
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x60], eax
jmp 0x407b1e
mov dl, byte [ebp - 0x25]
mov eax, 0xe7d6d958
mov ecx, 0xd0694d46
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x60], eax
jmp 0x407b1e
mov dword [ebp - 0x60], 0xeea59ba7
jmp 0x407b1e
mov eax, dword [ebp - 0x44]
mov eax, dword [eax]
mov dword [ebp - 0x24], eax
mov eax, dword [ebp - 0x3c]
mov eax, dword [eax]
mov dword [ebp - 0x20], eax
mov dword [ebp - 0x60], 0xec67bf2
jmp 0x407b1e
mov ecx, dword [0x43254c]
mov eax, dword [0x432548]
mov edx, ecx
add edx, 0x456a30da
sub edx, 1
sub edx, 0x456a30da
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, 0xc71dcb85
mov ecx, 0xd1547009
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x60], eax
jmp 0x407b1e
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 [0x43254c]
mov ecx, dword [0x432548]
mov edx, eax
sub edx, 0xcfe4e317
sub edx, 1
add edx, 0xcfe4e317
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, 0xc71dcb85
mov ecx, 0x7bf079a3
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x60], eax
jmp 0x407b1e
mov dword [ebp - 0x60], 0xeea59ba7
jmp 0x407b1e
mov eax, dword [0x43254c]
mov ecx, dword [0x432548]
mov edx, eax
sub edx, 0xaa02d623
sub edx, 1
add edx, 0xaa02d623
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, 0x3abdd3e2
mov ecx, 0x57d1ea21
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x60], eax
jmp 0x407b1e
mov eax, dword [0x43254c]
mov ecx, dword [0x432548]
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, 0x3abdd3e2
mov ecx, 0x2e1248be
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x60], eax
jmp 0x407b1e
mov dword [ebp - 0x60], 0x125bede3
jmp 0x407b1e
mov eax, dword [ebp - 0x58]
mov dword [ebp - 0x18], eax
mov dword [ebp - 0x60], 0x36041e41
jmp 0x407b1e
mov eax, dword [ebp - 0x18]
sub esp, 4
mov dword [esp], eax
call dword [sym.imp.KERNEL32.dll_CloseHandle]
mov eax, dword [ebp - 0x5c]
sub esp, 4
mov dword [esp], eax
call dword [sym.imp.KERNEL32.dll_CloseHandle]
mov eax, dword [ebp - 0x48]
mov al, byte [eax]
and al, 1
mov byte [ebp - 0x49], al
mov dword [ebp - 0x60], 0x4b7427c
jmp 0x407b1e
mov ecx, dword [0x43254c]
mov eax, dword [0x432548]
mov edx, ecx
add edx, 0xc9bc9b0c
sub edx, 1
sub edx, 0xc9bc9b0c
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, 0xfc46f3ac
mov ecx, 0x9e9dfff6
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x60], eax
jmp 0x407b1e
mov al, byte [ebp - 0x49]
and al, 1
mov byte [ebp - 0x11], al
mov eax, dword [0x43254c]
mov ecx, dword [0x432548]
mov edx, eax
sub edx, 0xb46f0864
sub edx, 1
add edx, 0xb46f0864
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, 0xfc46f3ac
mov ecx, 0x22a99082
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x60], eax
jmp 0x407b1e
mov dword [ebp - 0x60], 0x92397bb9
jmp 0x407b1e
mov eax, dword [0x43254c]
mov ecx, dword [0x432548]
mov edx, eax
add edx, 0xe1271fe3
sub edx, 1
sub edx, 0xe1271fe3
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, 0x73274579
mov ecx, 0x98cdda51
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x60], eax
jmp 0x407b1e
mov ecx, dword [0x43254c]
mov eax, dword [0x432548]
mov edx, ecx
sub edx, 0x797df20e
sub edx, 1
add edx, 0x797df20e
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, 0x73274579
mov ecx, 0x32874ffd
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x60], eax
jmp 0x407b1e
mov al, byte [ebp - 0x11]
and al, 1
movzx eax, al
mov dword [ebp - 0x70], eax
mov ecx, dword [ebp - 0x10]
xor ecx, ebp
call fcn.0041ad10
mov eax, dword [ebp - 0x70]
lea esp, [ebp - 0xc]
pop esi
pop edi
pop ebx
pop ebp
ret
mov dword [ebp - 0x60], 0xe4bd897a
jmp 0x407b1e
mov eax, dword [ebp - 0x64]
mov ecx, dword [ebp - 0x68]
mov dword [ebp - 0x50], ecx
mov dword [ebp - 0x54], eax
mov eax, dword [ebp - 0x54]
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], eax
mov dword [ebp - 0x60], 0x316b7c53
jmp 0x407b1e
mov eax, dword [ebp - 0x50]
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 - 0x5c], eax
mov dword [ebp - 0x60], 0x20dd0d19
jmp 0x407b1e
mov dword [ebp - 0x60], 0x10d0c53f
jmp 0x407b1e
mov eax, dword [ebp - 0x48]
mov byte [eax], 0
mov dword [ebp - 0x60], 0xdfa4335
jmp 0x407b1e
mov dword [ebp - 0x60], 0xd8d081fc
jmp 0x407b1e
mov eax, dword [ebp - 0x48]
mov byte [eax], 1
mov dword [ebp - 0x60], 0x4a06adf3
jmp 0x407b1e
mov eax, dword [ebp - 0x3c]
mov ecx, dword [eax]
mov edx, dword [ebp - 0x40]
mov esi, dword [ebp - 0x5c]
mov eax, dword [ebp - 0x44]
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 - 0x60], 0x508ee853
jmp 0x407b1e
mov eax, dword [ebp - 0x2c]
mov dword [ebp - 0x60], 0xd160d568
jmp 0x407b1e
mov eax, dword [ebp - 0x24]
mov eax, dword [ebp - 0x20]
mov dword [ebp - 0x60], 0xd1547009
jmp 0x407b1e
mov dword [ebp - 0x60], 0x57d1ea21
jmp 0x407b1e
mov dword [ebp - 0x60], 0x9e9dfff6
jmp 0x407b1e
jmp 0x406796