Function at 0x4ecc08
Capabilities:
Get storage device properties

Disassembly:
push ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x99e0a2
mov eax, dword fs:[0]
push eax
mov dword fs:[0], esp
sub esp, 0x44c
push ebx
push esi
push edi
mov dword [ebp - 0x408], ecx
and dword [ebp - 0x34], 0
push 0x9a2a3c
mov ecx, dword [ebp + 0xc]
call fcn.00472974
mov byte [ebp - 0x18c], 0
push 8
pop ecx
xor eax, eax
lea edi, [ebp - 0x18b]
rep stosd dword es:[edi], eax
stosb byte es:[edi], al
mov byte [ebp - 0x164], 0
push 0xff
push 0
lea eax, [ebp - 0x163]
push eax
call fcn.00936130
add esp, 0xc
push 0xa
lea eax, [ebp - 0x18c]
push eax
push dword [ebp + 8]
call fcn.009381da
add esp, 0xc
lea eax, [ebp - 0x164]
dec eax
mov dword [ebp - 0x40c], eax
mov eax, dword [ebp - 0x40c]
mov al, byte [eax + 1]
mov byte [ebp - 0x40d], al
inc dword [ebp - 0x40c]
cmp byte [ebp - 0x40d], 0
jne 0x4ecc93
mov edi, dword [ebp - 0x40c]
mov esi, 0x9a4fd0
movsw word es:[edi], word [esi]
movsb byte es:[edi], byte [esi]
and dword [ebp - 0x60], 0
and dword [ebp - 0x4c], 0
fldz
fstp qword [ebp - 0x44]
fldz
fstp qword [ebp - 0x3c]
fldz
fstp qword [ebp - 0x3c]
jmp 0x4ecce4
fld qword [ebp - 0x3c]
fadd qword [0x9a1970]
fstp qword [ebp - 0x3c]
fld qword [0x9a4fc8]
fcomp qword [ebp - 0x3c]
fnstsw ax
test ah, 0x41
jne 0x4ecd43
fld qword [0x9a4fc0]
fmul qword [ebp - 0x3c]
fmul qword [ebp - 0x3c]
fld qword [ebp - 0x3c]
fmul qword [ebp - 0x3c]
fsubp st(1)
fld qword [0x9a2258]
fmul qword [ebp - 0x3c]
fmul qword [ebp - 0x3c]
fadd qword [0x9a4fb8]
fdivp st(1)
fadd qword [ebp - 0x44]
fstp qword [ebp - 0x44]
fld qword [0x9a4fb0]
fcomp qword [ebp - 0x44]
fnstsw ax
test ah, 5
jp 0x4ecd41
fld qword [0x9a4fa8]
fmul qword [ebp - 0x3c]
fsubr qword [ebp - 0x44]
fstp qword [ebp - 0x44]
jmp 0x4eccd8
fldz
fcomp qword [ebp - 0x44]
fnstsw ax
test ah, 0x41
jne 0x4ecd91
movsb byte es:[edi], byte [esi]
inc esp
movsd dword es:[edi], dword [esi]
dec ebx
mov al, 0x49
scasd eax, dword es:[edi]
inc ebx
lodsb al, byte [esi]
inc esp
test al, 0x46
lodsd eax, dword [esi]
inc edi
test eax, 0xa446a449
dec ebx
mov cl, 0x48
lodsb al, byte [esi]
inc ebx
movsd dword es:[edi], dword [esi]
dec ebp
cmpsb byte [esi], byte es:[edi]
dec ebx
stosb byte es:[edi], al
inc edi
mov cl, 0x4e
aaa
cmp eax, 0x3a6c7524
xor dword [esi + 0x22], ebx
dec edi
push eax
pop esi
and cl, byte [edi + 0x50]
pop eax
imul eax, dword [esi + 0x69], 0x6b605266
inc esi
inc eax
inc esp
sub esi, dword [ecx]
daa
cmp al, byte [ebp + 0x6e]
jge 0x4ecd76
pop ds
sbb al, 0
add bh, al
inc ebp
mov al, byte [0x4ecd4f]
mov dword [ebp - 0x60], 0x4ecd4f
mov dword [ebp - 0x4c], 0x4ecd6f
mov eax, dword [ebp - 0x60]
mov dword [ebp - 0x198], eax
mov eax, dword [ebp - 0x4c]
mov dword [ebp - 0x194], eax
mov byte [ebp - 0x2b5], 0x21
and dword [ebp - 0x2ac], 0
jmp 0x4ecdce
mov eax, dword [ebp - 0x2ac]
inc eax
mov dword [ebp - 0x2ac], eax
cmp dword [ebp - 0x2ac], 0x100
jae 0x4ecdef
mov eax, dword [ebp - 0x2ac]
mov cl, byte [ebp - 0x2ac]
mov byte [ebp + eax - 0x2a4], cl
jmp 0x4ecdc1
and dword [ebp - 0x19c], 0
mov byte [ebp - 0x2b6], 0
mov dword [ebp - 0x2ac], 0xff
jmp 0x4ece16
mov eax, dword [ebp - 0x2ac]
dec eax
mov dword [ebp - 0x2ac], eax
cmp dword [ebp - 0x2ac], 0
jbe 0x4ed084
and dword [ebp - 0x2bc], 0
mov dword [ebp - 0x2c4], 1
mov eax, dword [ebp - 0x2c4]
cmp eax, dword [ebp - 0x2ac]
jae 0x4ece54
mov eax, dword [ebp - 0x2c4]
lea eax, [eax + eax + 1]
mov dword [ebp - 0x2c4], eax
jmp 0x4ece34
mov eax, dword [ebp - 0x19c]
mov dword [ebp - 0x414], eax
mov eax, dword [ebp - 0x414]
mov dword [ebp - 0x418], eax
cmp dword [ebp - 0x418], 0
je 0x4ece99
sub dword [ebp - 0x418], 1
je 0x4ecec2
sub dword [ebp - 0x418], 1
je 0x4eceeb
sub dword [ebp - 0x418], 1
je 0x4ecf14
jmp 0x4ecf3d
movzx eax, byte [ebp - 0x2b6]
movzx ebx, byte [ebp + eax - 0x2a4]
fld qword [ebp - 0x44]
call fcn.00937726
and eax, 0xff
add ebx, eax
mov byte [ebp - 0x2b6], bl
jmp 0x4ecf64
movzx eax, byte [ebp - 0x2b6]
movzx ebx, byte [ebp + eax - 0x2a4]
fld qword [ebp - 0x44]
call fcn.00937726
shr eax, 8
and eax, 0xff
add ebx, eax
mov byte [ebp - 0x2b6], bl
jmp 0x4ecf64
movzx eax, byte [ebp - 0x2b6]
movzx ebx, byte [ebp + eax - 0x2a4]
fld qword [ebp - 0x44]
call fcn.00937726
shr eax, 0x10
and eax, 0xff
add ebx, eax
mov byte [ebp - 0x2b6], bl
jmp 0x4ecf64
movzx eax, byte [ebp - 0x2b6]
movzx ebx, byte [ebp + eax - 0x2a4]
fld qword [ebp - 0x44]
call fcn.00937726
shr eax, 0x18
and eax, 0xff
add ebx, eax
mov byte [ebp - 0x2b6], bl
jmp 0x4ecf64
movzx eax, byte [ebp - 0x2b6]
movzx eax, byte [ebp + eax - 0x2a4]
mov ecx, dword [ebp - 0x194]
add ecx, dword [ebp - 0x19c]
movzx ecx, byte [ecx - 4]
add eax, ecx
mov byte [ebp - 0x2b6], al
mov eax, dword [ebp - 0x19c]
inc eax
mov dword [ebp - 0x19c], eax
movzx eax, byte [ebp - 0x2b5]
cmp dword [ebp - 0x19c], eax
jb 0x4ecf9d
and dword [ebp - 0x19c], 0
movzx eax, byte [ebp - 0x2b5]
movzx ecx, byte [ebp - 0x2b6]
add ecx, eax
mov byte [ebp - 0x2b6], cl
movzx eax, byte [ebp - 0x2b6]
and eax, dword [ebp - 0x2c4]
mov dword [ebp - 0x2c0], eax
mov eax, dword [ebp - 0x2bc]
inc eax
mov dword [ebp - 0x2bc], eax
cmp dword [ebp - 0x2bc], 0xb
jbe 0x4ecfda
mov eax, dword [ebp - 0x2c0]
xor edx, edx
div dword [ebp - 0x2ac]
mov dword [ebp - 0x2c0], edx
mov eax, dword [ebp - 0x2c0]
cmp eax, dword [ebp - 0x2ac]
ja 0x4ece54
mov eax, dword [ebp - 0x2ac]
cmp eax, dword [ebp - 0x2c0]
je 0x4ed07f
mov eax, dword [ebp - 0x2c0]
movzx eax, byte [ebp + eax - 0x2a4]
mov ecx, dword [ebp - 0x2ac]
movzx ecx, byte [ebp + ecx - 0x2a4]
xor ecx, eax
mov eax, dword [ebp - 0x2ac]
mov byte [ebp + eax - 0x2a4], cl
mov eax, dword [ebp - 0x2ac]
movzx eax, byte [ebp + eax - 0x2a4]
mov ecx, dword [ebp - 0x2c0]
movzx ecx, byte [ebp + ecx - 0x2a4]
xor ecx, eax
mov eax, dword [ebp - 0x2c0]
mov byte [ebp + eax - 0x2a4], cl
mov eax, dword [ebp - 0x2c0]
movzx eax, byte [ebp + eax - 0x2a4]
mov ecx, dword [ebp - 0x2ac]
movzx ecx, byte [ebp + ecx - 0x2a4]
xor ecx, eax
mov eax, dword [ebp - 0x2ac]
mov byte [ebp + eax - 0x2a4], cl
jmp 0x4ece09
mov al, byte [ebp - 0x2a3]
mov byte [ebp - 0x2b7], al
mov al, byte [ebp - 0x2a1]
mov byte [ebp - 0x19d], al
mov al, byte [ebp - 0x29f]
mov byte [ebp - 0x2a5], al
mov al, byte [ebp - 0x29d]
mov byte [ebp - 0x2ad], al
movzx eax, byte [ebp - 0x2b6]
mov al, byte [ebp + eax - 0x2a4]
mov byte [ebp - 0x18d], al
mov dword [ebp - 0x2b4], 0x20
cmp dword [ebp - 0x2b4], 2
jle 0x4ee984
mov eax, dword [ebp - 0x2b4]
and eax, 1
jne 0x4ee984
and dword [ebp - 0x370], 0
and dword [ebp - 0x36c], 0
mov eax, dword [ebp - 0x36c]
inc eax
mov dword [ebp - 0x36c], eax
and dword [ebp - 0x2d8], 0
mov eax, dword [ebp - 0x370]
shl eax, 1
mov dword [ebp - 0x2d8], eax
and dword [ebp - 0x39c], 0
mov eax, dword [ebp - 0x198]
add eax, dword [ebp - 0x2d8]
movzx eax, byte [eax]
add eax, dword [ebp - 0x39c]
mov dword [ebp - 0x39c], eax
and dword [ebp - 0x318], 0
mov eax, dword [ebp - 0x318]
add eax, 0xa4
mov dword [ebp - 0x318], eax
and dword [ebp - 0x350], 0
mov eax, dword [ebp - 0x370]
lea eax, [eax + eax + 1]
mov dword [ebp - 0x350], eax
and dword [ebp - 0x3c4], 0
mov eax, dword [ebp - 0x198]
add eax, dword [ebp - 0x350]
movzx eax, byte [eax]
add eax, dword [ebp - 0x3c4]
mov dword [ebp - 0x3c4], eax
and dword [ebp - 0x398], 0
mov eax, dword [ebp - 0x398]
add eax, 0x40
mov dword [ebp - 0x398], eax
and dword [ebp - 0x3c0], 0
fld qword [0x9a4fa0]
fstp qword [ebp - 0x334]
fld qword [0x9a4f98]
fstp qword [ebp - 0x364]
fld qword [0x9a4f90]
fstp qword [ebp - 0x34c]
fld qword [0x9a4f88]
fstp qword [ebp - 0x37c]
fld qword [ebp - 0x34c]
fmul qword [ebp - 0x37c]
fstp qword [ebp - 0x34c]
fld qword [ebp - 0x364]
fmul qword [ebp - 0x37c]
fstp qword [ebp - 0x364]
fld qword [ebp - 0x34c]
fsub qword [ebp - 0x37c]
fstp qword [ebp - 0x34c]
fld qword [ebp - 0x34c]
fmul qword [ebp - 0x37c]
fstp qword [ebp - 0x34c]
fld qword [ebp - 0x34c]
fcomp qword [ebp - 0x37c]
fnstsw ax
test ah, 5
jp 0x4ed283
fld qword [ebp - 0x334]
fadd qword [ebp - 0x364]
fstp qword [ebp - 0x334]
fld qword [ebp - 0x334]
fadd qword [ebp - 0x364]
fstp qword [ebp - 0x334]
fld qword [ebp - 0x364]
fsub qword [ebp - 0x34c]
fstp qword [ebp - 0x364]
fld qword [ebp - 0x364]
fadd qword [ebp - 0x34c]
fstp qword [ebp - 0x364]
jmp 0x4ed2e3
fld qword [ebp - 0x334]
fmul qword [ebp - 0x364]
fstp qword [ebp - 0x334]
fld qword [ebp - 0x364]
fsub qword [ebp - 0x34c]
fstp qword [ebp - 0x364]
fld qword [ebp - 0x37c]
fadd qword [ebp - 0x334]
fstp qword [ebp - 0x37c]
fld qword [ebp - 0x34c]
fmul qword [ebp - 0x37c]
fstp qword [ebp - 0x34c]
mov eax, dword [ebp - 0x39c]
sub eax, dword [ebp - 0x318]
add eax, dword [ebp - 0x3c0]
mov dword [ebp - 0x3c0], eax
and dword [ebp - 0x2e8], 0
mov eax, dword [ebp - 0x3c4]
sub eax, dword [ebp - 0x398]
add eax, dword [ebp - 0x2e8]
mov dword [ebp - 0x2e8], eax
and dword [ebp - 0x3bc], 0
mov eax, dword [ebp - 0x3c0]
shl eax, 4
mov dword [ebp - 0x3bc], eax
and dword [ebp - 0x394], 0
mov eax, dword [ebp - 0x2e8]
mov dword [ebp - 0x394], eax
and dword [ebp - 0x368], 0
mov eax, dword [ebp - 0x3bc]
or eax, dword [ebp - 0x394]
mov dword [ebp - 0x368], eax
mov byte [ebp - 0x325], 0
mov al, byte [ebp - 0x368]
mov byte [ebp - 0x325], al
mov byte [ebp - 0x3b5], 0
movzx eax, byte [ebp - 0x18d]
mov al, byte [ebp + eax - 0x2a4]
mov byte [ebp - 0x3b5], al
movzx eax, byte [ebp - 0x2b7]
movzx eax, byte [ebp + eax - 0x2a4]
movzx ecx, byte [ebp - 0x19d]
add ecx, eax
mov byte [ebp - 0x19d], cl
mov al, byte [ebp - 0x2b7]
add al, 1
mov byte [ebp - 0x2b7], al
movzx eax, byte [ebp - 0x19d]
movzx ecx, byte [ebp - 0x18d]
mov al, byte [ebp + eax - 0x2a4]
mov byte [ebp + ecx - 0x2a4], al
movzx eax, byte [ebp - 0x2ad]
movzx ecx, byte [ebp - 0x19d]
mov al, byte [ebp + eax - 0x2a4]
mov byte [ebp + ecx - 0x2a4], al
fld qword [0x9a4f80]
fstp qword [ebp - 0x30c]
fld qword [0x9a4f78]
fstp qword [ebp - 0x324]
fld qword [0x9a4f70]
fstp qword [ebp - 0x384]
fld qword [0x9a4f68]
fstp qword [ebp - 0x3b4]
fld qword [0x9a15c8]
fstp qword [ebp - 0x344]
fld qword [0x9a4f60]
fstp qword [ebp - 0x2fc]
fld qword [0x9a4f58]
fstp qword [ebp - 0x2d4]
fld qword [ebp - 0x2fc]
fmul qword [ebp - 0x2d4]
fstp qword [ebp - 0x2fc]
fld qword [ebp - 0x344]
fmul qword [ebp - 0x2d4]
fstp qword [ebp - 0x344]
fld qword [ebp - 0x344]
fmul qword [ebp - 0x2d4]
fstp qword [ebp - 0x344]
fld qword [ebp - 0x344]
fsub qword [ebp - 0x2d4]
fstp qword [ebp - 0x344]
fld qword [ebp - 0x384]
fmul qword [ebp - 0x2d4]
fstp qword [ebp - 0x384]
fld qword [ebp - 0x2fc]
fmul qword [ebp - 0x2d4]
fstp qword [ebp - 0x2fc]
fld qword [ebp - 0x2fc]
fadd qword [ebp - 0x2d4]
fstp qword [ebp - 0x2fc]
fld qword [ebp - 0x344]
fcomp qword [ebp - 0x2d4]
fnstsw ax
test ah, 5
jp 0x4ed6d5
fld qword [ebp - 0x2d4]
fdiv qword [ebp - 0x324]
fstp qword [ebp - 0x2d4]
fld qword [ebp - 0x3b4]
fdiv qword [ebp - 0x2fc]
fstp qword [ebp - 0x3b4]
fld qword [ebp - 0x2fc]
fdiv qword [ebp - 0x30c]
fstp qword [ebp - 0x2fc]
fld qword [ebp - 0x3b4]
fdiv qword [ebp - 0x2fc]
fstp qword [ebp - 0x3b4]
fld qword [ebp - 0x384]
fdiv qword [ebp - 0x344]
fstp qword [ebp - 0x384]
fld qword [ebp - 0x2d4]
fdiv qword [ebp - 0x324]
fstp qword [ebp - 0x2d4]
fld qword [ebp - 0x384]
fdiv qword [ebp - 0x344]
fstp qword [ebp - 0x384]
fld qword [ebp - 0x2fc]
fsub qword [ebp - 0x30c]
fstp qword [ebp - 0x2fc]
fld qword [ebp - 0x324]
fmul qword [ebp - 0x3b4]
fstp qword [ebp - 0x324]
fld qword [ebp - 0x2fc]
fdiv qword [ebp - 0x30c]
fstp qword [ebp - 0x2fc]
fld qword [ebp - 0x3b4]
fdiv qword [ebp - 0x2fc]
fstp qword [ebp - 0x3b4]
fld qword [ebp - 0x384]
fsub qword [ebp - 0x344]
fstp qword [ebp - 0x384]
fld qword [ebp - 0x384]
fdiv qword [ebp - 0x344]
fstp qword [ebp - 0x384]
fld qword [ebp - 0x2d4]
fadd qword [ebp - 0x324]
fstp qword [ebp - 0x2d4]
fld qword [ebp - 0x384]
fcomp qword [ebp - 0x30c]
fnstsw ax
test ah, 0x41
jne 0x4ed652
fld qword [ebp - 0x2fc]
fdiv qword [ebp - 0x30c]
fstp qword [ebp - 0x2fc]
fld qword [ebp - 0x3b4]
fsub qword [ebp - 0x2fc]
fstp qword [ebp - 0x3b4]
fld qword [ebp - 0x2d4]
fmul qword [ebp - 0x324]
fstp qword [ebp - 0x2d4]
fld qword [ebp - 0x2fc]
fmul qword [ebp - 0x30c]
fstp qword [ebp - 0x2fc]
fld qword [ebp - 0x30c]
fsub qword [ebp - 0x384]
fstp qword [ebp - 0x30c]
fld qword [ebp - 0x2fc]
fdiv qword [ebp - 0x30c]
fstp qword [ebp - 0x2fc]
fld qword [ebp - 0x30c]
fmul qword [ebp - 0x384]
fstp qword [ebp - 0x30c]
jmp 0x4ed6d0
fld qword [ebp - 0x324]
fdiv qword [ebp - 0x384]
fstp qword [ebp - 0x324]
fld qword [ebp - 0x384]
fdiv qword [ebp - 0x3b4]
fstp qword [ebp - 0x384]
fld qword [ebp - 0x2d4]
fsub qword [ebp - 0x30c]
fstp qword [ebp - 0x2d4]
fld qword [ebp - 0x384]
fsub qword [ebp - 0x3b4]
fstp qword [ebp - 0x384]
fld qword [ebp - 0x344]
fmul qword [ebp - 0x2fc]
fstp qword [ebp - 0x344]
fld qword [ebp - 0x3b4]
fmul qword [ebp - 0x344]
fstp qword [ebp - 0x3b4]
fld qword [ebp - 0x2d4]
fmul qword [ebp - 0x30c]
fstp qword [ebp - 0x2d4]
jmp 0x4ed76f
fld qword [ebp - 0x324]
fadd qword [ebp - 0x384]
fstp qword [ebp - 0x324]
fld qword [ebp - 0x324]
fadd qword [ebp - 0x384]
fstp qword [ebp - 0x324]
fld qword [ebp - 0x30c]
fadd qword [ebp - 0x324]
fstp qword [ebp - 0x30c]
fld qword [ebp - 0x30c]
fadd qword [ebp - 0x324]
fstp qword [ebp - 0x30c]
fld qword [ebp - 0x384]
fsub qword [ebp - 0x3b4]
fstp qword [ebp - 0x384]
fld qword [ebp - 0x2fc]
fadd qword [ebp - 0x2d4]
fstp qword [ebp - 0x2fc]
fld qword [ebp - 0x2d4]
fmul qword [ebp - 0x30c]
fstp qword [ebp - 0x2d4]
movzx eax, byte [ebp - 0x2b7]
movzx ecx, byte [ebp - 0x2ad]
mov al, byte [ebp + eax - 0x2a4]
mov byte [ebp + ecx - 0x2a4], al
movzx eax, byte [ebp - 0x2b7]
mov cl, byte [ebp - 0x3b5]
mov byte [ebp + eax - 0x2a4], cl
movzx eax, byte [ebp - 0x3b5]
movzx eax, byte [ebp + eax - 0x2a4]
movzx ecx, byte [ebp - 0x2a5]
add ecx, eax
mov byte [ebp - 0x2a5], cl
movzx eax, byte [ebp - 0x325]
movzx ecx, byte [ebp - 0x19d]
movzx ecx, byte [ebp + ecx - 0x2a4]
movzx edx, byte [ebp - 0x2b7]
movzx edx, byte [ebp + edx - 0x2a4]
add ecx, edx
and ecx, 0xff
movzx ecx, byte [ebp + ecx - 0x2a4]
xor eax, ecx
movzx ecx, byte [ebp - 0x2ad]
movzx ecx, byte [ebp + ecx - 0x2a4]
movzx edx, byte [ebp - 0x18d]
movzx edx, byte [ebp + edx - 0x2a4]
add ecx, edx
movzx edx, byte [ebp - 0x2a5]
movzx edx, byte [ebp + edx - 0x2a4]
add ecx, edx
and ecx, 0xff
movzx ecx, byte [ebp + ecx - 0x2a4]
movzx ecx, byte [ebp + ecx - 0x2a4]
xor eax, ecx
mov byte [ebp - 0x2ad], al
mov al, byte [ebp - 0x325]
mov byte [ebp - 0x18d], al
mov al, byte [ebp - 0x2ad]
mov byte [ebp - 0x38d], al
cmp dword [ebp - 0x370], 0
jle 0x4ed858
mov eax, dword [ebp - 0x370]
mov cl, byte [ebp - 0x38d]
mov byte [ebp + eax - 0x31], cl
mov eax, dword [ebp - 0x36c]
add eax, 5
mov dword [ebp - 0x36c], eax
mov eax, dword [ebp - 0x370]
inc eax
mov dword [ebp - 0x3c8], eax
jmp 0x4ed883
mov eax, dword [ebp - 0x3c8]
inc eax
mov dword [ebp - 0x3c8], eax
mov eax, dword [ebp - 0x3c8]
cmp eax, dword [ebp - 0x36c]
jge 0x4edadd
mov eax, dword [ebp - 0x370]
inc eax
mov dword [ebp - 0x370], eax
mov eax, dword [ebp - 0x370]
shl eax, 1
mov dword [ebp - 0x2d8], eax
mov eax, dword [ebp - 0x198]
add eax, dword [ebp - 0x2d8]
movzx eax, byte [eax]
mov dword [ebp - 0x39c], eax
mov dword [ebp - 0x318], 0xa4
mov eax, dword [ebp - 0x370]
lea eax, [eax + eax + 1]
mov dword [ebp - 0x350], eax
mov eax, dword [ebp - 0x198]
add eax, dword [ebp - 0x350]
movzx eax, byte [eax]
mov dword [ebp - 0x3c4], eax
mov dword [ebp - 0x398], 0x40
mov eax, dword [ebp - 0x39c]
sub eax, dword [ebp - 0x318]
mov dword [ebp - 0x3c0], eax
mov eax, dword [ebp - 0x3c4]
sub eax, dword [ebp - 0x398]
mov dword [ebp - 0x2e8], eax
mov eax, dword [ebp - 0x3c0]
shl eax, 4
mov dword [ebp - 0x3bc], eax
mov eax, dword [ebp - 0x2e8]
mov dword [ebp - 0x394], eax
mov eax, dword [ebp - 0x3bc]
or eax, dword [ebp - 0x394]
mov dword [ebp - 0x368], eax
mov al, byte [ebp - 0x368]
mov byte [ebp - 0x325], al
movzx eax, byte [ebp - 0x18d]
mov al, byte [ebp + eax - 0x2a4]
mov byte [ebp - 0x3b5], al
movzx eax, byte [ebp - 0x2b7]
movzx eax, byte [ebp + eax - 0x2a4]
movzx ecx, byte [ebp - 0x19d]
add ecx, eax
mov byte [ebp - 0x19d], cl
mov al, byte [ebp - 0x2b7]
add al, 1
mov byte [ebp - 0x2b7], al
movzx eax, byte [ebp - 0x19d]
movzx ecx, byte [ebp - 0x18d]
mov al, byte [ebp + eax - 0x2a4]
mov byte [ebp + ecx - 0x2a4], al
movzx eax, byte [ebp - 0x2ad]
movzx ecx, byte [ebp - 0x19d]
mov al, byte [ebp + eax - 0x2a4]
mov byte [ebp + ecx - 0x2a4], al
movzx eax, byte [ebp - 0x2b7]
movzx ecx, byte [ebp - 0x2ad]
mov al, byte [ebp + eax - 0x2a4]
mov byte [ebp + ecx - 0x2a4], al
movzx eax, byte [ebp - 0x2b7]
mov cl, byte [ebp - 0x3b5]
mov byte [ebp + eax - 0x2a4], cl
movzx eax, byte [ebp - 0x3b5]
movzx eax, byte [ebp + eax - 0x2a4]
movzx ecx, byte [ebp - 0x2a5]
add ecx, eax
mov byte [ebp - 0x2a5], cl
movzx eax, byte [ebp - 0x325]
movzx ecx, byte [ebp - 0x19d]
movzx ecx, byte [ebp + ecx - 0x2a4]
movzx edx, byte [ebp - 0x2b7]
movzx edx, byte [ebp + edx - 0x2a4]
add ecx, edx
and ecx, 0xff
movzx ecx, byte [ebp + ecx - 0x2a4]
xor eax, ecx
movzx ecx, byte [ebp - 0x2ad]
movzx ecx, byte [ebp + ecx - 0x2a4]
movzx edx, byte [ebp - 0x18d]
movzx edx, byte [ebp + edx - 0x2a4]
add ecx, edx
movzx edx, byte [ebp - 0x2a5]
movzx edx, byte [ebp + edx - 0x2a4]
add ecx, edx
and ecx, 0xff
movzx ecx, byte [ebp + ecx - 0x2a4]
movzx ecx, byte [ebp + ecx - 0x2a4]
xor eax, ecx
mov byte [ebp - 0x2ad], al
mov al, byte [ebp - 0x325]
mov byte [ebp - 0x18d], al
mov al, byte [ebp - 0x2ad]
mov byte [ebp - 0x38d], al
cmp dword [ebp - 0x370], 0
jle 0x4edad8
mov eax, dword [ebp - 0x370]
mov cl, byte [ebp - 0x38d]
mov byte [ebp + eax - 0x31], cl
jmp 0x4ed876
mov eax, dword [ebp - 0x36c]
inc eax
mov dword [ebp - 0x36c], eax
mov eax, dword [ebp - 0x370]
inc eax
mov dword [ebp - 0x370], eax
mov eax, dword [ebp - 0x36c]
inc eax
mov dword [ebp - 0x36c], eax
mov eax, dword [ebp - 0x370]
shl eax, 1
mov dword [ebp - 0x2d8], eax
mov eax, dword [ebp - 0x198]
add eax, dword [ebp - 0x2d8]
movzx eax, byte [eax]
mov dword [ebp - 0x39c], eax
mov dword [ebp - 0x318], 0xa4
mov eax, dword [ebp - 0x370]
lea eax, [eax + eax + 1]
mov dword [ebp - 0x350], eax
mov eax, dword [ebp - 0x198]
add eax, dword [ebp - 0x350]
movzx eax, byte [eax]
mov dword [ebp - 0x3c4], eax
mov dword [ebp - 0x398], 0x40
mov eax, dword [ebp - 0x39c]
sub eax, dword [ebp - 0x318]
mov dword [ebp - 0x3c0], eax
mov eax, dword [ebp - 0x3c4]
sub eax, dword [ebp - 0x398]
mov dword [ebp - 0x2e8], eax
mov eax, dword [ebp - 0x3c0]
shl eax, 4
mov dword [ebp - 0x3bc], eax
mov eax, dword [ebp - 0x2e8]
mov dword [ebp - 0x394], eax
mov eax, dword [ebp - 0x3bc]
or eax, dword [ebp - 0x394]
mov dword [ebp - 0x368], eax
mov al, byte [ebp - 0x368]
mov byte [ebp - 0x325], al
movzx eax, byte [ebp - 0x18d]
mov al, byte [ebp + eax - 0x2a4]
mov byte [ebp - 0x3b5], al
movzx eax, byte [ebp - 0x2b7]
movzx eax, byte [ebp + eax - 0x2a4]
movzx ecx, byte [ebp - 0x19d]
add ecx, eax
mov byte [ebp - 0x19d], cl
mov al, byte [ebp - 0x2b7]
add al, 1
mov byte [ebp - 0x2b7], al
movzx eax, byte [ebp - 0x19d]
movzx ecx, byte [ebp - 0x18d]
mov al, byte [ebp + eax - 0x2a4]
mov byte [ebp + ecx - 0x2a4], al
movzx eax, byte [ebp - 0x2ad]
movzx ecx, byte [ebp - 0x19d]
mov al, byte [ebp + eax - 0x2a4]
mov byte [ebp + ecx - 0x2a4], al
movzx eax, byte [ebp - 0x2b7]
movzx ecx, byte [ebp - 0x2ad]
mov al, byte [ebp + eax - 0x2a4]
mov byte [ebp + ecx - 0x2a4], al
movzx eax, byte [ebp - 0x2b7]
mov cl, byte [ebp - 0x3b5]
mov byte [ebp + eax - 0x2a4], cl
movzx eax, byte [ebp - 0x3b5]
movzx eax, byte [ebp + eax - 0x2a4]
movzx ecx, byte [ebp - 0x2a5]
add ecx, eax
mov byte [ebp - 0x2a5], cl
movzx eax, byte [ebp - 0x325]
movzx ecx, byte [ebp - 0x19d]
movzx ecx, byte [ebp + ecx - 0x2a4]
movzx edx, byte [ebp - 0x2b7]
movzx edx, byte [ebp + edx - 0x2a4]
add ecx, edx
and ecx, 0xff
movzx ecx, byte [ebp + ecx - 0x2a4]
xor eax, ecx
movzx ecx, byte [ebp - 0x2ad]
movzx ecx, byte [ebp + ecx - 0x2a4]
movzx edx, byte [ebp - 0x18d]
movzx edx, byte [ebp + edx - 0x2a4]
add ecx, edx
movzx edx, byte [ebp - 0x2a5]
movzx edx, byte [ebp + edx - 0x2a4]
add ecx, edx
and ecx, 0xff
movzx ecx, byte [ebp + ecx - 0x2a4]
movzx ecx, byte [ebp + ecx - 0x2a4]
xor eax, ecx
mov byte [ebp - 0x2ad], al
mov al, byte [ebp - 0x325]
mov byte [ebp - 0x18d], al
mov al, byte [ebp - 0x2ad]
mov byte [ebp - 0x38d], al
cmp dword [ebp - 0x370], 0
jle 0x4edd3a
mov eax, dword [ebp - 0x370]
mov cl, byte [ebp - 0x38d]
mov byte [ebp + eax - 0x31], cl
mov eax, dword [ebp - 0x36c]
add eax, 6
mov dword [ebp - 0x36c], eax
mov eax, dword [ebp - 0x370]
inc eax
mov dword [ebp - 0x3cc], eax
jmp 0x4edd65
mov eax, dword [ebp - 0x3cc]
inc eax
mov dword [ebp - 0x3cc], eax
mov eax, dword [ebp - 0x3cc]
cmp eax, dword [ebp - 0x36c]
jge 0x4edfbf
mov eax, dword [ebp - 0x370]
inc eax
mov dword [ebp - 0x370], eax
mov eax, dword [ebp - 0x370]
shl eax, 1
mov dword [ebp - 0x2d8], eax
mov eax, dword [ebp - 0x198]
add eax, dword [ebp - 0x2d8]
movzx eax, byte [eax]
mov dword [ebp - 0x39c], eax
mov dword [ebp - 0x318], 0xa4
mov eax, dword [ebp - 0x370]
lea eax, [eax + eax + 1]
mov dword [ebp - 0x350], eax
mov eax, dword [ebp - 0x198]
add eax, dword [ebp - 0x350]
movzx eax, byte [eax]
mov dword [ebp - 0x3c4], eax
mov dword [ebp - 0x398], 0x40
mov eax, dword [ebp - 0x39c]
sub eax, dword [ebp - 0x318]
mov dword [ebp - 0x3c0], eax
mov eax, dword [ebp - 0x3c4]
sub eax, dword [ebp - 0x398]
mov dword [ebp - 0x2e8], eax
mov eax, dword [ebp - 0x3c0]
shl eax, 4
mov dword [ebp - 0x3bc], eax
mov eax, dword [ebp - 0x2e8]
mov dword [ebp - 0x394], eax
mov eax, dword [ebp - 0x3bc]
or eax, dword [ebp - 0x394]
mov dword [ebp - 0x368], eax
mov al, byte [ebp - 0x368]
mov byte [ebp - 0x325], al
movzx eax, byte [ebp - 0x18d]
mov al, byte [ebp + eax - 0x2a4]
mov byte [ebp - 0x3b5], al
movzx eax, byte [ebp - 0x2b7]
movzx eax, byte [ebp + eax - 0x2a4]
movzx ecx, byte [ebp - 0x19d]
add ecx, eax
mov byte [ebp - 0x19d], cl
mov al, byte [ebp - 0x2b7]
add al, 1
mov byte [ebp - 0x2b7], al
movzx eax, byte [ebp - 0x19d]
movzx ecx, byte [ebp - 0x18d]
mov al, byte [ebp + eax - 0x2a4]
mov byte [ebp + ecx - 0x2a4], al
movzx eax, byte [ebp - 0x2ad]
movzx ecx, byte [ebp - 0x19d]
mov al, byte [ebp + eax - 0x2a4]
mov byte [ebp + ecx - 0x2a4], al
movzx eax, byte [ebp - 0x2b7]
movzx ecx, byte [ebp - 0x2ad]
mov al, byte [ebp + eax - 0x2a4]
mov byte [ebp + ecx - 0x2a4], al
movzx eax, byte [ebp - 0x2b7]
mov cl, byte [ebp - 0x3b5]
mov byte [ebp + eax - 0x2a4], cl
movzx eax, byte [ebp - 0x3b5]
movzx eax, byte [ebp + eax - 0x2a4]
movzx ecx, byte [ebp - 0x2a5]
add ecx, eax
mov byte [ebp - 0x2a5], cl
movzx eax, byte [ebp - 0x325]
movzx ecx, byte [ebp - 0x19d]
movzx ecx, byte [ebp + ecx - 0x2a4]
movzx edx, byte [ebp - 0x2b7]
movzx edx, byte [ebp + edx - 0x2a4]
add ecx, edx
and ecx, 0xff
movzx ecx, byte [ebp + ecx - 0x2a4]
xor eax, ecx
movzx ecx, byte [ebp - 0x2ad]
movzx ecx, byte [ebp + ecx - 0x2a4]
movzx edx, byte [ebp - 0x18d]
movzx edx, byte [ebp + edx - 0x2a4]
add ecx, edx
movzx edx, byte [ebp - 0x2a5]
movzx edx, byte [ebp + edx - 0x2a4]
add ecx, edx
and ecx, 0xff
movzx ecx, byte [ebp + ecx - 0x2a4]
movzx ecx, byte [ebp + ecx - 0x2a4]
xor eax, ecx
mov byte [ebp - 0x2ad], al
mov al, byte [ebp - 0x325]
mov byte [ebp - 0x18d], al
mov al, byte [ebp - 0x2ad]
mov byte [ebp - 0x38d], al
cmp dword [ebp - 0x370], 0
jle 0x4edfba
mov eax, dword [ebp - 0x370]
mov cl, byte [ebp - 0x38d]
mov byte [ebp + eax - 0x31], cl
jmp 0x4edd58
mov eax, dword [ebp - 0x36c]
inc eax
mov dword [ebp - 0x36c], eax
mov eax, dword [ebp - 0x370]
inc eax
mov dword [ebp - 0x370], eax
mov eax, dword [ebp - 0x36c]
inc eax
mov dword [ebp - 0x36c], eax
mov eax, dword [ebp - 0x370]
shl eax, 1
mov dword [ebp - 0x2d8], eax
mov eax, dword [ebp - 0x198]
add eax, dword [ebp - 0x2d8]
movzx eax, byte [eax]
mov dword [ebp - 0x39c], eax
mov dword [ebp - 0x318], 0xa4
mov eax, dword [ebp - 0x370]
lea eax, [eax + eax + 1]
mov dword [ebp - 0x350], eax
mov eax, dword [ebp - 0x198]
add eax, dword [ebp - 0x350]
movzx eax, byte [eax]
mov dword [ebp - 0x3c4], eax
mov dword [ebp - 0x398], 0x40
mov eax, dword [ebp - 0x39c]
sub eax, dword [ebp - 0x318]
mov dword [ebp - 0x3c0], eax
mov eax, dword [ebp - 0x3c4]
sub eax, dword [ebp - 0x398]
mov dword [ebp - 0x2e8], eax
mov eax, dword [ebp - 0x3c0]
shl eax, 4
mov dword [ebp - 0x3bc], eax
mov eax, dword [ebp - 0x2e8]
mov dword [ebp - 0x394], eax
mov eax, dword [ebp - 0x3bc]
or eax, dword [ebp - 0x394]
mov dword [ebp - 0x368], eax
mov al, byte [ebp - 0x368]
mov byte [ebp - 0x325], al
movzx eax, byte [ebp - 0x18d]
mov al, byte [ebp + eax - 0x2a4]
mov byte [ebp - 0x3b5], al
movzx eax, byte [ebp - 0x2b7]
movzx eax, byte [ebp + eax - 0x2a4]
movzx ecx, byte [ebp - 0x19d]
add ecx, eax
mov byte [ebp - 0x19d], cl
mov al, byte [ebp - 0x2b7]
add al, 1
mov byte [ebp - 0x2b7], al
movzx eax, byte [ebp - 0x19d]
movzx ecx, byte [ebp - 0x18d]
mov al, byte [ebp + eax - 0x2a4]
mov byte [ebp + ecx - 0x2a4], al
movzx eax, byte [ebp - 0x2ad]
movzx ecx, byte [ebp - 0x19d]
mov al, byte [ebp + eax - 0x2a4]
mov byte [ebp + ecx - 0x2a4], al
movzx eax, byte [ebp - 0x2b7]
movzx ecx, byte [ebp - 0x2ad]
mov al, byte [ebp + eax - 0x2a4]
mov byte [ebp + ecx - 0x2a4], al
movzx eax, byte [ebp - 0x2b7]
mov cl, byte [ebp - 0x3b5]
mov byte [ebp + eax - 0x2a4], cl
movzx eax, byte [ebp - 0x3b5]
movzx eax, byte [ebp + eax - 0x2a4]
movzx ecx, byte [ebp - 0x2a5]
add ecx, eax
mov byte [ebp - 0x2a5], cl
movzx eax, byte [ebp - 0x325]
movzx ecx, byte [ebp - 0x19d]
movzx ecx, byte [ebp + ecx - 0x2a4]
movzx edx, byte [ebp - 0x2b7]
movzx edx, byte [ebp + edx - 0x2a4]
add ecx, edx
and ecx, 0xff
movzx ecx, byte [ebp + ecx - 0x2a4]
xor eax, ecx
movzx ecx, byte [ebp - 0x2ad]
movzx ecx, byte [ebp + ecx - 0x2a4]
movzx edx, byte [ebp - 0x18d]
movzx edx, byte [ebp + edx - 0x2a4]
add ecx, edx
movzx edx, byte [ebp - 0x2a5]
movzx edx, byte [ebp + edx - 0x2a4]
add ecx, edx
and ecx, 0xff
movzx ecx, byte [ebp + ecx - 0x2a4]
movzx ecx, byte [ebp + ecx - 0x2a4]
xor eax, ecx
mov byte [ebp - 0x2ad], al
mov al, byte [ebp - 0x325]
mov byte [ebp - 0x18d], al
mov al, byte [ebp - 0x2ad]
mov byte [ebp - 0x38d], al
cmp dword [ebp - 0x370], 0
jle 0x4ee21c
mov eax, dword [ebp - 0x370]
mov cl, byte [ebp - 0x38d]
mov byte [ebp + eax - 0x31], cl
mov eax, dword [ebp - 0x370]
inc eax
mov dword [ebp - 0x370], eax
mov eax, dword [ebp - 0x36c]
inc eax
mov dword [ebp - 0x36c], eax
mov eax, dword [ebp - 0x370]
shl eax, 1
mov dword [ebp - 0x2d8], eax
fld qword [0x9a4f50]
fstp qword [ebp - 0x304]
fld qword [0x9a4f48]
fstp qword [ebp - 0x2e4]
fld qword [0x9a4f40]
fstp qword [ebp - 0x2f4]
fld qword [ebp - 0x2e4]
fsub qword [ebp - 0x2f4]
fstp qword [ebp - 0x2e4]
fld qword [ebp - 0x304]
fadd qword [ebp - 0x2f4]
fstp qword [ebp - 0x304]
fld qword [ebp - 0x304]
fadd qword [ebp - 0x2f4]
fstp qword [ebp - 0x304]
fld qword [ebp - 0x304]
fcomp qword [ebp - 0x2e4]
fnstsw ax
test ah, 5
jp 0x4ee2e9
fld qword [ebp - 0x2e4]
fadd qword [ebp - 0x304]
fstp qword [ebp - 0x2e4]
fld qword [ebp - 0x2e4]
fmul qword [ebp - 0x304]
fstp qword [ebp - 0x2e4]
fld qword [ebp - 0x2f4]
fsub qword [ebp - 0x2e4]
fstp qword [ebp - 0x2f4]
jmp 0x4ee334
fld qword [ebp - 0x2e4]
fsub qword [ebp - 0x304]
fstp qword [ebp - 0x2e4]
fld qword [ebp - 0x304]
fadd qword [ebp - 0x2f4]
fstp qword [ebp - 0x304]
fld qword [ebp - 0x2e4]
fmul qword [ebp - 0x304]
fstp qword [ebp - 0x2e4]
mov eax, dword [ebp - 0x198]
add eax, dword [ebp - 0x2d8]
movzx eax, byte [eax]
mov dword [ebp - 0x39c], eax
mov dword [ebp - 0x318], 0xa4
mov eax, dword [ebp - 0x370]
lea eax, [eax + eax + 1]
mov dword [ebp - 0x350], eax
mov eax, dword [ebp - 0x198]
add eax, dword [ebp - 0x350]
movzx eax, byte [eax]
mov dword [ebp - 0x3c4], eax
mov dword [ebp - 0x398], 0x40
mov eax, dword [ebp - 0x39c]
sub eax, dword [ebp - 0x318]
mov dword [ebp - 0x3c0], eax
mov eax, dword [ebp - 0x3c4]
sub eax, dword [ebp - 0x398]
mov dword [ebp - 0x2e8], eax
mov eax, dword [ebp - 0x3c0]
shl eax, 4
mov dword [ebp - 0x3bc], eax
mov eax, dword [ebp - 0x2e8]
mov dword [ebp - 0x394], eax
mov eax, dword [ebp - 0x3bc]
or eax, dword [ebp - 0x394]
mov dword [ebp - 0x368], eax
mov al, byte [ebp - 0x368]
mov byte [ebp - 0x325], al
movzx eax, byte [ebp - 0x18d]
mov al, byte [ebp + eax - 0x2a4]
mov byte [ebp - 0x3b5], al
movzx eax, byte [ebp - 0x2b7]
movzx eax, byte [ebp + eax - 0x2a4]
movzx ecx, byte [ebp - 0x19d]
add ecx, eax
mov byte [ebp - 0x19d], cl
mov al, byte [ebp - 0x2b7]
add al, 1
mov byte [ebp - 0x2b7], al
movzx eax, byte [ebp - 0x19d]
movzx ecx, byte [ebp - 0x18d]
mov al, byte [ebp + eax - 0x2a4]
mov byte [ebp + ecx - 0x2a4], al
movzx eax, byte [ebp - 0x2ad]
movzx ecx, byte [ebp - 0x19d]
mov al, byte [ebp + eax - 0x2a4]
mov byte [ebp + ecx - 0x2a4], al
movzx eax, byte [ebp - 0x2b7]
movzx ecx, byte [ebp - 0x2ad]
mov al, byte [ebp + eax - 0x2a4]
mov byte [ebp + ecx - 0x2a4], al
movzx eax, byte [ebp - 0x2b7]
mov cl, byte [ebp - 0x3b5]
mov byte [ebp + eax - 0x2a4], cl
movzx eax, byte [ebp - 0x3b5]
movzx eax, byte [ebp + eax - 0x2a4]
movzx ecx, byte [ebp - 0x2a5]
add ecx, eax
mov byte [ebp - 0x2a5], cl
movzx eax, byte [ebp - 0x325]
movzx ecx, byte [ebp - 0x19d]
movzx ecx, byte [ebp + ecx - 0x2a4]
movzx edx, byte [ebp - 0x2b7]
movzx edx, byte [ebp + edx - 0x2a4]
add ecx, edx
and ecx, 0xff
movzx ecx, byte [ebp + ecx - 0x2a4]
xor eax, ecx
movzx ecx, byte [ebp - 0x2ad]
movzx ecx, byte [ebp + ecx - 0x2a4]
movzx edx, byte [ebp - 0x18d]
movzx edx, byte [ebp + edx - 0x2a4]
add ecx, edx
movzx edx, byte [ebp - 0x2a5]
movzx edx, byte [ebp + edx - 0x2a4]
add ecx, edx
and ecx, 0xff
movzx ecx, byte [ebp + ecx - 0x2a4]
movzx ecx, byte [ebp + ecx - 0x2a4]
xor eax, ecx
mov byte [ebp - 0x2ad], al
mov al, byte [ebp - 0x325]
mov byte [ebp - 0x18d], al
mov al, byte [ebp - 0x2ad]
mov byte [ebp - 0x38d], al
cmp dword [ebp - 0x370], 0
jle 0x4ee547
mov eax, dword [ebp - 0x370]
mov cl, byte [ebp - 0x38d]
mov byte [ebp + eax - 0x31], cl
mov eax, dword [ebp - 0x370]
inc eax
mov dword [ebp - 0x370], eax
mov eax, dword [ebp - 0x36c]
inc eax
mov dword [ebp - 0x36c], eax
mov eax, dword [ebp - 0x370]
shl eax, 1
mov dword [ebp - 0x2d8], eax
mov eax, dword [ebp - 0x198]
add eax, dword [ebp - 0x2d8]
movzx eax, byte [eax]
mov dword [ebp - 0x39c], eax
mov dword [ebp - 0x318], 0xa4
mov eax, dword [ebp - 0x370]
lea eax, [eax + eax + 1]
mov dword [ebp - 0x350], eax
mov eax, dword [ebp - 0x198]
add eax, dword [ebp - 0x350]
movzx eax, byte [eax]
mov dword [ebp - 0x3c4], eax
mov dword [ebp - 0x398], 0x40
mov eax, dword [ebp - 0x39c]
sub eax, dword [ebp - 0x318]
mov dword [ebp - 0x3c0], eax
mov eax, dword [ebp - 0x3c4]
sub eax, dword [ebp - 0x398]
mov dword [ebp - 0x2e8], eax
mov eax, dword [ebp - 0x3c0]
shl eax, 4
mov dword [ebp - 0x3bc], eax
mov eax, dword [ebp - 0x2e8]
mov dword [ebp - 0x394], eax
mov eax, dword [ebp - 0x3bc]
or eax, dword [ebp - 0x394]
mov dword [ebp - 0x368], eax
mov al, byte [ebp - 0x368]
mov byte [ebp - 0x325], al
movzx eax, byte [ebp - 0x18d]
mov al, byte [ebp + eax - 0x2a4]
mov byte [ebp - 0x3b5], al
movzx eax, byte [ebp - 0x2b7]
movzx eax, byte [ebp + eax - 0x2a4]
movzx ecx, byte [ebp - 0x19d]
add ecx, eax
mov byte [ebp - 0x19d], cl
mov al, byte [ebp - 0x2b7]
add al, 1
mov byte [ebp - 0x2b7], al
movzx eax, byte [ebp - 0x19d]
movzx ecx, byte [ebp - 0x18d]
mov al, byte [ebp + eax - 0x2a4]
mov byte [ebp + ecx - 0x2a4], al
movzx eax, byte [ebp - 0x2ad]
movzx ecx, byte [ebp - 0x19d]
mov al, byte [ebp + eax - 0x2a4]
mov byte [ebp + ecx - 0x2a4], al
movzx eax, byte [ebp - 0x2b7]
movzx ecx, byte [ebp - 0x2ad]
mov al, byte [ebp + eax - 0x2a4]
mov byte [ebp + ecx - 0x2a4], al
movzx eax, byte [ebp - 0x2b7]
mov cl, byte [ebp - 0x3b5]
mov byte [ebp + eax - 0x2a4], cl
movzx eax, byte [ebp - 0x3b5]
movzx eax, byte [ebp + eax - 0x2a4]
movzx ecx, byte [ebp - 0x2a5]
add ecx, eax
mov byte [ebp - 0x2a5], cl
movzx eax, byte [ebp - 0x325]
movzx ecx, byte [ebp - 0x19d]
movzx ecx, byte [ebp + ecx - 0x2a4]
movzx edx, byte [ebp - 0x2b7]
movzx edx, byte [ebp + edx - 0x2a4]
add ecx, edx
and ecx, 0xff
movzx ecx, byte [ebp + ecx - 0x2a4]
xor eax, ecx
movzx ecx, byte [ebp - 0x2ad]
movzx ecx, byte [ebp + ecx - 0x2a4]
movzx edx, byte [ebp - 0x18d]
movzx edx, byte [ebp + edx - 0x2a4]
add ecx, edx
movzx edx, byte [ebp - 0x2a5]
movzx edx, byte [ebp + edx - 0x2a4]
add ecx, edx
and ecx, 0xff
movzx ecx, byte [ebp + ecx - 0x2a4]
movzx ecx, byte [ebp + ecx - 0x2a4]
xor eax, ecx
mov byte [ebp - 0x2ad], al
fld qword [0x9a4f38]
fstp qword [ebp - 0x314]
fld qword [0x9a4f30]
fstp qword [ebp - 0x3ac]
fld qword [0x9a4f28]
fstp qword [ebp - 0x33c]
fld qword [0x9a4f20]
fstp qword [ebp - 0x2cc]
fld qword [0x9a4f18]
fstp qword [ebp - 0x3a4]
fld qword [0x9a4f10]
fstp qword [ebp - 0x38c]
fld qword [0x9a4f08]
fstp qword [ebp - 0x35c]
fld qword [ebp - 0x314]
fadd qword [ebp - 0x35c]
fstp qword [ebp - 0x314]
fld qword [ebp - 0x314]
fadd qword [ebp - 0x35c]
fstp qword [ebp - 0x314]
fld qword [ebp - 0x314]
fsub qword [ebp - 0x35c]
fstp qword [ebp - 0x314]
fld qword [ebp - 0x3a4]
fadd qword [ebp - 0x35c]
fstp qword [ebp - 0x3a4]
fld qword [ebp - 0x38c]
fmul qword [ebp - 0x35c]
fstp qword [ebp - 0x38c]
fld qword [ebp - 0x3ac]
fmul qword [ebp - 0x35c]
fstp qword [ebp - 0x3ac]
fld qword [ebp - 0x2cc]
fmul qword [ebp - 0x35c]
fstp qword [ebp - 0x2cc]
fld qword [ebp - 0x3ac]
fcomp qword [ebp - 0x35c]
fnstsw ax
test ah, 0x41
jne 0x4ee8db
fld qword [ebp - 0x33c]
fadd qword [ebp - 0x2cc]
fstp qword [ebp - 0x33c]
fld qword [ebp - 0x38c]
fsub qword [ebp - 0x35c]
fstp qword [ebp - 0x38c]
fld qword [ebp - 0x314]
fsub qword [ebp - 0x3ac]
fstp qword [ebp - 0x314]
fld qword [ebp - 0x35c]
fmul qword [ebp - 0x314]
fstp qword [ebp - 0x35c]
fld qword [ebp - 0x3ac]
fadd qword [ebp - 0x33c]
fstp qword [ebp - 0x3ac]
fld qword [ebp - 0x38c]
fadd qword [ebp - 0x35c]
fstp qword [ebp - 0x38c]
fld qword [ebp - 0x38c]
fsub qword [ebp - 0x35c]
fstp qword [ebp - 0x38c]
mov al, byte [ebp - 0x325]
mov byte [ebp - 0x18d], al
jmp 0x4ee959
fld qword [ebp - 0x3a4]
fdiv qword [ebp - 0x35c]
fstp qword [ebp - 0x3a4]
fld qword [ebp - 0x314]
fdiv qword [ebp - 0x33c]
fstp qword [ebp - 0x314]
fld qword [ebp - 0x33c]
fsub qword [ebp - 0x3a4]
fstp qword [ebp - 0x33c]
fld qword [ebp - 0x3ac]
fsub qword [ebp - 0x2cc]
fstp qword [ebp - 0x3ac]
fld qword [ebp - 0x3ac]
fadd qword [ebp - 0x2cc]
fstp qword [ebp - 0x3ac]
fld qword [ebp - 0x3a4]
fmul qword [ebp - 0x35c]
fstp qword [ebp - 0x3a4]
fld qword [ebp - 0x38c]
fsub qword [ebp - 0x314]
fstp qword [ebp - 0x38c]
mov al, byte [ebp - 0x2ad]
mov byte [ebp - 0x38d], al
cmp dword [ebp - 0x370], 0
jle 0x4ee97e
mov eax, dword [ebp - 0x370]
mov cl, byte [ebp - 0x38d]
mov byte [ebp + eax - 0x31], cl
mov byte [ebp - 0x21], 0
jmp 0x4ee9b0
and dword [ebp - 0x3d0], 0
jmp 0x4ee99a
mov eax, dword [ebp - 0x3d0]
inc eax
mov dword [ebp - 0x3d0], eax
cmp dword [ebp - 0x3d0], 0x10
jge 0x4ee9b0
mov eax, dword [ebp - 0x3d0]
mov byte [ebp + eax - 0x30], 0
jmp 0x4ee98d
lea eax, [ebp - 0x30]
mov dword [ebp - 0x41c], eax
mov eax, dword [ebp - 0x41c]
mov dword [ebp - 0x420], eax
mov eax, dword [ebp - 0x41c]
mov al, byte [eax]
mov byte [ebp - 0x421], al
inc dword [ebp - 0x41c]
cmp byte [ebp - 0x421], 0
jne 0x4ee9c5
mov eax, dword [ebp - 0x41c]
sub eax, dword [ebp - 0x420]
mov ecx, dword [ebp - 0x420]
mov dword [ebp - 0x428], ecx
mov dword [ebp - 0x42c], eax
lea eax, [ebp - 0x164]
dec eax
mov dword [ebp - 0x430], eax
mov eax, dword [ebp - 0x430]
mov al, byte [eax + 1]
mov byte [ebp - 0x431], al
inc dword [ebp - 0x430]
cmp byte [ebp - 0x431], 0
jne 0x4eea0d
mov edi, dword [ebp - 0x430]
mov esi, dword [ebp - 0x428]
mov eax, dword [ebp - 0x42c]
mov ecx, eax
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, eax
and ecx, 3
rep movsb byte es:[edi], byte [esi]
lea eax, [ebp - 0x18c]
mov dword [ebp - 0x438], eax
mov eax, dword [ebp - 0x438]
mov dword [ebp - 0x43c], eax
mov eax, dword [ebp - 0x438]
mov al, byte [eax]
mov byte [ebp - 0x43d], al
inc dword [ebp - 0x438]
cmp byte [ebp - 0x43d], 0
jne 0x4eea63
mov eax, dword [ebp - 0x438]
sub eax, dword [ebp - 0x43c]
mov ecx, dword [ebp - 0x43c]
mov dword [ebp - 0x444], ecx
mov dword [ebp - 0x448], eax
lea eax, [ebp - 0x164]
dec eax
mov dword [ebp - 0x44c], eax
mov eax, dword [ebp - 0x44c]
mov al, byte [eax + 1]
mov byte [ebp - 0x44d], al
inc dword [ebp - 0x44c]
cmp byte [ebp - 0x44d], 0
jne 0x4eeaab
mov edi, dword [ebp - 0x44c]
mov esi, dword [ebp - 0x444]
mov eax, dword [ebp - 0x448]
mov ecx, eax
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, eax
and ecx, 3
rep movsb byte es:[edi], byte [esi]
push 0
push 0
push 3
push 0
push 3
push 0
lea eax, [ebp - 0x164]
push eax
mov eax, dword [ebp - 0x408]
call dword [eax + 0xdc]
mov dword [ebp - 0x20], eax
cmp dword [ebp - 0x20], 0xffffffff
jne 0x4eeb1c
call dword [sym.imp.KERNEL32.dll_GetLastError]
jmp 0x4eec86
xor eax, eax
lea edi, [ebp - 0x5c]
stosd dword es:[edi], eax
stosd dword es:[edi], eax
stosd dword es:[edi], eax
and dword [ebp - 0x5c], 0
and dword [ebp - 0x58], 0
and dword [ebp - 0x1c], 0
xor eax, eax
lea edi, [ebp - 0x18]
stosd dword es:[edi], eax
and dword [ebp - 0x50], 0
push 0
lea eax, [ebp - 0x50]
push eax
push 8
lea eax, [ebp - 0x1c]
push eax
push 0xc
lea eax, [ebp - 0x5c]
push eax
push 0x2d1400
push dword [ebp - 0x20]
mov eax, dword [ebp - 0x408]
call dword [eax + 0xcc]
test eax, eax
jne 0x4eeb7e
call dword [sym.imp.KERNEL32.dll_GetLastError]
mov dword [ebp - 0x34], eax
push dword [ebp - 0x20]
call dword [sym.imp.KERNEL32.dll_CloseHandle]
mov eax, dword [ebp - 0x34]
jmp 0x4eec86
mov eax, dword [ebp - 0x18]
mov dword [ebp - 0x14], eax
push dword [ebp - 0x14]
call fcn.00936487
pop ecx
mov dword [ebp - 0x3d4], eax
mov eax, dword [ebp - 0x3d4]
mov dword [ebp - 0x48], eax
push dword [ebp - 0x14]
push 0
push dword [ebp - 0x48]
call fcn.00936130
add esp, 0xc
push 0
lea eax, [ebp - 0x50]
push eax
push dword [ebp - 0x14]
push dword [ebp - 0x48]
push 0xc
lea eax, [ebp - 0x5c]
push eax
push 0x2d1400
push dword [ebp - 0x20]
mov eax, dword [ebp - 0x408]
call dword [eax + 0xcc]
test eax, eax
jne 0x4eec05
call dword [sym.imp.KERNEL32.dll_GetLastError]
mov dword [ebp - 0x34], eax
mov eax, dword [ebp - 0x48]
mov dword [ebp - 0x3d8], eax
push dword [ebp - 0x3d8]
call fcn.00936471
pop ecx
push dword [ebp - 0x20]
call dword [sym.imp.KERNEL32.dll_CloseHandle]
mov eax, dword [ebp - 0x34]
jmp 0x4eec86
mov eax, dword [ebp - 0x48]
mov dword [ebp - 0x168], eax
mov eax, dword [ebp - 0x168]
mov eax, dword [eax + 0x18]
mov dword [ebp - 0x10], eax
cmp dword [ebp - 0x10], 0
je 0x4eec65
mov eax, dword [ebp - 0x48]
add eax, dword [ebp - 0x10]
push eax
lea ecx, [ebp - 0x3f4]
call fcn.00491310
mov dword [ebp - 0x454], eax
mov eax, dword [ebp - 0x454]
mov dword [ebp - 0x458], eax
and dword [ebp - 4], 0
push dword [ebp - 0x458]
mov ecx, dword [ebp + 0xc]
call fcn.004db0f6
or dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0x3f4]
call fcn.0045af19
mov eax, dword [ebp - 0x48]
mov dword [ebp - 0x3f8], eax
push dword [ebp - 0x3f8]
call fcn.00936471
pop ecx
push dword [ebp - 0x20]
call dword [sym.imp.KERNEL32.dll_CloseHandle]
mov eax, dword [ebp - 0x34]
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop edi
pop esi
pop ebx
leave
ret 8