Function at 0x4738c0
Capabilities:
Get file size
Read file on windows
Write file on windows

Disassembly:
push ebp
mov ebp, esp
push ebx
push edi
push esi
sub esp, 0xd4
mov eax, dword [0x4c9080]
xor eax, ebp
mov dword [ebp - 0x10], eax
mov ecx, dword [0x4ca5d4]
mov eax, dword [0x4ca5d0]
xor esi, esi
sub esi, 1
mov edx, ecx
add edx, esi
imul ecx, edx
and ecx, 1
cmp ecx, 0
sete cl
and cl, 1
mov byte [ebp - 0xc2], cl
cmp eax, 0xa
setl al
and al, 1
mov byte [ebp - 0xc1], al
mov dword [ebp - 0xc8], 0x9b3bba95
mov eax, dword [ebp - 0xc8]
mov dword [ebp - 0xcc], eax
sub eax, 0x80029601
je 0x47e078
jmp 0x473933
mov eax, dword [ebp - 0xcc]
sub eax, 0x804372ec
je 0x48071e
jmp 0x473949
mov eax, dword [ebp - 0xcc]
sub eax, 0x80bd4d05
je 0x4774ab
jmp 0x47395f
mov eax, dword [ebp - 0xcc]
sub eax, 0x80f648f4
je 0x4800a0
jmp 0x473975
mov eax, dword [ebp - 0xcc]
sub eax, 0x8134807d
je 0x4805ab
jmp 0x47398b
mov eax, dword [ebp - 0xcc]
sub eax, 0x817c8f99
je 0x47b545
jmp 0x4739a1
mov eax, dword [ebp - 0xcc]
sub eax, 0x82870e2a
je 0x47caf5
jmp 0x4739b7
mov eax, dword [ebp - 0xcc]
sub eax, 0x82f8da46
je 0x476b79
jmp 0x4739cd
mov eax, dword [ebp - 0xcc]
sub eax, 0x832c8c9a
je 0x47814b
jmp 0x4739e3
mov eax, dword [ebp - 0xcc]
sub eax, 0x83acf177
je 0x47f020
jmp 0x4739f9
mov eax, dword [ebp - 0xcc]
sub eax, 0x83ae86f2
je 0x4808ad
jmp 0x473a0f
mov eax, dword [ebp - 0xcc]
sub eax, 0x83b60fca
je 0x48041c
jmp 0x473a25
mov eax, dword [ebp - 0xcc]
sub eax, 0x850a8246
je 0x47b185
jmp 0x473a3b
mov eax, dword [ebp - 0xcc]
sub eax, 0x86097125
je 0x477dae
jmp 0x473a51
mov eax, dword [ebp - 0xcc]
sub eax, 0x865aad50
je 0x47d879
jmp 0x473a67
mov eax, dword [ebp - 0xcc]
sub eax, 0x87e933f6
je 0x47fe50
jmp 0x473a7d
mov eax, dword [ebp - 0xcc]
sub eax, 0x884ffe9a
je 0x478680
jmp 0x473a93
mov eax, dword [ebp - 0xcc]
sub eax, 0x892bbb04
je 0x476c38
jmp 0x473aa9
mov eax, dword [ebp - 0xcc]
sub eax, 0x89915dfb
je 0x4783f5
jmp 0x473abf
mov eax, dword [ebp - 0xcc]
sub eax, 0x89aafac0
je 0x476fb4
jmp 0x473ad5
mov eax, dword [ebp - 0xcc]
sub eax, 0x89d10724
je 0x480260
jmp 0x473aeb
mov eax, dword [ebp - 0xcc]
sub eax, 0x89df78a7
je 0x47d6a6
jmp 0x473b01
mov eax, dword [ebp - 0xcc]
sub eax, 0x8a525b88
je 0x4795c6
jmp 0x473b17
mov eax, dword [ebp - 0xcc]
sub eax, 0x8a637f8b
je 0x476be7
jmp 0x473b2d
mov eax, dword [ebp - 0xcc]
sub eax, 0x8aff78d6
je 0x47ac12
jmp 0x473b43
mov eax, dword [ebp - 0xcc]
sub eax, 0x8bb9484a
je 0x480bdb
jmp 0x473b59
mov eax, dword [ebp - 0xcc]
sub eax, 0x8c28b2ec
je 0x47f8c9
jmp 0x473b6f
mov eax, dword [ebp - 0xcc]
sub eax, 0x8c5a4996
je 0x476e8d
jmp 0x473b85
mov eax, dword [ebp - 0xcc]
sub eax, 0x8cc9a5fa
je 0x47862f
jmp 0x473b9b
mov eax, dword [ebp - 0xcc]
sub eax, 0x8ce8d7b1
je 0x4800af
jmp 0x473bb1
mov eax, dword [ebp - 0xcc]
sub eax, 0x8d38cfa1
je 0x47c76d
jmp 0x473bc7
mov eax, dword [ebp - 0xcc]
sub eax, 0x8e81c401
je 0x478d3b
jmp 0x473bdd
mov eax, dword [ebp - 0xcc]
sub eax, 0x9039e5dd
je 0x480680
jmp 0x473bf3
mov eax, dword [ebp - 0xcc]
sub eax, 0x90b157dd
je 0x47bdb4
jmp 0x473c09
mov eax, dword [ebp - 0xcc]
sub eax, 0x90b7ddd8
je 0x476f63
jmp 0x473c1f
mov eax, dword [ebp - 0xcc]
sub eax, 0x910ad1a5
je 0x479861
jmp 0x473c35
mov eax, dword [ebp - 0xcc]
sub eax, 0x91795631
je 0x478f3f
jmp 0x473c4b
mov eax, dword [ebp - 0xcc]
sub eax, 0x92263ae4
je 0x47fbf9
jmp 0x473c61
mov eax, dword [ebp - 0xcc]
sub eax, 0x92bc26d0
je 0x47ce5d
jmp 0x473c77
mov eax, dword [ebp - 0xcc]
sub eax, 0x94004431
je 0x4804a4
jmp 0x473c8d
mov eax, dword [ebp - 0xcc]
sub eax, 0x940df3e2
je 0x479d4c
jmp 0x473ca3
mov eax, dword [ebp - 0xcc]
sub eax, 0x94e5069d
je 0x480660
jmp 0x473cb9
mov eax, dword [ebp - 0xcc]
sub eax, 0x94eb1600
je 0x479cab
jmp 0x473ccf
mov eax, dword [ebp - 0xcc]
sub eax, 0x9641d919
je 0x47a4ea
jmp 0x473ce5
mov eax, dword [ebp - 0xcc]
sub eax, 0x97e48518
je 0x480cb4
jmp 0x473cfb
mov eax, dword [ebp - 0xcc]
sub eax, 0x983df85b
je 0x4790e6
jmp 0x473d11
mov eax, dword [ebp - 0xcc]
sub eax, 0x9908ebfe
je 0x479154
jmp 0x473d27
mov eax, dword [ebp - 0xcc]
sub eax, 0x991500be
je 0x47c621
jmp 0x473d3d
mov eax, dword [ebp - 0xcc]
sub eax, 0x9a1edf92
je 0x47c3bf
jmp 0x473d53
mov eax, dword [ebp - 0xcc]
sub eax, 0x9b3bba95
je 0x4769c6
jmp 0x473d69
mov eax, dword [ebp - 0xcc]
sub eax, 0x9b475968
je 0x48085c
jmp 0x473d7f
mov eax, dword [ebp - 0xcc]
sub eax, 0x9b56c0e6
je 0x47ffc8
jmp 0x473d95
mov eax, dword [ebp - 0xcc]
sub eax, 0x9bf2b6b8
je 0x478f90
jmp 0x473dab
mov eax, dword [ebp - 0xcc]
sub eax, 0x9e88a0af
je 0x47b1a3
jmp 0x473dc1
mov eax, dword [ebp - 0xcc]
sub eax, 0x9f0ce326
je 0x47bd46
jmp 0x473dd7
mov eax, dword [ebp - 0xcc]
sub eax, 0x9f878b2d
je 0x479b8e
jmp 0x473ded
mov eax, dword [ebp - 0xcc]
sub eax, 0xa00c7cd7
je 0x47ae37
jmp 0x473e03
mov eax, dword [ebp - 0xcc]
sub eax, 0xa00fde4f
je 0x47bcf5
jmp 0x473e19
mov eax, dword [ebp - 0xcc]
sub eax, 0xa0453a40
je 0x47faa0
jmp 0x473e2f
mov eax, dword [ebp - 0xcc]
sub eax, 0xa04b96b9
je 0x4801c1
jmp 0x473e45
mov eax, dword [ebp - 0xcc]
sub eax, 0xa108bf81
je 0x479fb2
jmp 0x473e5b
mov eax, dword [ebp - 0xcc]
sub eax, 0xa10e59c7
je 0x47c978
jmp 0x473e71
mov eax, dword [ebp - 0xcc]
sub eax, 0xa14d3f3a
je 0x47be44
jmp 0x473e87
mov eax, dword [ebp - 0xcc]
sub eax, 0xa1b791f0
je 0x47873f
jmp 0x473e9d
mov eax, dword [ebp - 0xcc]
sub eax, 0xa2a42f71
je 0x48068f
mov bl, byte [ebp - 0xc2]
mov dh, byte [ebp - 0xc1]
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, 0xc671056a
mov ecx, 0x1fc7d111
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0xc8], eax
jmp 0x480ee8
mov ecx, dword [0x4ca5d4]
mov eax, dword [0x4ca5d0]
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, 0xa04b96b9
mov ecx, 0x8a637f8b
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0xc8], eax
jmp 0x480ee8
mov eax, dword [0x4ca5d4]
mov ecx, dword [0x4ca5d0]
mov edx, eax
sub edx, 0x57dcd608
sub edx, 1
add edx, 0x57dcd608
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, 0xa04b96b9
mov ecx, 0x892bbb04
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0xc8], eax
jmp 0x480ee8
mov dword [ebp - 0xc8], 0x6759df0d
jmp 0x480ee8
mov dword [ebp - 0xc8], 0x58bcf830
jmp 0x480ee8
mov eax, dword [0x4ca5d4]
mov ecx, dword [0x4ca5d0]
mov edx, eax
add edx, 0xeb90639b
sub edx, 1
sub edx, 0xeb90639b
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, 0x6d820137
mov ecx, 0x89aafac0
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0xc8], eax
jmp 0x480ee8
mov eax, dword [0x4ca5d4]
mov ecx, dword [0x4ca5d0]
mov edx, eax
sub edx, 0x4c843239
sub edx, 1
add edx, 0x4c843239
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, 0x3995e215
mov ecx, 0x4199a2d
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0xc8], eax
jmp 0x480ee8
mov dword [ebp - 0xc8], 0xd637845a
jmp 0x480ee8
mov eax, dword [ebp - 0xb0]
movzx ecx, byte [eax]
sar ecx, 5
mov eax, dword [ebp - 0xb0]
movzx edx, byte [eax]
shl edx, 3
mov eax, ecx
and eax, edx
xor ecx, edx
or eax, ecx
mov cl, al
mov eax, dword [ebp - 0xb0]
mov byte [eax], cl
mov eax, dword [ebp - 0xb0]
movzx esi, byte [eax]
mov eax, esi
xor eax, 0xffffffff
and eax, 0xad344db1
mov edx, 0xffffffff
xor edx, 0xad344db1
and esi, edx
mov ecx, 0xffffffff
xor ecx, 0xa9
and ecx, 0xad344db1
and edx, 0xa9
or eax, esi
or ecx, edx
xor eax, ecx
mov cl, al
mov eax, dword [ebp - 0xb0]
mov byte [eax], cl
mov eax, dword [ebp - 0xb0]
movzx ecx, byte [eax]
mov eax, ecx
xor eax, 0xffffffff
and eax, 0xffffffff
mov edx, 0xffffffff
xor edx, 0xffffffff
and ecx, edx
or eax, ecx
mov cl, al
mov eax, dword [ebp - 0xb0]
mov byte [eax], cl
mov eax, dword [ebp - 0xb4]
mov ecx, dword [eax]
mov eax, dword [ebp - 0xb0]
movzx eax, byte [eax]
add eax, 0x35fd07ee
sub eax, ecx
sub eax, 0x35fd07ee
mov cl, al
mov eax, dword [ebp - 0xb0]
mov byte [eax], cl
mov eax, dword [ebp - 0xb0]
movzx esi, byte [eax]
mov eax, esi
xor eax, 0xffffffff
and eax, 0x6dad3d1b
mov edx, 0xffffffff
xor edx, 0x6dad3d1b
and esi, edx
mov ecx, 0xffffffff
xor ecx, 0x7a
and ecx, 0x6dad3d1b
and edx, 0x7a
or eax, esi
or ecx, edx
xor eax, ecx
mov cl, al
mov eax, dword [ebp - 0xb0]
mov byte [eax], cl
mov eax, dword [ebp - 0xb4]
mov ecx, dword [eax]
mov eax, dword [ebp - 0xb0]
movzx eax, byte [eax]
add eax, 0xed117a9
add eax, ecx
sub eax, 0xed117a9
mov cl, al
mov eax, dword [ebp - 0xb0]
mov byte [eax], cl
mov eax, dword [ebp - 0xb0]
movzx ecx, byte [eax]
mov eax, ecx
xor eax, 0xffffffff
and eax, 0x4e
mov edx, 0xffffffff
xor edx, 0x4e
and ecx, edx
or eax, ecx
mov cl, al
mov eax, dword [ebp - 0xb0]
mov byte [eax], cl
mov eax, dword [ebp - 0xb0]
mov dl, byte [eax]
mov eax, dword [ebp - 0xb4]
mov ecx, dword [eax]
mov eax, dword [ebp - 0xb8]
mov byte [eax + ecx], dl
mov eax, dword [0x4ca5d4]
mov ecx, dword [0x4ca5d0]
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, 0xb79906e4
mov ecx, 0x35e793f1
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0xc8], eax
jmp 0x480ee8
mov eax, dword [0x4ca5d4]
mov ecx, dword [0x4ca5d0]
mov edx, eax
add edx, 0xa0b47444
sub edx, 1
sub edx, 0xa0b47444
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, 0x46955fb6
mov ecx, 0x5c70b896
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0xc8], eax
jmp 0x480ee8
mov ecx, dword [0x4ca5d4]
mov eax, dword [0x4ca5d0]
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, 0xcee26611
mov ecx, 0x4730b89e
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0xc8], eax
jmp 0x480ee8
mov eax, dword [0x4ca5d4]
mov ecx, dword [0x4ca5d0]
mov edx, eax
sub edx, 0x79a38302
sub edx, 1
add edx, 0x79a38302
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, 0x73521240
mov ecx, 0x884ffe9a
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0xc8], eax
jmp 0x480ee8
mov eax, dword [0x4ca5d4]
mov ecx, dword [0x4ca5d0]
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, 0xebcfebcc
mov ecx, 0xd6d10b9c
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0xc8], eax
jmp 0x480ee8
mov eax, dword [ebp - 0xa8]
mov dword [eax], 0
mov ecx, dword [0x4ca5d4]
mov eax, dword [0x4ca5d0]
mov edx, ecx
add edx, 0xfd1438f
sub edx, 1
sub edx, 0xfd1438f
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, 0xb12105ab
mov ecx, 0xd104c71b
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0xc8], eax
jmp 0x480ee8
mov dword [ebp - 0xc8], 0xfdf50082
jmp 0x480ee8
mov eax, dword [0x4ca5d4]
mov ecx, dword [0x4ca5d0]
mov edx, eax
sub edx, 0x5890e09
sub edx, 1
add edx, 0x5890e09
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, 0xe090d7a4
mov ecx, 0x9bf2b6b8
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0xc8], eax
jmp 0x480ee8
mov eax, dword [0x4ca5d4]
mov ecx, dword [0x4ca5d0]
mov edx, eax
add edx, 0xa07250
sub edx, 1
sub edx, 0xa07250
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, 0x14ee93f8
mov ecx, 0xffdc3d64
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0xc8], eax
jmp 0x480ee8
mov ecx, dword [0x4ca5d4]
mov eax, dword [0x4ca5d0]
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, 0xe912fe80
mov ecx, 0x9908ebfe
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0xc8], eax
jmp 0x480ee8
mov dword [ebp - 0xc8], 0x5cf0edb9
jmp 0x480ee8
mov ecx, dword [0x4ca5d4]
mov eax, dword [0x4ca5d0]
mov edx, ecx
sub edx, 0xb93a3a2a
sub edx, 1
add edx, 0xb93a3a2a
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, 0x5ba11668
mov ecx, 0xecb365f6
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0xc8], eax
jmp 0x480ee8
mov dword [ebp - 0xc8], 0xfc0a7ec2
jmp 0x480ee8
mov ecx, dword [0x4ca5d4]
mov eax, dword [0x4ca5d0]
mov edx, ecx
add edx, 0xabf1729c
sub edx, 1
sub edx, 0xabf1729c
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, 0xe29e0208
mov ecx, 0x7f8143a4
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0xc8], eax
jmp 0x480ee8
mov eax, dword [0x4ca5d4]
mov ecx, dword [0x4ca5d0]
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, 0xfafa35ee
mov ecx, 0x62efb90f
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0xc8], eax
jmp 0x480ee8
mov eax, dword [ebp - 0xbc]
add eax, 8
mov dword [ebp - 0x64], eax
mov dword [ebp - 0xc8], 0xd292e257
jmp 0x480ee8
mov eax, dword [ebp - 0xa0]
mov eax, dword [eax]
xor ecx, ecx
sub esp, 8
mov dword [esp], eax
mov dword [esp + 4], 0
call dword [sym.imp.KERNEL32.dll_GetFileSize]
mov ecx, eax
mov eax, dword [ebp - 0x9c]
mov dword [eax], ecx
mov eax, dword [ebp - 0x9c]
mov eax, dword [eax]
mov dword [ebp - 0x5c], eax
mov dword [ebp - 0xc8], 0x686a4698
jmp 0x480ee8
mov dword [ebp - 0xc8], 0x40e2a667
jmp 0x480ee8
mov eax, dword [0x4ca5d4]
mov ecx, dword [0x4ca5d0]
mov edx, eax
add edx, 0x26d4bf5a
sub edx, 1
sub edx, 0x26d4bf5a
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, 0xbd9ea37
mov ecx, 0x7f833c47
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0xc8], eax
jmp 0x480ee8
mov dword [ebp - 0xc8], 0xc359e1fc
jmp 0x480ee8
mov dl, byte [ebp - 0x3d]
mov eax, 0x9e88a0af
mov ecx, 0xc93cf163
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0xc8], eax
jmp 0x480ee8
mov eax, dword [0x4ca5d4]
mov ecx, dword [0x4ca5d0]
mov edx, eax
sub edx, 0xcfbb234e
sub edx, 1
add edx, 0xcfbb234e
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, 0x164752eb
mov ecx, 0x552feb38
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0xc8], eax
jmp 0x480ee8
mov ecx, dword [0x4ca5d4]
mov eax, dword [0x4ca5d0]
mov edx, ecx
add edx, 0x6c6c23d2
sub edx, 1
sub edx, 0x6c6c23d2
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, 0xc4af0a5b
mov ecx, 0x7883e806
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0xc8], eax
jmp 0x480ee8
mov eax, dword [0x4ca5d4]
mov ecx, dword [0x4ca5d0]
mov edx, eax
add edx, 0x5a2ee2b0
sub edx, 1
sub edx, 0x5a2ee2b0
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, 0x7f12a84c
mov ecx, 0x9f0ce326
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0xc8], eax
jmp 0x480ee8
mov ecx, dword [0x4ca5d4]
mov eax, dword [0x4ca5d0]
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, 0x12980aa2
mov ecx, 0x90b157dd
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0xc8], eax
jmp 0x480ee8
mov eax, dword [0x4ca5d4]
mov ecx, dword [0x4ca5d0]
mov edx, eax
sub edx, 0x82e8e327
sub edx, 1
add edx, 0x82e8e327
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, 0x12980aa2
mov ecx, 0xae73131e
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0xc8], eax
jmp 0x480ee8
mov eax, dword [0x4ca5d4]
mov ecx, dword [0x4ca5d0]
mov edx, eax
add edx, 0xd0a426a2
sub edx, 1
sub edx, 0xd0a426a2
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, 0x50d6e976
mov ecx, 0x46dd126
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0xc8], eax
jmp 0x480ee8
mov eax, dword [ebp - 0x2c]
sub esp, 4
mov dword [esp], eax
call dword [sym.imp.KERNEL32.dll_CloseHandle]
mov eax, dword [ebp - 0x98]
mov eax, dword [eax]
mov dword [ebp - 0x28], eax
mov edx, dword [ebp - 0x28]
mov eax, 0xe5535a15
mov ecx, 0x20be73e
cmp edx, 0
cmove eax, ecx
mov dword [ebp - 0xc8], eax
jmp 0x480ee8
mov eax, dword [0x4ca5d4]
mov ecx, dword [0x4ca5d0]
mov edx, eax
add edx, 0x966418d0
sub edx, 1
sub edx, 0x966418d0
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, 0x53ff286f
mov ecx, 0xe886cc07
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0xc8], eax
jmp 0x480ee8
mov ecx, dword [0x4ca5d4]
mov eax, dword [0x4ca5d0]
mov edx, ecx
sub edx, 0xae27aa6d
sub edx, 1
add edx, 0xae27aa6d
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, 0x92263ae4
mov ecx, 0xa2d43c21
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0xc8], eax
jmp 0x480ee8
mov eax, dword [ebp - 0xc0]
mov dword [eax], 1
mov ecx, dword [0x4ca5d4]
mov eax, dword [0x4ca5d0]
mov edx, ecx
sub edx, 0x11094832
sub edx, 1
add edx, 0x11094832
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, 0x5b0619b9
mov ecx, 0x28280762
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0xc8], eax
jmp 0x480ee8
mov eax, dword [0x4ca5d4]
mov ecx, dword [0x4ca5d0]
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, 0x4c0b632
mov ecx, 0x1a41a80f
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0xc8], eax
jmp 0x480ee8
mov eax, dword [0x4ca5d4]
mov ecx, dword [0x4ca5d0]
mov edx, eax
sub edx, 0xc42c1411
sub edx, 1
add edx, 0xc42c1411
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, 0xc7329340
mov ecx, 0xbe0eb92a
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0xc8], eax
jmp 0x480ee8
mov eax, dword [0x4ca5d4]
mov ecx, dword [0x4ca5d0]
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, 0x11c87fb9
mov ecx, 0x1ada46e8
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0xc8], eax
jmp 0x480ee8
mov eax, dword [ebp - 0x14]
mov dword [ebp - 0xd8], eax
mov ecx, dword [ebp - 0x10]
xor ecx, ebp
call fcn.004b0a30
mov eax, dword [ebp - 0xd8]
lea esp, [ebp - 0xc]
pop esi
pop edi
pop ebx
pop ebp
ret
mov eax, dword [ebp - 0xbc]
add eax, 8
sub esp, 4
mov dword [esp], eax
call fcn.0046c660
add esp, 4
mov eax, dword [ebp - 0xa0]
mov eax, dword [eax]
sub esp, 4
mov dword [esp], eax
call dword [sym.imp.KERNEL32.dll_CloseHandle]
mov eax, dword [ebp - 0x9c]
mov eax, dword [eax]
mov ecx, dword [ebp - 0x98]
mov ecx, dword [ecx]
sub esp, 8
mov dword [esp], ecx
mov dword [esp + 4], eax
call fcn.0046c050
add esp, 8
mov eax, dword [ebp - 0xbc]
add eax, 0x10c
sub esp, 4
mov dword [esp], eax
call fcn.0046e770
add esp, 4
mov eax, dword [ebp - 0xbc]
add eax, 0x10c
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 - 0x90]
mov dword [eax], ecx
mov eax, dword [ebp - 0x90]
mov eax, dword [0x4ca5d4]
mov ecx, dword [0x4ca5d0]
mov edx, eax
add edx, 0x271bc0a8
sub edx, 1
sub edx, 0x271bc0a8
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, 0x62cf45d7
mov ecx, 0x502294b7
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0xc8], eax
jmp 0x480ee8
mov eax, dword [ebp - 0xa8]
mov ecx, dword [eax]
mov eax, dword [ebp - 0xac]
mov cl, byte [eax + ecx]
mov eax, dword [ebp - 0xa4]
mov byte [eax], cl
mov eax, dword [ebp - 0xa4]
movzx eax, byte [eax]
sub eax, 0xa4d45347
sub eax, 0x8f
add eax, 0xa4d45347
mov cl, al
mov eax, dword [ebp - 0xa4]
mov byte [eax], cl
mov eax, dword [ebp - 0xa4]
mov eax, dword [0x4ca5d4]
mov ecx, dword [0x4ca5d0]
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, 0xe5bd7b70
mov ecx, 0x687c945b
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0xc8], eax
jmp 0x480ee8
mov dword [ebp - 0xc8], 0x38b884d8
jmp 0x480ee8
mov eax, dword [ebp - 0x90]
mov ecx, dword [0x4ca5d4]
mov eax, dword [0x4ca5d0]
mov edx, ecx
add edx, 0xf5486e
sub edx, 1
sub edx, 0xf5486e
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, 0xece84245
mov ecx, 0x5fc84b60
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0xc8], eax
jmp 0x480ee8
mov dword [ebp - 0xc8], 0xa2d43c21
jmp 0x480ee8
mov ecx, dword [0x4ca5d4]
mov eax, dword [0x4ca5d0]
mov edx, ecx
sub edx, 0x4c1cca1d
sub edx, 1
add edx, 0x4c1cca1d
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, 0xc6e10ade
mov ecx, 0xdcf4dbee
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0xc8], eax
jmp 0x480ee8
mov eax, dword [ebp - 0xc0]
mov dword [ebp - 0xc8], 0x336a958f
jmp 0x480ee8
mov dword [ebp - 0xc8], 0x5ff1cb0c
jmp 0x480ee8
mov eax, dword [ebp - 0x20]
sub esp, 4
mov dword [esp], eax
call fcn.004b0a47
add esp, 4
mov dword [ebp - 0xc8], 0x70c822bc
jmp 0x480ee8
mov dword [ebp - 0xc8], 0x8a637f8b
jmp 0x480ee8
mov dword [ebp - 0xc8], 0xee705322
jmp 0x480ee8
mov dword [ebp - 0xc8], 0x69527e68
jmp 0x480ee8
mov dword [ebp - 0xc8], 0x24590db7
jmp 0x480ee8
mov dword [ebp - 0xc8], 0xe77f96a2
jmp 0x480ee8
mov eax, dword [ebp - 0x54]
sub esp, 4
mov dword [esp], eax
call fcn.004b0a47
add esp, 4
mov dword [ebp - 0xc8], 0x7f10dc09
jmp 0x480ee8
mov dword [ebp - 0xc8], 0xb8480a3d
jmp 0x480ee8
mov dword [ebp - 0xc8], 0xde1a3247
jmp 0x480ee8
mov dword [ebp - 0xc8], 0xa29b58b
jmp 0x480ee8
mov dword [ebp - 0xc8], 0x57b7ae38
jmp 0x480ee8
mov dword [ebp - 0xc8], 0xec7e48e3
jmp 0x480ee8
mov eax, dword [ebp - 0x64]
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 - 0xa0]
mov dword [eax], ecx
mov eax, dword [ebp - 0xa0]
mov dword [ebp - 0xc8], 0xbf3ad4a3
jmp 0x480ee8
jmp 0x473917