Function at 0x403000
Capabilities:
Get file size
Read file on windows

Disassembly:
push ebp
push ebx
push edi
push esi
sub esp, 0x28
mov eax, dword [0x478534]
mov ebp, dword [esp + 0x44]
mov esi, dword [esp + 0x40]
mov ebx, dword [esp + 0x3c]
xor eax, esp
mov dword [esp + 0x24], eax
mov eax, dword [0x479060]
mov ecx, dword [0x479064]
lea edx, [eax - 1]
imul edx, eax
mov eax, edx
xor edx, 1
not eax
and eax, 0xfffffffe
or edx, eax
mov eax, 0x2ad0e896
cmp edx, 0xffffffff
sete byte [esp + 0xa]
cmp ecx, 0xa
mov dword [esp + 4], ecx
setl byte [esp + 0xb]
mov dword [esp], ecx
cmp eax, 0xb40e47
jg 0x40307b
jmp 0x4032a0
test cl, cl
cmovne eax, edi
nop dword [eax + eax]
cmp eax, 0xb40e47
jle 0x4032a0
cmp eax, 0x2b3f1a67
jle 0x4030d0
cmp eax, 0x4cd55873
jg 0x40316b
cmp eax, 0x3fb97049
jle 0x4035d6
cmp eax, 0x450fbd08
jg 0x4037f4
cmp eax, 0x3fb9704a
je 0x403a22
cmp eax, 0x44b5cbd6
jne 0x403070
push dword [esp + 0xc]
call dword [sym.imp.KERNEL32.dll_CloseHandle]
jmp 0x404246
cmp eax, 0x1051853b
jle 0x403245
cmp eax, 0x1b8b2755
jle 0x403613
cmp eax, 0x24a936c0
jg 0x403976
cmp eax, 0x1b8b2756
je 0x403a83
cmp eax, 0x1caf5da0
jne 0x403070
mov eax, dword [0x479060]
lea ecx, [eax - 1]
imul ecx, eax
mov eax, ecx
and ecx, 1
not eax
mov edx, eax
and edx, 0xfffffffe
or ecx, edx
mov edx, 0x5b117bd2
not ecx
or ecx, eax
cmp ecx, 0xffffffff
sete cl
cmp dword [0x479064], 0xa
setl al
xor cl, al
mov ch, cl
not ch
and ch, al
test cl, cl
mov eax, 0x5b117bd2
jne 0x40314f
mov edx, 0xb95d4add
xor cl, ch
test ch, ch
jne 0x404148
mov edx, 0xb95d4add
test cl, cl
jne 0x403070
jmp 0x404150
cmp eax, 0x5b117bd1
jle 0x403695
cmp eax, 0x69d75e48
jg 0x4038c2
cmp eax, 0x5b117bd2
je 0x403b01
cmp eax, 0x67c3be4c
jne 0x403070
push dword [esp + 0xc]
call dword [sym.imp.KERNEL32.dll_CloseHandle]
mov ecx, dword [0x479060]
mov eax, dword [0x479064]
lea edx, [ecx - 1]
imul edx, ecx
mov ecx, edx
and edx, 0x70d6ae58
not ecx
and ecx, 0x8f2951a7
or edx, ecx
mov ecx, edx
xor edx, 0x82900a1
xor ecx, 0x70d6ae58
and edx, 0x18a9aab1
mov edi, ecx
and ecx, 0xfffffffe
and edi, 0xe756554e
or edi, edx
xor edi, 0xe756554f
or ecx, edi
mov edi, 0xbdfbae4
mov edx, ecx
and ecx, 0x1670ba6f
not edx
and edx, 0xe98f4590
or ecx, edx
xor ecx, 0x1670ba6f
sete ch
setne dh
cmp eax, 0xa
setl dl
cmp eax, 9
setg cl
and dl, dh
and ch, cl
or cl, dh
or dl, ch
mov eax, ecx
xor al, dl
mov eax, 0x8a528037
jne 0x403686
mov edi, 0x8a528037
test dl, dl
jne 0x403063
jmp 0x40368e
cmp eax, 0x81d2b64
jg 0x4034a9
cmp eax, 0xb40e48
je 0x4043f0
cmp eax, 0xf59824
je 0x403b92
cmp eax, 0x8064682
jne 0x403070
push 0
push 0x80
push 3
push 0
push 0
push 0x80000000
push ebx
call dword [sym.imp.KERNEL32.dll_CreateFileA]
mov eax, 0xb1624c7d
cmp eax, 0xb40e47
jg 0x40307b
nop word [eax + eax]
cmp eax, 0xc570327e
jg 0x403300
cmp eax, 0x928a4ad3
jle 0x403348
cmp eax, 0xb1624c7c
jle 0x40340f
cmp eax, 0xb95d4adc
jg 0x4039cf
cmp eax, 0xb1624c7d
je 0x403bfc
cmp eax, 0xb810f51e
jne 0x403070
push dword [esp + 0xc]
call dword [sym.imp.KERNEL32.dll_CloseHandle]
mov eax, 0xc570327f
cmp eax, 0xb40e47
jg 0x40307b
jmp 0x4032a0
cmp eax, 0xdb1673e4
jle 0x403379
cmp eax, 0xf741fc8e
jle 0x403774
cmp eax, 0xfbedddd0
jg 0x4038dd
cmp eax, 0xf741fc8f
je 0x403cac
cmp eax, 0xf7b7ca18
jne 0x403070
mov eax, 0x67c3be4c
cmp eax, 0xb40e47
jg 0x40307b
jmp 0x4032a0
cmp eax, 0x8b08d084
jg 0x40354e
cmp eax, 0x83ee02d0
je 0x403dab
cmp eax, 0x85332963
je 0x403d1e
cmp eax, 0x8a528037
jne 0x403070
jmp 0x403a06
cmp eax, 0xd1e9ed80
jg 0x403594
cmp eax, 0xc570327f
je 0x403dc0
cmp eax, 0xce430500
je 0x403e46
cmp eax, 0xd1ddd11c
jne 0x403070
mov eax, dword [0x479060]
mov edi, dword [0x479064]
lea ecx, [eax - 1]
imul ecx, eax
mov eax, ecx
and ecx, 1
not eax
mov edx, eax
and edx, 0xfffffffe
or ecx, edx
not ecx
or ecx, eax
cmp ecx, 0xffffffff
sete cl
setne al
cmp edi, 9
setg dl
cmp edi, 0xa
setl ah
and cl, dl
and ah, al
or cl, ah
mov ah, dl
and dl, al
xor ah, al
or dl, ah
mov eax, edx
xor al, cl
mov eax, 0x31681507
jne 0x4033fb
mov eax, 0x8fd975b5
test dl, dl
mov edx, eax
jne 0x403e31
mov edx, 0x8fd975b5
jmp 0x403e31
cmp eax, 0x928a4ad4
je 0x4043fc
cmp eax, 0x9c362199
je 0x404381
cmp eax, 0xab4b5f16
jne 0x403070
push dword [esp + 0xc]
call dword [sym.imp.KERNEL32.dll_CloseHandle]
mov eax, dword [0x479060]
mov ecx, dword [0x479064]
lea edx, [eax - 1]
imul edx, eax
mov eax, edx
and edx, 0xdc1cd01b
not eax
mov edi, eax
and edi, 0x23e32fe4
or edx, edi
mov edi, 0x44b5cbd6
xor edx, 0xdc1cd01a
xor eax, edx
test eax, edx
sete al
setne ah
cmp ecx, 0xa
setl dl
cmp ecx, 9
setg cl
and dl, ah
and al, cl
or cl, ah
or dl, al
mov eax, ecx
xor al, dl
mov eax, 0x117a7e52
jne 0x403686
mov edi, 0x117a7e52
test dl, dl
jne 0x403063
jmp 0x40368e
cmp eax, 0x81d2b65
je 0x403ef5
cmp eax, 0xa770e3c
je 0x403f0a
cmp eax, 0xbdfbae4
jne 0x403070
mov eax, dword [0x479060]
mov ebx, esi
mov esi, ebp
mov ebp, 0xb810f51e
mov edi, 0xb810f51e
lea ecx, [eax - 1]
imul ecx, eax
mov eax, ecx
and ecx, 0x64189ed4
not eax
mov edx, eax
and edx, 0x9be7612b
or ecx, edx
xor ecx, 0x9be7612a
or ecx, eax
cmp ecx, 0xffffffff
setne al
sete dl
cmp dword [0x479064], 9
setg cl
mov ah, cl
xor dl, cl
and cl, al
xor ah, al
or cl, ah
mov eax, 0xc570327f
jne 0x403528
mov edi, 0xc570327f
xor cl, dl
test dl, dl
jne 0x403530
mov ebp, edi
test cl, cl
jne 0x403536
mov eax, ebp
mov ebp, esi
mov esi, ebx
mov ebx, dword [esp + 0x3c]
cmp eax, 0xb40e47
jg 0x40307b
jmp 0x4032a0
cmp eax, 0x8b08d085
je 0x403f2f
cmp eax, 0x8cc859a3
je 0x403f92
cmp eax, 0x8fd975b5
jne 0x403070
cmp byte [esp + 0x1b], 0
mov eax, 0xfbedddd1
jne 0x403070
mov eax, 0x9c362199
cmp eax, 0xb40e47
jg 0x40307b
jmp 0x4032a0
cmp eax, 0xd1e9ed81
je 0x403a06
cmp eax, 0xd7785cf7
je 0x404011
cmp eax, 0xd86714ad
jne 0x403070
push dword [esp + 0x1c]
call fcn.0045f60c
add esp, 4
mov eax, 0xf2b01a3e
cmp eax, 0xb40e47
jg 0x40307b
jmp 0x4032a0
cmp eax, 0x2b3f1a68
je 0x4040b4
cmp eax, 0x31681507
je 0x403ffc
cmp eax, 0x343e664c
jne 0x403070
mov ecx, dword [esp]
mov eax, 0x928a4ad4
mov dword [esp + 4], ecx
cmp eax, 0xb40e47
jg 0x40307b
jmp 0x4032a0
cmp eax, 0x1051853c
je 0x4043c3
cmp eax, 0x117a7e52
je 0x4040c9
cmp eax, 0x1a67c0d6
jne 0x403070
mov eax, dword [0x479060]
mov ecx, dword [0x479064]
lea edx, [eax - 1]
imul edx, eax
mov eax, edx
and edx, 1
not eax
mov edi, eax
and edi, 0xfffffffe
or edx, edi
mov edi, 0x85332963
xor eax, edx
test eax, edx
sete al
setne ah
cmp ecx, 0xa
setl dl
cmp ecx, 9
setg cl
and dl, ah
and al, cl
or cl, ah
or dl, al
mov eax, ecx
xor al, dl
mov eax, 0x450fbd09
jne 0x403686
mov edi, 0x450fbd09
test dl, dl
jne 0x403063
mov eax, edi
jmp 0x403063
cmp eax, 0x4cd55874
je 0x4040de
cmp eax, 0x4d2a2011
je 0x404162
cmp eax, 0x57178a22
jne 0x403070
push 0
push dword [esp + 0x10]
call dword [sym.imp.KERNEL32.dll_GetFileSize]
mov dword [esp + 0x14], eax
mov eax, dword [esp + 0x14]
mov ecx, dword [0x479060]
cmp eax, 0xffffffff
lea edx, [ecx - 1]
mov eax, dword [0x479064]
sete byte [esp + 0x1b]
imul edx, ecx
mov ecx, edx
and edx, 0x88ccf855
not ecx
and ecx, 0x773307aa
or edx, ecx
mov ecx, edx
xor edx, 0x773307ab
xor ecx, 0x88ccf854
and ecx, 0xfffffffe
or edx, ecx
mov ecx, edx
and edx, 0xcfc97b67
not ecx
and ecx, 0x30368498
or edx, ecx
xor edx, 0xcfc97b67
sete dl
setne ch
cmp eax, 9
setg cl
cmp eax, 0xa
setl al
and dl, cl
and al, ch
or dl, al
mov eax, ecx
xor cl, ch
and al, ch
or cl, al
mov eax, 0xc3c91d0a
jne 0x40374c
mov eax, 0x8cc859a3
xor cl, dl
test dl, dl
jne 0x403757
mov eax, 0xc3c91d0a
test cl, cl
jne 0x403070
mov eax, 0x8cc859a3
cmp eax, 0xb40e47
jg 0x40307b
jmp 0x4032a0
cmp eax, 0xdb1673e5
je 0x40417f
cmp eax, 0xdddc3aae
je 0x4041e5
cmp eax, 0xf2b01a3e
jne 0x403070
mov eax, dword [0x479060]
mov ecx, dword [0x479064]
lea edx, [eax - 1]
imul edx, eax
mov eax, edx
xor edx, 1
not eax
and eax, 0xfffffffe
or edx, eax
cmp edx, 0xffffffff
sete dl
cmp ecx, 0xa
setl al
cmp ecx, 9
setg cl
mov ah, al
or al, dl
xor cl, dl
xor ah, dl
xor al, 1
or al, ah
mov edx, ecx
xor dl, al
mov edx, 0x4cd55874
jne 0x4037e0
mov edx, 0x1051853c
test al, al
mov eax, edx
jne 0x403e31
mov eax, 0x4cd55874
jmp 0x403e31
cmp eax, 0x450fbd09
je 0x40425b
cmp eax, 0x4c77292e
jne 0x403070
push dword [esp + 0xc]
call dword [sym.imp.KERNEL32.dll_CloseHandle]
mov eax, dword [0x479060]
mov edi, 0xdddc3aae
lea ecx, [eax - 1]
imul ecx, eax
mov eax, ecx
and ecx, 0xd99c548e
not eax
and eax, 0x2663ab71
or ecx, eax
mov eax, ecx
xor ecx, 0x2412301
xor eax, 0xd99c548e
and ecx, 0x53c9370b
mov edx, eax
and eax, 0xfffffffe
and edx, 0xac36c8f4
or edx, ecx
xor edx, 0xac36c8f5
or eax, edx
mov ecx, eax
and eax, 0xa2c70a39
not ecx
and ecx, 0x5d38f5c6
or eax, ecx
xor eax, 0xa2c70a39
sete cl
setne dl
cmp dword [0x479064], 0xa
setl al
xor dl, al
or cl, al
mov eax, 0xdddc3aae
mov ch, dl
xor cl, 1
xor ch, 1
or cl, ch
jne 0x40389d
mov edi, 0x1a67c0d6
xor cl, ch
test dl, dl
jne 0x4038a5
mov eax, edi
test cl, cl
jne 0x403070
mov eax, 0x1a67c0d6
cmp eax, 0xb40e47
jg 0x40307b
jmp 0x4032a0
cmp eax, 0x69d75e49
je 0x40409f
cmp eax, 0x70f3921e
jne 0x403070
jmp 0x4041d0
cmp eax, 0xfbedddd1
je 0x4042cd
cmp eax, 0x3acaf3
jne 0x403070
mov eax, dword [0x479060]
mov edx, dword [0x479064]
lea ecx, [eax - 1]
imul ecx, eax
mov eax, ecx
and ecx, 0xca69228b
not eax
mov edi, eax
and eax, 0xfffffffe
and edi, 0x3596dd74
or edi, ecx
xor edi, 0x3596dd75
or eax, edi
mov edi, 0xd1e9ed81
cmp eax, 0xffffffff
sete al
setne ah
cmp edx, 0xa
setl cl
cmp edx, 9
setg dl
and cl, ah
and al, dl
or dl, ah
or cl, al
mov eax, 0x70f3921e
jne 0x403951
mov edi, 0x70f3921e
xor cl, dl
test dl, dl
jne 0x403959
mov eax, edi
test cl, cl
jne 0x403070
mov eax, 0xd1e9ed81
cmp eax, 0xb40e47
jg 0x40307b
jmp 0x4032a0
cmp eax, 0x24a936c1
je 0x404347
cmp eax, 0x2ad0e896
jne 0x403070
movzx ecx, byte [esp + 0xa]
movzx edx, byte [esp + 0xb]
mov edi, 0x8064682
xor dl, cl
mov eax, edx
xor al, 1
and cl, al
xor al, cl
test al, 1
mov eax, 0xb1624c7d
jne 0x4039b3
mov edi, 0xb1624c7d
test dl, 1
cmove eax, edi
test cl, 1
cmove eax, edi
cmp eax, 0xb40e47
jg 0x40307b
jmp 0x4032a0
cmp eax, 0xb95d4add
je 0x40436c
cmp eax, 0xc3c91d0a
jne 0x403070
push 0
push dword [esp + 0x10]
call dword [sym.imp.KERNEL32.dll_GetFileSize]
mov eax, 0x57178a22
cmp eax, 0xb40e47
jg 0x40307b
jmp 0x4032a0
mov eax, 0x343e664c
mov dword [esp], 0
cmp eax, 0xb40e47
jg 0x40307b
jmp 0x4032a0
mov eax, dword [0x479060]
lea ecx, [eax - 1]
imul ecx, eax
mov eax, ecx
and ecx, 1
not eax
mov edx, eax
and edx, 0xfffffffe
or ecx, edx
mov edx, 0x4c77292e
xor eax, ecx
test eax, ecx
sete cl
cmp dword [0x479064], 0xa
setl al
xor cl, al
mov ch, cl
not ch
and ch, al
test cl, cl
mov eax, 0x4c77292e
jne 0x403a67
mov edx, 0xdddc3aae
xor cl, ch
test ch, ch
jne 0x404148
mov edx, 0xdddc3aae
test cl, cl
jne 0x403070
jmp 0x404150
mov eax, dword [0x479060]
mov edx, dword [0x479064]
lea ecx, [eax - 1]
imul ecx, eax
mov eax, ecx
and ecx, 0x878743aa
not eax
and eax, 0x7878bc55
or ecx, eax
mov eax, ecx
xor ecx, 0x7878bc54
xor eax, 0x878743aa
and eax, 0xfffffffe
or ecx, eax
cmp ecx, 0xffffffff
sete al
setne ah
cmp edx, 9
setg cl
cmp edx, 0xa
setl dl
and cl, al
and ah, dl
or cl, ah
mov ah, dl
or dl, al
xor ah, al
xor dl, 1
or dl, ah
mov eax, edx
xor al, cl
mov eax, 0x83ee02d0
jne 0x403aed
mov eax, 0xf59824
test dl, dl
mov edx, eax
jne 0x403e31
mov edx, 0xf59824
jmp 0x403e31
mov eax, dword [0x479060]
mov ecx, dword [0x479064]
lea edx, [eax - 1]
imul edx, eax
mov eax, edx
and edx, 0xf7431e2e
not eax
mov edi, eax
and eax, 0xfffffffe
and edi, 0x8bce1d1
or edi, edx
xor edi, 0x8bce1d0
or eax, edi
mov edi, 0x8b08d085
mov edx, eax
and eax, 0x8a4bdc33
not edx
and edx, 0x75b423cc
or eax, edx
xor eax, 0x8a4bdc33
sete al
setne ah
cmp ecx, 9
setg dh
cmp ecx, 0xa
setl cl
and dh, al
mov dl, cl
xor dl, ah
and dl, cl
and cl, ah
mov eax, 0x8b08d085
or cl, dh
jne 0x403b76
mov edi, 0xb95d4add
xor cl, dl
test dl, dl
jne 0x40432d
mov edi, 0xb95d4add
test cl, cl
jne 0x403070
jmp 0x404335
mov eax, dword [0x479060]
mov ecx, dword [0x479064]
lea edx, [eax - 1]
imul edx, eax
mov eax, edx
and edx, 1
not eax
mov edi, eax
and edi, 0xfffffffe
or edx, edi
mov edi, 0xf741fc8f
not edx
or edx, eax
cmp edx, 0xffffffff
sete al
setne ah
cmp ecx, 9
setg dh
cmp ecx, 0xa
setl dl
and dh, al
mov ecx, edx
xor cl, ah
and cl, dl
and dl, ah
or dl, dh
mov eax, ecx
xor al, dl
mov eax, 0xf741fc8f
jne 0x4042be
mov eax, 0x2b3f1a68
test dl, dl
jne 0x403063
jmp 0x4042c6
push 0
push 0x80
push 3
push 0
push 0
push 0x80000000
push ebx
call dword [sym.imp.KERNEL32.dll_CreateFileA]
mov dword [esp + 0xc], eax
mov eax, dword [esp + 0xc]
mov edi, dword [0x479064]
cmp eax, 0xffffffff
mov eax, dword [0x479060]
sete byte [esp + 0x13]
lea ecx, [eax - 1]
imul ecx, eax
mov eax, ecx
and ecx, 0xc9f7127
not eax
mov edx, eax
and edx, 0xf3608ed8
or ecx, edx
xor ecx, 0xf3608ed9
or ecx, eax
cmp ecx, 0xffffffff
setne dl
sete al
cmp edi, 0xa
setl cl
cmp edi, 9
setg ah
and dl, cl
and ah, al
or dl, ah
mov ah, cl
or cl, al
xor ah, al
xor cl, 1
or cl, ah
mov eax, 0x8064682
jne 0x403c84
mov eax, 0xa770e3c
xor cl, dl
test dl, dl
jne 0x403c8f
mov eax, 0x8064682
test cl, cl
jne 0x403070
mov eax, 0xa770e3c
cmp eax, 0xb40e47
jg 0x40307b
jmp 0x4032a0
mov eax, dword [0x479060]
mov ecx, dword [0x479064]
lea edx, [eax - 1]
imul edx, eax
mov eax, edx
and edx, 0xe255a38a
not eax
mov edi, eax
and eax, 0xfffffffe
and edi, 0x1daa5c75
or edi, edx
xor edi, 0x1daa5c74
or eax, edi
cmp eax, 0xffffffff
sete dl
cmp ecx, 0xa
setl al
cmp ecx, 9
setg cl
mov ah, al
or al, dl
xor cl, dl
xor ah, dl
xor al, 1
or al, ah
mov edx, ecx
xor dl, al
mov edx, 0x81d2b65
jne 0x403d0a
mov edx, 0x2b3f1a68
test al, al
mov eax, edx
jne 0x403e31
mov eax, 0x81d2b65
jmp 0x403e31
mov ecx, dword [0x479060]
mov eax, dword [0x479064]
lea edx, [ecx - 1]
imul edx, ecx
mov ecx, edx
and edx, 0xf51fcb0f
not ecx
and ecx, 0xae034f0
or edx, ecx
mov ecx, edx
xor edx, 0xae034f1
xor ecx, 0xf51fcb0e
and ecx, 0xfffffffe
or edx, ecx
mov ecx, edx
and edx, 0x451bf9c
not ecx
and ecx, 0xfbae4063
or edx, ecx
xor edx, 0x451bf9c
sete dl
setne ch
cmp eax, 9
setg cl
cmp eax, 0xa
setl al
and dl, cl
and al, ch
or dl, al
mov eax, ecx
xor cl, ch
and al, ch
or cl, al
mov eax, 0x83ee02d0
jne 0x403d98
mov eax, 0x1b8b2756
xor cl, dl
test dl, dl
jne 0x403da3
mov eax, 0x83ee02d0
test cl, cl
jne 0x403070
mov eax, 0x1b8b2756
cmp eax, 0xb40e47
jg 0x40307b
jmp 0x4032a0
push dword [esp + 0xc]
call dword [sym.imp.KERNEL32.dll_CloseHandle]
mov eax, dword [0x479060]
mov ecx, dword [0x479064]
lea edx, [eax - 1]
imul edx, eax
mov eax, edx
and edx, 0xd8bcb5cf
not eax
mov edi, eax
and edi, 0x27434a30
or edx, edi
xor edx, 0x27434a31
or edx, eax
cmp edx, 0xffffffff
setne al
sete ah
cmp ecx, 9
setg dl
cmp ecx, 0xa
setl cl
xor cl, ah
mov ah, dl
xor dl, al
and ah, al
or dl, ah
mov eax, edx
xor al, cl
mov eax, 0xb810f51e
jne 0x403e26
mov eax, 0xf7b7ca18
test dl, dl
mov edx, eax
jne 0x403e31
mov edx, 0xf7b7ca18
test cl, cl
cmovne eax, edx
cmp eax, 0xb40e47
jg 0x40307b
jmp 0x4032a0
mov eax, dword [esi]
mov dword [esp + 0x1c], eax
cmp dword [esp + 0x1c], 0
mov ecx, dword [0x479060]
mov eax, dword [0x479064]
lea edx, [ecx - 1]
sete byte [esp + 0x23]
imul edx, ecx
mov ecx, edx
and edx, 0xdd93c79f
not ecx
and ecx, 0x226c3860
or edx, ecx
mov ecx, edx
xor edx, 0x20001020
xor ecx, 0xdd93c79f
and edx, 0x399290b7
mov edi, ecx
and ecx, 0xfffffffe
and edi, 0xc66d6f48
or edi, edx
xor edi, 0xc66d6f49
or ecx, edi
mov edi, 0x24a936c1
cmp ecx, 0xffffffff
sete ch
setne dh
cmp eax, 0xa
setl cl
cmp eax, 9
mov eax, 0x69d75e49
setg dl
and cl, dh
and ch, dl
or dl, dh
or cl, ch
jne 0x403ed0
mov edi, 0x69d75e49
xor cl, dl
test dl, dl
jne 0x403ed8
mov eax, edi
test cl, cl
jne 0x403070
mov eax, 0x24a936c1
cmp eax, 0xb40e47
jg 0x40307b
jmp 0x4032a0
mov eax, 0x450fbd09
cmp eax, 0xb40e47
jg 0x40307b
jmp 0x4032a0
cmp byte [esp + 0x13], 0
mov eax, 0x4d2a2011
jne 0x403070
mov eax, 0x1caf5da0
cmp eax, 0xb40e47
jg 0x40307b
jmp 0x4032a0
mov eax, dword [0x479060]
mov edi, 0x57178a22
lea ecx, [eax - 1]
imul ecx, eax
mov eax, ecx
and ecx, 0xee76380d
not eax
mov edx, eax
and edx, 0x1189c7f2
or ecx, edx
xor ecx, 0x1189c7f3
or ecx, eax
cmp ecx, 0xffffffff
sete dl
cmp dword [0x479064], 0xa
setl cl
xor dl, cl
mov eax, edx
xor al, 1
and cl, al
xor al, cl
mov eax, 0xc3c91d0a
jne 0x4042be
mov eax, 0x57178a22
test dl, dl
jne 0x403063
jmp 0x4042c6
mov eax, dword [0x479060]
mov edx, dword [0x479064]
lea ecx, [eax - 1]
imul ecx, eax
mov eax, ecx
and ecx, 0x8b61286c
not eax
mov edi, eax
and edi, 0x749ed793
or ecx, edi
mov edi, 0xd1ddd11c
xor ecx, 0x8b61286d
xor eax, ecx
test eax, ecx
sete al
setne ah
cmp edx, 0xa
setl cl
cmp edx, 9
setg dl
and cl, ah
and al, dl
or dl, ah
or cl, al
mov eax, 0x31681507
jne 0x403fec
mov edi, 0x31681507
xor cl, dl
test dl, dl
jne 0x403ff4
mov eax, edi
test cl, cl
jne 0x403070
mov eax, 0xd1ddd11c
cmp eax, 0xb40e47
jg 0x40307b
jmp 0x4032a0
mov eax, dword [0x479060]
mov edi, 0xce430500
lea ecx, [eax - 1]
imul ecx, eax
mov eax, ecx
and ecx, 0xdb01b3e7
not eax
and eax, 0x24fe4c18
or ecx, eax
mov eax, ecx
xor ecx, 0x4880418
xor eax, 0xdb01b3e7
and ecx, 0x558886bd
mov edx, eax
and eax, 0xfffffffe
and edx, 0xaa777942
or edx, ecx
xor edx, 0xaa777943
or eax, edx
mov ecx, eax
and eax, 0x52a284a6
not ecx
and ecx, 0xad5d7b59
or eax, ecx
xor eax, 0x52a284a6
setne al
cmp dword [0x479064], 9
setg cl
mov edx, ecx
or dl, al
xor cl, al
mov eax, 0x69d75e49
jne 0x40408f
mov edi, 0x69d75e49
xor cl, dl
test dl, dl
jne 0x404097
mov eax, edi
test cl, cl
jne 0x403070
mov eax, 0xce430500
cmp eax, 0xb40e47
jg 0x40307b
jmp 0x4032a0
mov eax, 0xf741fc8f
cmp eax, 0xb40e47
jg 0x40307b
jmp 0x4032a0
mov eax, 0x4c77292e
cmp eax, 0xb40e47
jg 0x40307b
jmp 0x4032a0
push dword [esp + 0xc]
call dword [sym.imp.KERNEL32.dll_CloseHandle]
mov eax, dword [0x479060]
lea ecx, [eax - 1]
imul ecx, eax
mov eax, ecx
and ecx, 0x1cd8edc0
not eax
mov edx, eax
and eax, 0xfffffffe
and edx, 0xe327123f
or edx, ecx
xor edx, 0xe327123e
or eax, edx
mov edx, 0xdb1673e5
cmp eax, 0xffffffff
sete cl
cmp dword [0x479064], 0xa
setl al
xor cl, al
mov ch, cl
not ch
and ch, al
test cl, cl
mov eax, 0xdb1673e5
jne 0x40413d
mov edx, 0x1051853c
xor cl, ch
test ch, ch
jne 0x404148
mov edx, 0x1051853c
test cl, cl
jne 0x403070
mov eax, edx
cmp eax, 0xb40e47
jg 0x40307b
jmp 0x4032a0
mov eax, 0x928a4ad4
mov dword [esp + 4], 0
cmp eax, 0xb40e47
jg 0x40307b
jmp 0x4032a0
mov eax, dword [0x479060]
lea ecx, [eax - 1]
imul ecx, eax
mov eax, ecx
and ecx, 1
not eax
mov edx, eax
and edx, 0xfffffffe
or ecx, edx
xor eax, ecx
test eax, ecx
setne al
cmp dword [0x479064], 9
mov edx, eax
setg cl
xor dl, cl
and cl, al
mov eax, 0x70f3921e
or cl, dl
jne 0x4041bd
mov eax, 0x3acaf3
xor cl, dl
test dl, dl
jne 0x4041c8
mov eax, 0x70f3921e
test cl, cl
jne 0x403070
mov eax, 0x3acaf3
cmp eax, 0xb40e47
jg 0x40307b
jmp 0x4032a0
mov eax, dword [0x479060]
mov edx, dword [0x479064]
lea ecx, [eax - 1]
imul ecx, eax
mov eax, ecx
and ecx, 1
not eax
mov edi, eax
and edi, 0xfffffffe
or ecx, edi
mov edi, 0x44b5cbd6
not ecx
or ecx, eax
cmp ecx, 0xffffffff
setne al
cmp edx, 9
setg cl
cmp edx, 0xa
setl dl
and cl, al
xor dl, al
mov eax, 0x44b5cbd6
mov ch, dl
xor ch, 1
or cl, ch
jne 0x404236
mov edi, 0xab4b5f16
xor cl, ch
test dl, dl
jne 0x40423e
mov eax, edi
test cl, cl
jne 0x403070
mov eax, 0xab4b5f16
cmp eax, 0xb40e47
jg 0x40307b
jmp 0x4032a0
mov eax, dword [0x479060]
mov ecx, dword [0x479064]
lea edx, [eax - 1]
imul edx, eax
mov eax, edx
and edx, 0xfe544b86
not eax
mov edi, eax
and edi, 0x1abb479
or edx, edi
mov edi, 0xb40e48
xor edx, 0x1abb478
or edx, eax
cmp edx, 0xffffffff
sete al
setne ah
cmp ecx, 9
setg dh
cmp ecx, 0xa
setl dl
and dh, al
mov ecx, edx
xor cl, ah
and cl, dl
and dl, ah
or dl, dh
mov eax, ecx
xor al, dl
mov eax, 0xb40e48
jne 0x4042be
mov eax, 0x85332963
test dl, dl
jne 0x403063
mov edi, eax
jmp 0x403063
mov eax, dword [0x479060]
mov ecx, dword [0x479064]
lea edx, [eax - 1]
imul edx, eax
mov eax, edx
and edx, 1
not eax
mov edi, eax
and edi, 0xfffffffe
or edx, edi
mov edi, 0x67c3be4c
not edx
or edx, eax
cmp edx, 0xffffffff
sete al
setne ah
cmp ecx, 9
setg dh
cmp ecx, 0xa
setl cl
and dh, al
mov dl, cl
xor dl, ah
and dl, cl
and cl, ah
mov eax, 0x67c3be4c
or cl, dh
jne 0x404322
mov edi, 0xbdfbae4
xor cl, dl
test dl, dl
jne 0x40432d
mov edi, 0xbdfbae4
test cl, cl
jne 0x403070
mov eax, edi
cmp eax, 0xb40e47
jg 0x40307b
jmp 0x4032a0
cmp byte [esp + 0x23], 0
mov eax, 0xf2b01a3e
jne 0x403070
mov eax, 0xd86714ad
cmp eax, 0xb40e47
jg 0x40307b
jmp 0x4032a0
mov eax, 0x5b117bd2
cmp eax, 0xb40e47
jg 0x40307b
jmp 0x4032a0
push dword [esp + 0x14]
call fcn.0045f603
add esp, 4
mov dword [esi], eax
push 0
push ebp
push dword [esp + 0x1c]
push eax
push dword [esp + 0x1c]
call dword [sym.imp.KERNEL32.dll_ReadFile]
test eax, eax
mov eax, 0xd7785cf7
je 0x403070
mov eax, 0x3fb9704a
cmp eax, 0xb40e47
jg 0x40307b
jmp 0x4032a0
push dword [esp + 0xc]
call dword [sym.imp.KERNEL32.dll_CloseHandle]
mov eax, 0x4cd55874
cmp eax, 0xb40e47
jg 0x40307b
jmp 0x4032a0
mov eax, 0x343e664c
mov cl, 1
jmp 0x403054
mov ebx, dword [esp + 4]
mov ecx, dword [esp + 0x24]
xor ecx, esp
and bl, 1
call fcn.0045f611
mov eax, ebx
add esp, 0x28
pop esi
pop edi
pop ebx
pop ebp
ret