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

Disassembly:
push ebp
mov ebp, esp
push ebx
push edi
push esi
sub esp, 0x68
mov eax, dword [ebp + 0xc]
mov dword [ebp - 0x6c], eax
mov eax, dword [ebp + 8]
mov dword [ebp - 0x68], eax
mov eax, dword [0x442080]
xor eax, ebp
mov dword [ebp - 0x10], eax
mov ecx, dword [0x443574]
mov eax, dword [0x443570]
mov edx, ecx
sub edx, 0xf00d925
sub edx, 1
add edx, 0xf00d925
imul ecx, edx
and ecx, 1
cmp ecx, 0
sete cl
and cl, 1
mov byte [ebp - 0x5e], cl
cmp eax, 0xa
setl al
and al, 1
mov byte [ebp - 0x5d], al
mov dword [ebp - 0x64], 0x8021f014
mov eax, dword [ebp - 0x64]
mov dword [ebp - 0x70], eax
sub eax, 0x8021f014
je 0x410141
jmp 0x40fcb5
mov eax, dword [ebp - 0x70]
sub eax, 0x862e1d4b
je 0x410497
jmp 0x40fcc8
mov eax, dword [ebp - 0x70]
sub eax, 0x86c92758
je 0x410b63
jmp 0x40fcdb
mov eax, dword [ebp - 0x70]
sub eax, 0x87b37c2b
je 0x41024b
jmp 0x40fcee
mov eax, dword [ebp - 0x70]
sub eax, 0x8829b6f7
je 0x4109bf
jmp 0x40fd01
mov eax, dword [ebp - 0x70]
sub eax, 0x8847bab0
je 0x41060e
jmp 0x40fd14
mov eax, dword [ebp - 0x70]
sub eax, 0x8acd5378
je 0x410620
jmp 0x40fd27
mov eax, dword [ebp - 0x70]
sub eax, 0x8f56dfb1
je 0x4108bb
jmp 0x40fd3a
mov eax, dword [ebp - 0x70]
sub eax, 0x9f15abd1
je 0x41048b
jmp 0x40fd4d
mov eax, dword [ebp - 0x70]
sub eax, 0x9f4d4f26
je 0x410d81
jmp 0x40fd60
mov eax, dword [ebp - 0x70]
sub eax, 0xa08db1fa
je 0x410cb6
jmp 0x40fd73
mov eax, dword [ebp - 0x70]
sub eax, 0xa11bd3b4
je 0x4103ad
jmp 0x40fd86
mov eax, dword [ebp - 0x70]
sub eax, 0xa2d59f65
je 0x410caa
jmp 0x40fd99
mov eax, dword [ebp - 0x70]
sub eax, 0xa65f8126
je 0x410380
jmp 0x40fdac
mov eax, dword [ebp - 0x70]
sub eax, 0xa7291b09
je 0x410420
jmp 0x40fdbf
mov eax, dword [ebp - 0x70]
sub eax, 0xa9e4c65f
je 0x41055c
jmp 0x40fdd2
mov eax, dword [ebp - 0x70]
sub eax, 0xac9278a9
je 0x410940
jmp 0x40fde5
mov eax, dword [ebp - 0x70]
sub eax, 0xad78eece
je 0x410dd6
jmp 0x40fdf8
mov eax, dword [ebp - 0x70]
sub eax, 0xb18af282
je 0x410b77
jmp 0x40fe0b
mov eax, dword [ebp - 0x70]
sub eax, 0xb2e0cd97
je 0x410b96
jmp 0x40fe1e
mov eax, dword [ebp - 0x70]
sub eax, 0xbcf99d12
je 0x4105c4
jmp 0x40fe31
mov eax, dword [ebp - 0x70]
sub eax, 0xc1f67bc7
je 0x41039b
jmp 0x40fe44
mov eax, dword [ebp - 0x70]
sub eax, 0xd047132b
je 0x4105df
jmp 0x40fe57
mov eax, dword [ebp - 0x70]
sub eax, 0xd7ff5f39
je 0x4106f3
jmp 0x40fe6a
mov eax, dword [ebp - 0x70]
sub eax, 0xdbe26b22
je 0x41082d
jmp 0x40fe7d
mov eax, dword [ebp - 0x70]
sub eax, 0xdc23f49b
je 0x41074d
jmp 0x40fe90
mov eax, dword [ebp - 0x70]
sub eax, 0xe532cd5c
je 0x410e96
jmp 0x40fea3
mov eax, dword [ebp - 0x70]
sub eax, 0xe8af6d09
je 0x410df9
jmp 0x40feb6
mov eax, dword [ebp - 0x70]
sub eax, 0xe9f8840e
je 0x4107f2
jmp 0x40fec9
mov eax, dword [ebp - 0x70]
sub eax, 0xeb32d4a9
je 0x410bae
jmp 0x40fedc
mov eax, dword [ebp - 0x70]
sub eax, 0xecec3529
je 0x41062c
jmp 0x40feef
mov eax, dword [ebp - 0x70]
sub eax, 0xf241ca6e
je 0x410848
jmp 0x40ff02
mov eax, dword [ebp - 0x70]
sub eax, 0xf2ff45f3
je 0x410e58
jmp 0x40ff15
mov eax, dword [ebp - 0x70]
sub eax, 0xf4ac58ab
je 0x410e0b
jmp 0x40ff28
mov eax, dword [ebp - 0x70]
sub eax, 0xe4855a
je 0x410de2
jmp 0x40ff3b
mov eax, dword [ebp - 0x70]
sub eax, 0x6f7f9bf
je 0x41094c
jmp 0x40ff4e
mov eax, dword [ebp - 0x70]
sub eax, 0xd690487
je 0x4105fc
jmp 0x40ff61
mov eax, dword [ebp - 0x70]
sub eax, 0xe387138
je 0x410d8d
jmp 0x40ff74
mov eax, dword [ebp - 0x70]
sub eax, 0x1adfb70f
je 0x41080d
jmp 0x40ff87
mov eax, dword [ebp - 0x70]
sub eax, 0x1f3451fb
je 0x410ba2
jmp 0x40ff9a
mov eax, dword [ebp - 0x70]
sub eax, 0x240cce7e
je 0x410e46
jmp 0x40ffad
mov eax, dword [ebp - 0x70]
sub eax, 0x243821b5
je 0x410d04
jmp 0x40ffc0
mov eax, dword [ebp - 0x70]
sub eax, 0x24b62e21
je 0x410ecc
jmp 0x40ffd3
mov eax, dword [ebp - 0x70]
sub eax, 0x24e63f12
je 0x410a96
jmp 0x40ffe6
mov eax, dword [ebp - 0x70]
sub eax, 0x2633dc88
je 0x410b09
jmp 0x40fff9
mov eax, dword [ebp - 0x70]
sub eax, 0x3125a3a7
je 0x410dad
jmp 0x41000c
mov eax, dword [ebp - 0x70]
sub eax, 0x319f8a3c
je 0x4106ff
jmp 0x41001f
mov eax, dword [ebp - 0x70]
sub eax, 0x35d1c4b9
je 0x4102bf
jmp 0x410032
mov eax, dword [ebp - 0x70]
sub eax, 0x49b4a166
je 0x410b57
jmp 0x410045
mov eax, dword [ebp - 0x70]
sub eax, 0x4cc9b058
je 0x410bcb
jmp 0x410058
mov eax, dword [ebp - 0x70]
sub eax, 0x577229ac
je 0x41018c
jmp 0x41006b
mov eax, dword [ebp - 0x70]
sub eax, 0x584d198a
je 0x410934
jmp 0x41007e
mov eax, dword [ebp - 0x70]
sub eax, 0x598c81c0
je 0x410c19
jmp 0x410091
mov eax, dword [ebp - 0x70]
sub eax, 0x5af9057a
je 0x410257
jmp 0x4100a4
mov eax, dword [ebp - 0x70]
sub eax, 0x5bcce411
je 0x410ea2
jmp 0x4100b7
mov eax, dword [ebp - 0x70]
sub eax, 0x6007e001
je 0x410332
jmp 0x4100ca
mov eax, dword [ebp - 0x70]
sub eax, 0x63e5d2ee
je 0x410dca
jmp 0x4100dd
mov eax, dword [ebp - 0x70]
sub eax, 0x68f76e8b
je 0x410a6f
jmp 0x4100f0
mov eax, dword [ebp - 0x70]
sub eax, 0x6eb24811
je 0x410819
jmp 0x410103
mov eax, dword [ebp - 0x70]
sub eax, 0x70b3cd4f
je 0x410697
jmp 0x410116
mov eax, dword [ebp - 0x70]
sub eax, 0x735e72ad
je 0x4104e9
jmp 0x410129
mov eax, dword [ebp - 0x70]
sub eax, 0x7866cbe8
je 0x410a7b
jmp 0x41013c
jmp 0x410ed6
mov bl, byte [ebp - 0x5e]
mov dh, byte [ebp - 0x5d]
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, 0x3125a3a7
mov ecx, 0x577229ac
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x64], eax
jmp 0x410ed6
mov ecx, dword [ebp - 0x68]
mov edx, dword [ebp - 0x6c]
push eax
mov eax, esp
mov dword [ebp - 0x5c], eax
push eax
mov eax, esp
mov dword [ebp - 0x58], eax
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
mov eax, esp
mov dword [ebp - 0x44], eax
push eax
sub esp, 0xffc
mov eax, esp
mov dword [ebp - 0x40], eax
push eax
mov eax, esp
mov dword [ebp - 0x3c], eax
mov eax, dword [ebp - 0x58]
mov dword [eax], edx
mov eax, dword [ebp - 0x54]
mov dword [eax], ecx
mov ecx, dword [0x443574]
mov eax, dword [0x443570]
mov edx, ecx
sub edx, 0x688eaeaa
sub edx, 1
add edx, 0x688eaeaa
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, 0x3125a3a7
mov ecx, 0x87b37c2b
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x64], eax
jmp 0x410ed6
mov dword [ebp - 0x64], 0x5af9057a
jmp 0x410ed6
mov eax, dword [ebp - 0x54]
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 - 0x50]
mov dword [eax], ecx
mov eax, dword [ebp - 0x50]
mov ecx, 0xffffffff
cmp dword [eax], ecx
sete al
and al, 1
mov byte [ebp - 0x35], al
mov dword [ebp - 0x64], 0x35d1c4b9
jmp 0x410ed6
mov ecx, dword [0x443574]
mov eax, dword [0x443570]
mov edx, ecx
sub edx, 0x799bb6b6
sub edx, 1
add edx, 0x799bb6b6
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, 0x63e5d2ee
mov ecx, 0x6007e001
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x64], eax
jmp 0x410ed6
mov eax, dword [0x443574]
mov ecx, dword [0x443570]
mov edx, eax
sub edx, 0x6c1e81f6
sub edx, 1
add edx, 0x6c1e81f6
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, 0x63e5d2ee
mov ecx, 0xa65f8126
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x64], eax
jmp 0x410ed6
mov dl, byte [ebp - 0x35]
mov eax, 0x862e1d4b
mov ecx, 0xc1f67bc7
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x64], eax
jmp 0x410ed6
mov eax, dword [ebp - 0x5c]
mov byte [eax], 0
mov dword [ebp - 0x64], 0xa11bd3b4
jmp 0x410ed6
mov ecx, dword [0x443574]
mov eax, dword [0x443570]
mov edx, ecx
add edx, 0x80a4ec64
sub edx, 1
sub edx, 0x80a4ec64
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, 0xad78eece
mov ecx, 0xa7291b09
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x64], eax
jmp 0x410ed6
mov ecx, dword [0x443574]
mov eax, dword [0x443570]
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, 0xad78eece
mov ecx, 0x9f15abd1
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x64], eax
jmp 0x410ed6
mov dword [ebp - 0x64], 0xa08db1fa
jmp 0x410ed6
mov eax, dword [ebp - 0x58]
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 - 0x34], eax
mov dword [ebp - 0x64], 0x735e72ad
jmp 0x410ed6
mov ecx, dword [0x443574]
mov eax, dword [0x443570]
mov edx, ecx
add edx, 0xb75ac788
sub edx, 1
sub edx, 0xb75ac788
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, 0xe4855a
mov ecx, 0xa9e4c65f
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x64], eax
jmp 0x410ed6
mov eax, dword [ebp - 0x4c]
mov ecx, dword [ebp - 0x34]
mov dword [eax], ecx
mov eax, dword [ebp - 0x4c]
mov ecx, 0xffffffff
cmp dword [eax], ecx
sete al
and al, 1
mov byte [ebp - 0x2d], al
mov eax, dword [0x443574]
mov ecx, dword [0x443570]
mov edx, eax
sub edx, 0x73d86b5b
sub edx, 1
add edx, 0x73d86b5b
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, 0xe4855a
mov ecx, 0xbcf99d12
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x64], eax
jmp 0x410ed6
mov dl, byte [ebp - 0x2d]
mov eax, 0x8847bab0
mov ecx, 0xd047132b
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x64], eax
jmp 0x410ed6
mov eax, dword [ebp - 0x50]
mov eax, dword [eax]
sub esp, 4
mov dword [esp], eax
call dword [sym.imp.KERNEL32.dll_CloseHandle]
mov dword [ebp - 0x64], 0xd690487
jmp 0x410ed6
mov eax, dword [ebp - 0x5c]
mov byte [eax], 0
mov dword [ebp - 0x64], 0xa08db1fa
jmp 0x410ed6
mov eax, dword [ebp - 0x48]
mov byte [eax], 0
mov dword [ebp - 0x64], 0x8acd5378
jmp 0x410ed6
mov dword [ebp - 0x64], 0xecec3529
jmp 0x410ed6
mov ecx, dword [0x443574]
mov eax, dword [0x443570]
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, 0xe8af6d09
mov ecx, 0x70b3cd4f
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x64], eax
jmp 0x410ed6
mov eax, dword [ebp - 0x40]
mov dword [ebp - 0x2c], eax
mov eax, dword [ebp - 0x50]
mov eax, dword [eax]
mov dword [ebp - 0x28], eax
mov eax, dword [0x443574]
mov ecx, dword [0x443570]
mov edx, eax
add edx, 0xa17cd601
sub edx, 1
sub edx, 0xa17cd601
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, 0xe8af6d09
mov ecx, 0xd7ff5f39
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x64], eax
jmp 0x410ed6
mov dword [ebp - 0x64], 0x319f8a3c
jmp 0x410ed6
mov eax, dword [0x443574]
mov ecx, dword [0x443570]
mov edx, eax
sub edx, 0x82b7397d
sub edx, 1
add edx, 0x82b7397d
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, 0xf4ac58ab
mov ecx, 0xdc23f49b
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x64], eax
jmp 0x410ed6
mov eax, dword [ebp - 0x3c]
mov ecx, dword [ebp - 0x2c]
mov edx, dword [ebp - 0x28]
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 ecx, dword [0x443574]
mov eax, dword [0x443570]
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, 0xf4ac58ab
mov ecx, 0xe9f8840e
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x64], eax
jmp 0x410ed6
mov dl, byte [ebp - 0x21]
mov eax, 0x1adfb70f
mov ecx, 0x6eb24811
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x64], eax
jmp 0x410ed6
mov dword [ebp - 0x64], 0xeb32d4a9
jmp 0x410ed6
mov eax, dword [ebp - 0x3c]
mov eax, dword [eax]
mov dword [ebp - 0x20], eax
mov dword [ebp - 0x64], 0xdbe26b22
jmp 0x410ed6
mov edx, dword [ebp - 0x20]
mov eax, 0x6f7f9bf
mov ecx, 0xf241ca6e
cmp edx, 0
cmove eax, ecx
mov dword [ebp - 0x64], eax
jmp 0x410ed6
mov ecx, dword [0x443574]
mov eax, dword [0x443570]
mov edx, ecx
add edx, 0xadbbed8
sub edx, 1
sub edx, 0xadbbed8
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, 0x240cce7e
mov ecx, 0x8f56dfb1
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x64], eax
jmp 0x410ed6
mov eax, dword [ebp - 0x48]
mov byte [eax], 1
mov ecx, dword [0x443574]
mov eax, dword [0x443570]
mov edx, ecx
sub edx, 0x99ad3ead
sub edx, 1
add edx, 0x99ad3ead
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, 0x240cce7e
mov ecx, 0x584d198a
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x64], eax
jmp 0x410ed6
mov dword [ebp - 0x64], 0xac9278a9
jmp 0x410ed6
mov dword [ebp - 0x64], 0xeb32d4a9
jmp 0x410ed6
mov ecx, dword [0x443574]
mov eax, dword [0x443570]
mov edx, ecx
add edx, 0x595b1ec3
sub edx, 1
sub edx, 0x595b1ec3
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, 0xf2ff45f3
mov ecx, 0x8829b6f7
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x64], eax
jmp 0x410ed6
mov eax, dword [ebp - 0x3c]
mov ecx, dword [eax]
mov edx, dword [ebp - 0x40]
mov eax, dword [ebp - 0x4c]
mov esi, dword [eax]
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]
cmp eax, 0
setne al
and al, 1
mov byte [ebp - 0x19], al
mov ecx, dword [0x443574]
mov eax, dword [0x443570]
mov edx, ecx
sub edx, 0xfc60836c
sub edx, 1
add edx, 0xfc60836c
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, 0xf2ff45f3
mov ecx, 0x68f76e8b
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x64], eax
jmp 0x410ed6
mov dword [ebp - 0x64], 0x7866cbe8
jmp 0x410ed6
mov dl, byte [ebp - 0x19]
mov eax, 0x24e63f12
mov ecx, 0x86c92758
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x64], eax
jmp 0x410ed6
mov ecx, dword [0x443574]
mov eax, dword [0x443570]
mov edx, ecx
sub edx, 0x87a25287
sub edx, 1
add edx, 0x87a25287
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, 0xe532cd5c
mov ecx, 0x2633dc88
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x64], eax
jmp 0x410ed6
mov eax, dword [0x443574]
mov ecx, dword [0x443570]
mov edx, eax
sub edx, 0xf3748a65
sub edx, 1
add edx, 0xf3748a65
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, 0xe532cd5c
mov ecx, 0x49b4a166
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x64], eax
jmp 0x410ed6
mov dword [ebp - 0x64], 0xeb32d4a9
jmp 0x410ed6
mov eax, dword [ebp - 0x44]
mov eax, dword [eax]
mov dword [ebp - 0x18], eax
mov dword [ebp - 0x64], 0xb18af282
jmp 0x410ed6
mov eax, dword [ebp - 0x3c]
mov esi, dword [eax]
mov edx, dword [ebp - 0x18]
mov eax, 0x1f3451fb
mov ecx, 0xb2e0cd97
cmp edx, esi
cmovne eax, ecx
mov dword [ebp - 0x64], eax
jmp 0x410ed6
mov dword [ebp - 0x64], 0xeb32d4a9
jmp 0x410ed6
mov dword [ebp - 0x64], 0xecec3529
jmp 0x410ed6
mov eax, dword [ebp - 0x50]
mov eax, dword [eax]
sub esp, 4
mov dword [esp], eax
call dword [sym.imp.KERNEL32.dll_CloseHandle]
mov dword [ebp - 0x64], 0x4cc9b058
jmp 0x410ed6
mov eax, dword [0x443574]
mov ecx, dword [0x443570]
mov edx, eax
sub edx, 0x927785bd
sub edx, 1
add edx, 0x927785bd
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, 0x5bcce411
mov ecx, 0x598c81c0
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x64], eax
jmp 0x410ed6
mov eax, dword [ebp - 0x4c]
mov eax, dword [eax]
sub esp, 4
mov dword [esp], eax
call dword [sym.imp.KERNEL32.dll_CloseHandle]
mov eax, dword [ebp - 0x48]
mov cl, byte [eax]
mov eax, dword [ebp - 0x5c]
and cl, 1
mov byte [eax], cl
mov ecx, dword [0x443574]
mov eax, dword [0x443570]
mov edx, ecx
sub edx, 0x82ffc5b
sub edx, 1
add edx, 0x82ffc5b
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, 0x5bcce411
mov ecx, 0xa2d59f65
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x64], eax
jmp 0x410ed6
mov dword [ebp - 0x64], 0xa08db1fa
jmp 0x410ed6
mov eax, dword [0x443574]
mov ecx, dword [0x443570]
mov edx, eax
add edx, 0xd976c163
sub edx, 1
sub edx, 0xd976c163
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, 0x24b62e21
mov ecx, 0x243821b5
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x64], eax
jmp 0x410ed6
mov eax, dword [ebp - 0x5c]
mov al, byte [eax]
and al, 1
mov byte [ebp - 0x11], al
mov ecx, dword [0x443574]
mov eax, dword [0x443570]
mov edx, ecx
sub edx, 0x947bed8
sub edx, 1
add edx, 0x947bed8
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, 0x24b62e21
mov ecx, 0x9f4d4f26
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x64], eax
jmp 0x410ed6
mov dword [ebp - 0x64], 0xe387138
jmp 0x410ed6
mov al, byte [ebp - 0x11]
and al, 1
movzx eax, al
mov dword [ebp - 0x74], eax
mov ecx, dword [ebp - 0x10]
xor ecx, ebp
call fcn.0042ae40
mov eax, dword [ebp - 0x74]
lea esp, [ebp - 0xc]
pop esi
pop edi
pop ebx
pop ebp
ret
mov ecx, dword [ebp - 0x68]
mov esi, dword [ebp - 0x6c]
push eax
push eax
mov edx, esp
push eax
mov eax, esp
mov dword [edx], esi
mov dword [eax], ecx
mov dword [ebp - 0x64], 0x577229ac
jmp 0x410ed6
mov dword [ebp - 0x64], 0x6007e001
jmp 0x410ed6
mov dword [ebp - 0x64], 0xa7291b09
jmp 0x410ed6
mov eax, dword [ebp - 0x4c]
mov ecx, dword [ebp - 0x34]
mov dword [eax], ecx
mov eax, dword [ebp - 0x4c]
mov dword [ebp - 0x64], 0xa9e4c65f
jmp 0x410ed6
mov eax, dword [ebp - 0x40]
mov eax, dword [ebp - 0x50]
mov dword [ebp - 0x64], 0x70b3cd4f
jmp 0x410ed6
mov eax, dword [ebp - 0x3c]
mov ecx, dword [ebp - 0x2c]
mov edx, dword [ebp - 0x28]
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 - 0x64], 0xdc23f49b
jmp 0x410ed6
mov eax, dword [ebp - 0x48]
mov byte [eax], 1
mov dword [ebp - 0x64], 0x8f56dfb1
jmp 0x410ed6
mov eax, dword [ebp - 0x3c]
mov ecx, dword [eax]
mov edx, dword [ebp - 0x40]
mov eax, dword [ebp - 0x4c]
mov esi, dword [eax]
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 - 0x64], 0x8829b6f7
jmp 0x410ed6
mov dword [ebp - 0x64], 0x2633dc88
jmp 0x410ed6
mov eax, dword [ebp - 0x4c]
mov eax, dword [eax]
sub esp, 4
mov dword [esp], eax
call dword [sym.imp.KERNEL32.dll_CloseHandle]
mov eax, dword [ebp - 0x48]
mov cl, byte [eax]
mov eax, dword [ebp - 0x5c]
and cl, 1
mov byte [eax], cl
mov dword [ebp - 0x64], 0x598c81c0
jmp 0x410ed6
mov eax, dword [ebp - 0x5c]
mov dword [ebp - 0x64], 0x243821b5
jmp 0x40fc9f