Function at 0x4050b0
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 [0x438080]
xor eax, ebp
mov dword [ebp - 0x10], eax
mov dword [ebp - 0x58], 0x9af15df2
mov eax, dword [ebp - 0x58]
mov dword [ebp - 0x64], eax
sub eax, 0x86b34b26
je 0x4056ab
jmp 0x4050ec
mov eax, dword [ebp - 0x64]
sub eax, 0x8ec17d37
je 0x405958
jmp 0x4050ff
mov eax, dword [ebp - 0x64]
sub eax, 0x8fa73d92
je 0x4061b5
jmp 0x405112
mov eax, dword [ebp - 0x64]
sub eax, 0x94a47b73
je 0x405e8a
jmp 0x405125
mov eax, dword [ebp - 0x64]
sub eax, 0x94b87379
je 0x4059cb
jmp 0x405138
mov eax, dword [ebp - 0x64]
sub eax, 0x97b8fd24
je 0x405845
jmp 0x40514b
mov eax, dword [ebp - 0x64]
sub eax, 0x995e41a7
je 0x4061a5
jmp 0x40515e
mov eax, dword [ebp - 0x64]
sub eax, 0x9af15df2
je 0x405565
jmp 0x405171
mov eax, dword [ebp - 0x64]
sub eax, 0x9b594447
je 0x405d16
jmp 0x405184
mov eax, dword [ebp - 0x64]
sub eax, 0x9df42b08
je 0x4055d8
jmp 0x405197
mov eax, dword [ebp - 0x64]
sub eax, 0xa1f0d295
je 0x405851
jmp 0x4051aa
mov eax, dword [ebp - 0x64]
sub eax, 0xa80dcdfc
je 0x406024
jmp 0x4051bd
mov eax, dword [ebp - 0x64]
sub eax, 0xaa58a1a7
je 0x4061c1
jmp 0x4051d0
mov eax, dword [ebp - 0x64]
sub eax, 0xb7ffeed8
je 0x4060fa
jmp 0x4051e3
mov eax, dword [ebp - 0x64]
sub eax, 0xbe8e9af4
je 0x406030
jmp 0x4051f6
mov eax, dword [ebp - 0x64]
sub eax, 0xc84e4dc8
je 0x4061dc
jmp 0x405209
mov eax, dword [ebp - 0x64]
sub eax, 0xcb0ec8aa
je 0x40611a
jmp 0x40521c
mov eax, dword [ebp - 0x64]
sub eax, 0xcf39872d
je 0x4057e7
jmp 0x40522f
mov eax, dword [ebp - 0x64]
sub eax, 0xd5851218
je 0x405e21
jmp 0x405242
mov eax, dword [ebp - 0x64]
sub eax, 0xe032b737
je 0x405acd
jmp 0x405255
mov eax, dword [ebp - 0x64]
sub eax, 0xe0e2872c
je 0x406082
jmp 0x405268
mov eax, dword [ebp - 0x64]
sub eax, 0xe672e76a
je 0x405839
jmp 0x40527b
mov eax, dword [ebp - 0x64]
sub eax, 0xe73666a8
je 0x406106
jmp 0x40528e
mov eax, dword [ebp - 0x64]
sub eax, 0xee52c294
je 0x405d4b
jmp 0x4052a1
mov eax, dword [ebp - 0x64]
sub eax, 0xf03a9001
je 0x405f75
jmp 0x4052b4
mov eax, dword [ebp - 0x64]
sub eax, 0xa076b5a
je 0x405dae
jmp 0x4052c7
mov eax, dword [ebp - 0x64]
sub eax, 0xb4c7d48
je 0x405d0a
jmp 0x4052da
mov eax, dword [ebp - 0x64]
sub eax, 0xca631b1
je 0x405cef
jmp 0x4052ed
mov eax, dword [ebp - 0x64]
sub eax, 0xe2c3ac5
je 0x4056fd
jmp 0x405300
mov eax, dword [ebp - 0x64]
sub eax, 0x13b3e2c8
je 0x405a5a
jmp 0x405313
mov eax, dword [ebp - 0x64]
sub eax, 0x1463832c
je 0x4058a7
jmp 0x405326
mov eax, dword [ebp - 0x64]
sub eax, 0x17afbf5a
je 0x405ad9
jmp 0x405339
mov eax, dword [ebp - 0x64]
sub eax, 0x18780b7c
je 0x405d5b
jmp 0x40534c
mov eax, dword [ebp - 0x64]
sub eax, 0x1c8303e8
je 0x405bc3
jmp 0x40535f
mov eax, dword [ebp - 0x64]
sub eax, 0x1cd03088
je 0x406217
jmp 0x405372
mov eax, dword [ebp - 0x64]
sub eax, 0x1d3fe710
je 0x406235
jmp 0x405385
mov eax, dword [ebp - 0x64]
sub eax, 0x1e6533f6
je 0x405c42
jmp 0x405398
mov eax, dword [ebp - 0x64]
sub eax, 0x26b1cf21
je 0x406223
jmp 0x4053ab
mov eax, dword [ebp - 0x64]
sub eax, 0x2ec3c984
je 0x4058e5
jmp 0x4053be
mov eax, dword [ebp - 0x64]
sub eax, 0x33d17ca8
je 0x405774
jmp 0x4053d1
mov eax, dword [ebp - 0x64]
sub eax, 0x363e32db
je 0x40603c
jmp 0x4053e4
mov eax, dword [ebp - 0x64]
sub eax, 0x36b6d144
je 0x405f15
jmp 0x4053f7
mov eax, dword [ebp - 0x64]
sub eax, 0x37fc3569
je 0x405759
jmp 0x40540a
mov eax, dword [ebp - 0x64]
sub eax, 0x39478e07
je 0x4056b7
jmp 0x40541d
mov eax, dword [ebp - 0x64]
sub eax, 0x3e0d1d51
je 0x405b4c
jmp 0x405430
mov eax, dword [ebp - 0x64]
sub eax, 0x415580f4
je 0x405f90
jmp 0x405443
mov eax, dword [ebp - 0x64]
sub eax, 0x41a8cc38
je 0x405d67
jmp 0x405456
mov eax, dword [ebp - 0x64]
sub eax, 0x4762f5c6
je 0x4061cd
jmp 0x405469
mov eax, dword [ebp - 0x64]
sub eax, 0x4d362219
je 0x4058c6
jmp 0x40547c
mov eax, dword [ebp - 0x64]
sub eax, 0x51ae6c7d
je 0x405e96
jmp 0x40548f
mov eax, dword [ebp - 0x64]
sub eax, 0x5328db24
je 0x4060ee
jmp 0x4054a2
mov eax, dword [ebp - 0x64]
sub eax, 0x536ce57e
je 0x406193
jmp 0x4054b5
mov eax, dword [ebp - 0x64]
sub eax, 0x546de3ca
je 0x405e6f
jmp 0x4054c8
mov eax, dword [ebp - 0x64]
sub eax, 0x58b6b51b
je 0x405fde
jmp 0x4054db
mov eax, dword [ebp - 0x64]
sub eax, 0x60000f4e
je 0x405bcf
jmp 0x4054ee
mov eax, dword [ebp - 0x64]
sub eax, 0x67e02b5c
je 0x4059d7
jmp 0x405501
mov eax, dword [ebp - 0x64]
sub eax, 0x6f7c611e
je 0x4059e7
jmp 0x405514
mov eax, dword [ebp - 0x64]
sub eax, 0x71d61f35
je 0x405eaa
jmp 0x405527
mov eax, dword [ebp - 0x64]
sub eax, 0x77e772f8
je 0x40613a
jmp 0x40553a
mov eax, dword [ebp - 0x64]
sub eax, 0x7bb57aee
je 0x405d30
jmp 0x40554d
mov eax, dword [ebp - 0x64]
sub eax, 0x7c880a80
je 0x406241
jmp 0x405560
jmp 0x40626e
mov ecx, dword [0x43957c]
mov eax, dword [0x439578]
mov edx, ecx
sub edx, 0x3077d63d
sub edx, 1
add edx, 0x3077d63d
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, 0x77e772f8
mov ecx, 0x9df42b08
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x58], eax
jmp 0x40626e
mov eax, dword [ebp - 0x5c]
mov ecx, dword [ebp - 0x60]
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 dword [ebp - 0x44], ecx
mov dword [ebp - 0x48], eax
mov eax, dword [ebp - 0x48]
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 ecx, dword [0x43957c]
mov eax, dword [0x439578]
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, 0x77e772f8
mov ecx, 0x86b34b26
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x58], eax
jmp 0x40626e
mov dword [ebp - 0x58], 0x39478e07
jmp 0x40626e
mov eax, dword [0x43957c]
mov ecx, dword [0x439578]
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, 0x536ce57e
mov ecx, 0xe2c3ac5
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x58], eax
jmp 0x40626e
mov eax, dword [ebp - 0x30]
mov dword [ebp - 0x4c], eax
mov eax, 0xffffffff
cmp dword [ebp - 0x4c], eax
sete al
and al, 1
mov byte [ebp - 0x29], al
mov eax, dword [0x43957c]
mov ecx, dword [0x439578]
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, 0x536ce57e
mov ecx, 0x37fc3569
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x58], eax
jmp 0x40626e
mov dl, byte [ebp - 0x29]
mov eax, 0xa1f0d295
mov ecx, 0x33d17ca8
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x58], eax
jmp 0x40626e
mov ecx, dword [0x43957c]
mov eax, dword [0x439578]
mov edx, ecx
sub edx, 0x8ae9bdd7
sub edx, 1
add edx, 0x8ae9bdd7
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, 0x995e41a7
mov ecx, 0xcf39872d
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x58], eax
jmp 0x40626e
mov byte [ebp - 0x3d], 0
mov eax, dword [0x43957c]
mov ecx, dword [0x439578]
mov edx, eax
sub edx, 0xd64aadc0
sub edx, 1
add edx, 0xd64aadc0
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, 0x995e41a7
mov ecx, 0xe672e76a
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x58], eax
jmp 0x40626e
mov dword [ebp - 0x58], 0x97b8fd24
jmp 0x40626e
mov dword [ebp - 0x58], 0xe73666a8
jmp 0x40626e
mov eax, dword [ebp - 0x44]
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 - 0x50], eax
mov eax, dword [ebp - 0x50]
mov dword [ebp - 0x28], eax
mov dword [ebp - 0x58], 0x1463832c
jmp 0x40626e
mov edx, dword [ebp - 0x28]
mov esi, 0xffffffff
mov eax, 0x67e02b5c
mov ecx, 0x4d362219
cmp edx, esi
cmove eax, ecx
mov dword [ebp - 0x58], eax
jmp 0x40626e
mov eax, dword [ebp - 0x4c]
sub esp, 4
mov dword [esp], eax
call dword [sym.imp.KERNEL32.dll_CloseHandle]
mov byte [ebp - 0x3d], 0
mov dword [ebp - 0x58], 0x2ec3c984
jmp 0x40626e
mov ecx, dword [0x43957c]
mov eax, dword [0x439578]
mov edx, ecx
sub edx, 0xd4c98984
sub edx, 1
add edx, 0xd4c98984
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, 0x8fa73d92
mov ecx, 0x8ec17d37
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x58], eax
jmp 0x40626e
mov ecx, dword [0x43957c]
mov eax, dword [0x439578]
mov edx, ecx
add edx, 0xf29d8310
sub edx, 1
sub edx, 0xf29d8310
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, 0x8fa73d92
mov ecx, 0x94b87379
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x58], eax
jmp 0x40626e
mov dword [ebp - 0x58], 0xe73666a8
jmp 0x40626e
mov byte [ebp - 0x51], 0
mov dword [ebp - 0x58], 0x6f7c611e
jmp 0x40626e
mov ecx, dword [0x43957c]
mov eax, dword [0x439578]
mov edx, ecx
add edx, 0xbbaa87cd
sub edx, 1
sub edx, 0xbbaa87cd
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, 0xaa58a1a7
mov ecx, 0x13b3e2c8
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x58], eax
jmp 0x40626e
mov ecx, dword [0x43957c]
mov eax, dword [0x439578]
mov edx, ecx
sub edx, 0x1cd2ba14
sub edx, 1
add edx, 0x1cd2ba14
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, 0xaa58a1a7
mov ecx, 0xe032b737
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x58], eax
jmp 0x40626e
mov dword [ebp - 0x58], 0x17afbf5a
jmp 0x40626e
mov ecx, dword [0x43957c]
mov eax, dword [0x439578]
mov edx, ecx
add edx, 0x3c92f826
sub edx, 1
sub edx, 0x3c92f826
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, 0x4762f5c6
mov ecx, 0x3e0d1d51
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x58], eax
jmp 0x40626e
mov eax, dword [ebp - 0x38]
mov dword [ebp - 0x24], eax
mov eax, dword [ebp - 0x4c]
mov dword [ebp - 0x20], eax
mov ecx, dword [0x43957c]
mov eax, dword [0x439578]
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, 0x4762f5c6
mov ecx, 0x1c8303e8
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x58], eax
jmp 0x40626e
mov dword [ebp - 0x58], 0x60000f4e
jmp 0x40626e
mov ecx, dword [0x43957c]
mov eax, dword [0x439578]
mov edx, ecx
sub edx, 0x2e8fd26b
sub edx, 1
add edx, 0x2e8fd26b
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, 0xc84e4dc8
mov ecx, 0x1e6533f6
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x58], eax
jmp 0x40626e
mov eax, dword [ebp - 0x34]
mov ecx, dword [ebp - 0x24]
mov edx, dword [ebp - 0x20]
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 - 0x1b], al
mov ecx, dword [0x43957c]
mov eax, dword [0x439578]
mov edx, ecx
add edx, 0xed6b2edb
sub edx, 1
sub edx, 0xed6b2edb
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, 0xc84e4dc8
mov ecx, 0xca631b1
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x58], eax
jmp 0x40626e
mov dl, byte [ebp - 0x1b]
mov eax, 0xb4c7d48
mov ecx, 0x9b594447
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x58], eax
jmp 0x40626e
mov dword [ebp - 0x58], 0x363e32db
jmp 0x40626e
mov eax, dword [ebp - 0x34]
cmp dword [eax], 0
sete al
and al, 1
mov byte [ebp - 0x1a], al
mov dword [ebp - 0x58], 0x7bb57aee
jmp 0x40626e
mov dl, byte [ebp - 0x1a]
mov eax, 0x41a8cc38
mov ecx, 0xee52c294
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x58], eax
jmp 0x40626e
mov byte [ebp - 0x51], 1
mov dword [ebp - 0x58], 0x18780b7c
jmp 0x40626e
mov dword [ebp - 0x58], 0x363e32db
jmp 0x40626e
mov eax, dword [ebp - 0x34]
mov ecx, dword [eax]
mov edx, dword [ebp - 0x38]
mov esi, dword [ebp - 0x50]
mov eax, dword [ebp - 0x3c]
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 dword [ebp - 0x58], 0xa076b5a
jmp 0x40626e
mov ecx, dword [0x43957c]
mov eax, dword [0x439578]
mov edx, ecx
add edx, 0xd71c798a
sub edx, 1
sub edx, 0xd71c798a
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, 0x1cd03088
mov ecx, 0xd5851218
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x58], eax
jmp 0x40626e
mov eax, dword [0x43957c]
mov ecx, dword [0x439578]
mov edx, eax
add edx, 0xffba3919
sub edx, 1
sub edx, 0xffba3919
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, 0x1cd03088
mov ecx, 0x546de3ca
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x58], eax
jmp 0x40626e
mov dl, byte [ebp - 0x19]
mov eax, 0x94a47b73
mov ecx, 0x51ae6c7d
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x58], eax
jmp 0x40626e
mov dword [ebp - 0x58], 0x363e32db
jmp 0x40626e
mov eax, dword [ebp - 0x3c]
mov eax, dword [eax]
mov dword [ebp - 0x18], eax
mov dword [ebp - 0x58], 0x71d61f35
jmp 0x40626e
mov ecx, dword [0x43957c]
mov eax, dword [0x439578]
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, 0x26b1cf21
mov ecx, 0x36b6d144
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x58], eax
jmp 0x40626e
mov eax, dword [ebp - 0x34]
mov ecx, dword [eax]
mov eax, dword [ebp - 0x18]
cmp eax, ecx
setne al
and al, 1
mov byte [ebp - 0x12], al
mov eax, dword [0x43957c]
mov ecx, dword [0x439578]
mov edx, eax
sub edx, 0x8d88474e
sub edx, 1
add edx, 0x8d88474e
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, 0x26b1cf21
mov ecx, 0xf03a9001
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x58], eax
jmp 0x40626e
mov dl, byte [ebp - 0x12]
mov eax, 0xbe8e9af4
mov ecx, 0x415580f4
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x58], eax
jmp 0x40626e
mov eax, dword [0x43957c]
mov ecx, dword [0x439578]
mov edx, eax
add edx, 0x8f01f841
sub edx, 1
sub edx, 0x8f01f841
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, 0x1d3fe710
mov ecx, 0x58b6b51b
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x58], eax
jmp 0x40626e
mov eax, dword [0x43957c]
mov ecx, dword [0x439578]
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, 0x1d3fe710
mov ecx, 0xa80dcdfc
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x58], eax
jmp 0x40626e
mov dword [ebp - 0x58], 0x363e32db
jmp 0x40626e
mov dword [ebp - 0x58], 0x17afbf5a
jmp 0x40626e
mov eax, dword [0x43957c]
mov ecx, dword [0x439578]
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, 0x7c880a80
mov ecx, 0xe0e2872c
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x58], eax
jmp 0x40626e
mov eax, dword [ebp - 0x4c]
sub esp, 4
mov dword [esp], eax
call dword [sym.imp.KERNEL32.dll_CloseHandle]
mov eax, dword [ebp - 0x50]
sub esp, 4
mov dword [esp], eax
call dword [sym.imp.KERNEL32.dll_CloseHandle]
mov al, byte [ebp - 0x51]
and al, 1
mov byte [ebp - 0x3d], al
mov eax, dword [0x43957c]
mov ecx, dword [0x439578]
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, 0x7c880a80
mov ecx, 0x5328db24
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x58], eax
jmp 0x40626e
mov dword [ebp - 0x58], 0xb7ffeed8
jmp 0x40626e
mov dword [ebp - 0x58], 0xe73666a8
jmp 0x40626e
mov al, byte [ebp - 0x3d]
and al, 1
mov byte [ebp - 0x11], al
mov dword [ebp - 0x58], 0xcb0ec8aa
jmp 0x40626e
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.004218e0
mov eax, dword [ebp - 0x68]
lea esp, [ebp - 0xc]
pop esi
pop edi
pop ebx
pop ebp
ret
mov eax, dword [ebp - 0x5c]
mov ecx, dword [ebp - 0x60]
mov dword [ebp - 0x44], ecx
mov dword [ebp - 0x48], eax
mov eax, dword [ebp - 0x48]
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], 0x9df42b08
jmp 0x40626e
mov eax, dword [ebp - 0x30]
mov dword [ebp - 0x4c], eax
mov dword [ebp - 0x58], 0xe2c3ac5
jmp 0x40626e
mov byte [ebp - 0x3d], 0
mov dword [ebp - 0x58], 0xcf39872d
jmp 0x40626e
mov dword [ebp - 0x58], 0x8ec17d37
jmp 0x40626e
mov dword [ebp - 0x58], 0x13b3e2c8
jmp 0x40626e
mov eax, dword [ebp - 0x38]
mov dword [ebp - 0x58], 0x3e0d1d51
jmp 0x40626e
mov eax, dword [ebp - 0x34]
mov ecx, dword [ebp - 0x24]
mov edx, dword [ebp - 0x20]
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 - 0x58], 0x1e6533f6
jmp 0x40626e
mov dword [ebp - 0x58], 0xd5851218
jmp 0x40626e
mov eax, dword [ebp - 0x34]
mov eax, dword [ebp - 0x18]
mov dword [ebp - 0x58], 0x36b6d144
jmp 0x40626e
mov dword [ebp - 0x58], 0x58b6b51b
jmp 0x40626e
mov eax, dword [ebp - 0x4c]
sub esp, 4
mov dword [esp], eax
call dword [sym.imp.KERNEL32.dll_CloseHandle]
mov eax, dword [ebp - 0x50]
sub esp, 4
mov dword [esp], eax
call dword [sym.imp.KERNEL32.dll_CloseHandle]
mov al, byte [ebp - 0x51]
and al, 1
mov byte [ebp - 0x3d], al
mov dword [ebp - 0x58], 0xe0e2872c
jmp 0x4050d6