Function at 0x4056c0
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 [0x439080]
xor eax, ebp
mov dword [ebp - 0x10], eax
mov ecx, dword [0x43a584]
mov eax, dword [0x43a580]
mov edx, ecx
sub edx, 0x309e5b40
sub edx, 1
add edx, 0x309e5b40
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], 0x8183cc1c
mov eax, dword [ebp - 0x64]
mov dword [ebp - 0x70], eax
sub eax, 0x8183cc1c
je 0x405b88
jmp 0x405735
mov eax, dword [ebp - 0x70]
sub eax, 0x8307b9d5
je 0x40613d
jmp 0x405748
mov eax, dword [ebp - 0x70]
sub eax, 0x8389f736
je 0x406341
jmp 0x40575b
mov eax, dword [ebp - 0x70]
sub eax, 0x8a60592c
je 0x405e5b
jmp 0x40576e
mov eax, dword [ebp - 0x70]
sub eax, 0x8e8681fe
je 0x405ef8
jmp 0x405781
mov eax, dword [ebp - 0x70]
sub eax, 0x90462add
je 0x406572
jmp 0x405794
mov eax, dword [ebp - 0x70]
sub eax, 0x93b4ebbf
je 0x405fe8
jmp 0x4057a7
mov eax, dword [ebp - 0x70]
sub eax, 0x9680ac92
je 0x405cbc
jmp 0x4057ba
mov eax, dword [ebp - 0x70]
sub eax, 0x973fdb26
je 0x40615b
jmp 0x4057cd
mov eax, dword [ebp - 0x70]
sub eax, 0x9a078494
je 0x40651f
jmp 0x4057e0
mov eax, dword [ebp - 0x70]
sub eax, 0x9a99e4cf
je 0x405fbe
jmp 0x4057f3
mov eax, dword [ebp - 0x70]
sub eax, 0x9e063c47
je 0x40614f
jmp 0x405806
mov eax, dword [ebp - 0x70]
sub eax, 0xa0da9064
je 0x406291
jmp 0x405819
mov eax, dword [ebp - 0x70]
sub eax, 0xa58d6b17
je 0x405c26
jmp 0x40582c
mov eax, dword [ebp - 0x70]
sub eax, 0xa8592cf3
je 0x4064c5
jmp 0x40583f
mov eax, dword [ebp - 0x70]
sub eax, 0xbab85980
je 0x405d42
jmp 0x405852
mov eax, dword [ebp - 0x70]
sub eax, 0xc56d1d1e
je 0x40604f
jmp 0x405865
mov eax, dword [ebp - 0x70]
sub eax, 0xcd274e91
je 0x406028
jmp 0x405878
mov eax, dword [ebp - 0x70]
sub eax, 0xce431f56
je 0x405fca
jmp 0x40588b
mov eax, dword [ebp - 0x70]
sub eax, 0xdb245bf6
je 0x406452
jmp 0x40589e
mov eax, dword [ebp - 0x70]
sub eax, 0xe08a592e
je 0x405fdc
jmp 0x4058b1
mov eax, dword [ebp - 0x70]
sub eax, 0xe7d9d72c
je 0x405cd7
jmp 0x4058c4
mov eax, dword [ebp - 0x70]
sub eax, 0xe7db65d9
je 0x406559
jmp 0x4058d7
mov eax, dword [ebp - 0x70]
sub eax, 0xef4e3ddf
je 0x406640
jmp 0x4058ea
mov eax, dword [ebp - 0x70]
sub eax, 0xf064e56f
je 0x40624b
jmp 0x4058fd
mov eax, dword [ebp - 0x70]
sub eax, 0xf24d78bc
je 0x406427
jmp 0x405910
mov eax, dword [ebp - 0x70]
sub eax, 0xf45eb3f7
je 0x406634
jmp 0x405923
mov eax, dword [ebp - 0x70]
sub eax, 0x3c7d3e3
je 0x40652b
jmp 0x405936
mov eax, dword [ebp - 0x70]
sub eax, 0xce71765
je 0x406433
jmp 0x405949
mov eax, dword [ebp - 0x70]
sub eax, 0xdb81234
je 0x4063b4
jmp 0x40595c
mov eax, dword [ebp - 0x70]
sub eax, 0xef364a3
je 0x405c32
jmp 0x40596f
mov eax, dword [ebp - 0x70]
sub eax, 0xf14b46d
je 0x405bae
jmp 0x405982
mov eax, dword [ebp - 0x70]
sub eax, 0x10f538a1
je 0x40665e
jmp 0x405995
mov eax, dword [ebp - 0x70]
sub eax, 0x1109b6ee
je 0x405f3e
jmp 0x4059a8
mov eax, dword [ebp - 0x70]
sub eax, 0x12d43e35
je 0x405ec5
jmp 0x4059bb
mov eax, dword [ebp - 0x70]
sub eax, 0x136e8613
je 0x406652
jmp 0x4059ce
mov eax, dword [ebp - 0x70]
sub eax, 0x178d22c5
je 0x405e0d
jmp 0x4059e1
mov eax, dword [ebp - 0x70]
sub eax, 0x19f305b1
je 0x406116
jmp 0x4059f4
mov eax, dword [ebp - 0x70]
sub eax, 0x21780ef7
je 0x4066eb
jmp 0x405a07
mov eax, dword [ebp - 0x70]
sub eax, 0x263c7ed5
je 0x40623f
jmp 0x405a1a
mov eax, dword [ebp - 0x70]
sub eax, 0x29b6146e
je 0x4065b8
jmp 0x405a2d
mov eax, dword [ebp - 0x70]
sub eax, 0x2f5d9463
je 0x405db3
jmp 0x405a40
mov eax, dword [ebp - 0x70]
sub eax, 0x31c73e88
je 0x40668e
jmp 0x405a53
mov eax, dword [ebp - 0x70]
sub eax, 0x3c6d0263
je 0x4066dc
jmp 0x405a66
mov eax, dword [ebp - 0x70]
sub eax, 0x3e4a2560
je 0x405e67
jmp 0x405a79
mov eax, dword [ebp - 0x70]
sub eax, 0x3f3395cd
je 0x4066a0
jmp 0x405a8c
mov eax, dword [ebp - 0x70]
sub eax, 0x3fc78352
je 0x40631a
jmp 0x405a9f
mov eax, dword [ebp - 0x70]
sub eax, 0x46260ecb
je 0x406513
jmp 0x405ab2
mov eax, dword [ebp - 0x70]
sub eax, 0x4805491a
je 0x406608
jmp 0x405ac5
mov eax, dword [ebp - 0x70]
sub eax, 0x4f591533
je 0x4061c6
jmp 0x405ad8
mov eax, dword [ebp - 0x70]
sub eax, 0x4fdd41f4
je 0x406043
jmp 0x405aeb
mov eax, dword [ebp - 0x70]
sub eax, 0x51a11225
je 0x405dbf
jmp 0x405afe
mov eax, dword [ebp - 0x70]
sub eax, 0x64775248
je 0x406335
jmp 0x405b11
mov eax, dword [ebp - 0x70]
sub eax, 0x65bb4b4d
je 0x40667f
jmp 0x405b24
mov eax, dword [ebp - 0x70]
sub eax, 0x701534dd
je 0x4066f7
jmp 0x405b37
mov eax, dword [ebp - 0x70]
sub eax, 0x7711a496
je 0x406095
jmp 0x405b4a
mov eax, dword [ebp - 0x70]
sub eax, 0x7b6f3a7f
je 0x406122
jmp 0x405b5d
mov eax, dword [ebp - 0x70]
sub eax, 0x7e16abf9
je 0x405ee4
jmp 0x405b70
mov eax, dword [ebp - 0x70]
sub eax, 0x7f7c7d9d
je 0x406614
jmp 0x405b83
jmp 0x406701
mov al, byte [ebp - 0x5e]
mov cl, byte [ebp - 0x5d]
mov dl, al
and dl, cl
xor al, cl
or dl, al
mov eax, 0xf45eb3f7
mov ecx, 0xf14b46d
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x64], eax
jmp 0x406701
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
mov eax, dword [0x43a584]
mov ecx, dword [0x43a580]
mov edx, eax
add edx, 0xddb2a35a
sub edx, 1
sub edx, 0xddb2a35a
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, 0xf45eb3f7
mov ecx, 0xa58d6b17
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x64], eax
jmp 0x406701
mov dword [ebp - 0x64], 0xef364a3
jmp 0x406701
mov ecx, dword [ebp - 0x68]
mov edx, dword [ebp - 0x6c]
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 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], 0x9680ac92
jmp 0x406701
mov dl, byte [ebp - 0x35]
mov eax, 0x3e4a2560
mov ecx, 0xe7d9d72c
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x64], eax
jmp 0x406701
mov ecx, dword [0x43a584]
mov eax, dword [0x43a580]
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, 0xef4e3ddf
mov ecx, 0xbab85980
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x64], eax
jmp 0x406701
mov eax, dword [ebp - 0x5c]
mov byte [eax], 0
mov ecx, dword [0x43a584]
mov eax, dword [0x43a580]
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, 0xef4e3ddf
mov ecx, 0x2f5d9463
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x64], eax
jmp 0x406701
mov dword [ebp - 0x64], 0x51a11225
jmp 0x406701
mov eax, dword [0x43a584]
mov ecx, dword [0x43a580]
mov edx, eax
add edx, 0x8b87167c
sub edx, 1
sub edx, 0x8b87167c
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, 0x136e8613
mov ecx, 0x178d22c5
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x64], eax
jmp 0x406701
mov eax, dword [0x43a584]
mov ecx, dword [0x43a580]
mov edx, eax
sub edx, 0xac0971c5
sub edx, 1
add edx, 0xac0971c5
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, 0x136e8613
mov ecx, 0x8a60592c
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x64], eax
jmp 0x406701
mov dword [ebp - 0x64], 0x90462add
jmp 0x406701
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 ecx, eax
mov eax, dword [ebp - 0x4c]
mov dword [eax], ecx
mov eax, dword [ebp - 0x4c]
mov eax, dword [eax]
mov dword [ebp - 0x34], eax
mov dword [ebp - 0x64], 0x12d43e35
jmp 0x406701
mov edx, dword [ebp - 0x34]
mov esi, 0xffffffff
mov eax, 0xce431f56
mov ecx, 0x7e16abf9
cmp edx, esi
cmove eax, ecx
mov dword [ebp - 0x64], eax
jmp 0x406701
mov eax, dword [ebp - 0x50]
mov eax, dword [eax]
mov dword [ebp - 0x30], eax
mov dword [ebp - 0x64], 0x8e8681fe
jmp 0x406701
mov eax, dword [0x43a584]
mov ecx, dword [0x43a580]
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, 0x10f538a1
mov ecx, 0x1109b6ee
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x64], eax
jmp 0x406701
mov eax, dword [ebp - 0x30]
sub esp, 4
mov dword [esp], eax
call dword [sym.imp.KERNEL32.dll_CloseHandle]
mov eax, dword [ebp - 0x5c]
mov byte [eax], 0
mov ecx, dword [0x43a584]
mov eax, dword [0x43a580]
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, 0x10f538a1
mov ecx, 0x9a99e4cf
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x64], eax
jmp 0x406701
mov dword [ebp - 0x64], 0x90462add
jmp 0x406701
mov eax, dword [ebp - 0x48]
mov byte [eax], 0
mov dword [ebp - 0x64], 0xe08a592e
jmp 0x406701
mov dword [ebp - 0x64], 0x93b4ebbf
jmp 0x406701
mov ecx, dword [ebp - 0x40]
mov eax, dword [ebp - 0x50]
mov edx, dword [eax]
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 - 0x2c], eax
mov dword [ebp - 0x64], 0xcd274e91
jmp 0x406701
mov edx, dword [ebp - 0x2c]
mov eax, 0x4fdd41f4
mov ecx, 0xc56d1d1e
cmp edx, 0
cmovne eax, ecx
mov dword [ebp - 0x64], eax
jmp 0x406701
mov dword [ebp - 0x64], 0x3c7d3e3
jmp 0x406701
mov eax, dword [0x43a584]
mov ecx, dword [0x43a580]
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, 0x65bb4b4d
mov ecx, 0x7711a496
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x64], eax
jmp 0x406701
mov eax, dword [ebp - 0x3c]
cmp dword [eax], 0
sete al
and al, 1
mov byte [ebp - 0x25], al
mov ecx, dword [0x43a584]
mov eax, dword [0x43a580]
mov edx, ecx
add edx, 0xc9e25a0d
sub edx, 1
sub edx, 0xc9e25a0d
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, 0x65bb4b4d
mov ecx, 0x19f305b1
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x64], eax
jmp 0x406701
mov dword [ebp - 0x64], 0x7b6f3a7f
jmp 0x406701
mov dl, byte [ebp - 0x25]
mov eax, 0x973fdb26
mov ecx, 0x8307b9d5
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x64], eax
jmp 0x406701
mov eax, dword [ebp - 0x48]
mov byte [eax], 1
mov dword [ebp - 0x64], 0x9e063c47
jmp 0x406701
mov dword [ebp - 0x64], 0x3c7d3e3
jmp 0x406701
mov ecx, dword [0x43a584]
mov eax, dword [0x43a580]
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, 0x31c73e88
mov ecx, 0x4f591533
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x64], eax
jmp 0x406701
mov eax, dword [ebp - 0x3c]
mov eax, dword [eax]
mov dword [ebp - 0x24], eax
mov eax, dword [ebp - 0x40]
mov dword [ebp - 0x20], eax
mov ecx, dword [0x43a584]
mov eax, dword [0x43a580]
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, 0x31c73e88
mov ecx, 0x263c7ed5
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x64], eax
jmp 0x406701
mov dword [ebp - 0x64], 0xf064e56f
jmp 0x406701
mov eax, dword [0x43a584]
mov ecx, dword [0x43a580]
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, 0x3f3395cd
mov ecx, 0xa0da9064
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x64], eax
jmp 0x406701
mov eax, dword [ebp - 0x4c]
mov esi, dword [eax]
mov eax, dword [ebp - 0x44]
mov ecx, dword [ebp - 0x24]
mov edx, 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]
cmp eax, 0
setne al
and al, 1
mov byte [ebp - 0x19], al
mov eax, dword [0x43a584]
mov ecx, dword [0x43a580]
mov edx, eax
add edx, 0x3aff6f50
sub edx, 1
sub edx, 0x3aff6f50
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, 0x3f3395cd
mov ecx, 0x3fc78352
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x64], eax
jmp 0x406701
mov dl, byte [ebp - 0x19]
mov eax, 0x64775248
mov ecx, 0x8389f736
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x64], eax
jmp 0x406701
mov dword [ebp - 0x64], 0x3c7d3e3
jmp 0x406701
mov ecx, dword [0x43a584]
mov eax, dword [0x43a580]
mov edx, ecx
add edx, 0xe87bbf35
sub edx, 1
sub edx, 0xe87bbf35
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, 0x3c6d0263
mov ecx, 0xdb81234
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x64], eax
jmp 0x406701
mov eax, dword [ebp - 0x44]
mov eax, dword [eax]
mov dword [ebp - 0x18], eax
mov ecx, dword [0x43a584]
mov eax, dword [0x43a580]
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, 0x3c6d0263
mov ecx, 0xf24d78bc
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x64], eax
jmp 0x406701
mov dword [ebp - 0x64], 0xce71765
jmp 0x406701
mov eax, dword [ebp - 0x3c]
mov esi, dword [eax]
mov edx, dword [ebp - 0x18]
mov eax, 0x9a078494
mov ecx, 0xdb245bf6
cmp edx, esi
cmovne eax, ecx
mov dword [ebp - 0x64], eax
jmp 0x406701
mov ecx, dword [0x43a584]
mov eax, dword [0x43a580]
mov edx, ecx
add edx, 0x2567b413
sub edx, 1
sub edx, 0x2567b413
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, 0x21780ef7
mov ecx, 0xa8592cf3
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x64], eax
jmp 0x406701
mov eax, dword [0x43a584]
mov ecx, dword [0x43a580]
mov edx, eax
add edx, 0x98bdcb9f
sub edx, 1
sub edx, 0x98bdcb9f
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, 0x21780ef7
mov ecx, 0x46260ecb
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x64], eax
jmp 0x406701
mov dword [ebp - 0x64], 0x3c7d3e3
jmp 0x406701
mov dword [ebp - 0x64], 0x93b4ebbf
jmp 0x406701
mov eax, dword [ebp - 0x50]
mov eax, dword [eax]
sub esp, 4
mov dword [esp], eax
call dword [sym.imp.KERNEL32.dll_CloseHandle]
mov eax, dword [ebp - 0x4c]
mov eax, dword [eax]
sub esp, 4
mov dword [esp], eax
call dword [sym.imp.KERNEL32.dll_CloseHandle]
mov dword [ebp - 0x64], 0xe7db65d9
jmp 0x406701
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], 0x90462add
jmp 0x406701
mov eax, dword [0x43a584]
mov ecx, dword [0x43a580]
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, 0x701534dd
mov ecx, 0x29b6146e
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x64], eax
jmp 0x406701
mov eax, dword [ebp - 0x5c]
mov al, byte [eax]
and al, 1
mov byte [ebp - 0x11], al
mov eax, dword [0x43a584]
mov ecx, dword [0x43a580]
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, 0x701534dd
mov ecx, 0x4805491a
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x64], eax
jmp 0x406701
mov dword [ebp - 0x64], 0x7f7c7d9d
jmp 0x406701
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.00422060
mov eax, dword [ebp - 0x74]
lea esp, [ebp - 0xc]
pop esi
pop edi
pop ebx
pop ebp
ret
mov dword [ebp - 0x64], 0xf14b46d
jmp 0x406701
mov eax, dword [ebp - 0x5c]
mov byte [eax], 0
mov dword [ebp - 0x64], 0xbab85980
jmp 0x406701
mov dword [ebp - 0x64], 0x178d22c5
jmp 0x406701
mov eax, dword [ebp - 0x30]
sub esp, 4
mov dword [esp], eax
call dword [sym.imp.KERNEL32.dll_CloseHandle]
mov eax, dword [ebp - 0x5c]
mov byte [eax], 0
mov dword [ebp - 0x64], 0x1109b6ee
jmp 0x406701
mov eax, dword [ebp - 0x3c]
mov dword [ebp - 0x64], 0x7711a496
jmp 0x406701
mov eax, dword [ebp - 0x3c]
mov eax, dword [ebp - 0x40]
mov dword [ebp - 0x64], 0x4f591533
jmp 0x406701
mov eax, dword [ebp - 0x4c]
mov esi, dword [eax]
mov eax, dword [ebp - 0x44]
mov ecx, dword [ebp - 0x24]
mov edx, 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 dword [ebp - 0x64], 0xa0da9064
jmp 0x406701
mov eax, dword [ebp - 0x44]
mov dword [ebp - 0x64], 0xdb81234
jmp 0x406701
mov dword [ebp - 0x64], 0xa8592cf3
jmp 0x406701
mov eax, dword [ebp - 0x5c]
mov dword [ebp - 0x64], 0x29b6146e
jmp 0x40571f