Function at 0x4fa680
Capabilities:
Get storage device properties

Disassembly:
invalid
push ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x9d2ffb
mov eax, dword fs:[0]
push eax
mov dword fs:[0], esp
sub esp, 0x508
push esi
push edi
mov dword [ebp - 0x488], ecx
mov dword [ebp - 0x34], 0
push 0x9d7b39
mov ecx, dword [ebp + 0xc]
call fcn.00475c90
mov byte [ebp - 0x18c], 0
xor eax, eax
mov dword [ebp - 0x18b], eax
mov dword [ebp - 0x187], eax
mov dword [ebp - 0x183], eax
mov dword [ebp - 0x17f], eax
mov dword [ebp - 0x17b], eax
mov dword [ebp - 0x177], eax
mov dword [ebp - 0x173], eax
mov dword [ebp - 0x16f], eax
mov byte [ebp - 0x16b], al
mov byte [ebp - 0x164], 0
push 0xff
push 0
lea ecx, [ebp - 0x163]
push ecx
call fcn.0096afe0
add esp, 0xc
push 0xa
lea edx, [ebp - 0x18c]
push edx
mov eax, dword [ebp + 8]
push eax
call fcn.0096cfba
add esp, 0xc
lea ecx, [ebp - 0x164]
add ecx, 0xffffffff
mov dword [ebp - 0x48c], ecx
mov edx, dword [ebp - 0x48c]
mov al, byte [edx + 1]
mov byte [ebp - 0x48d], al
add dword [ebp - 0x48c], 1
cmp byte [ebp - 0x48d], 0
jne 0x4fa73a
mov edi, dword [ebp - 0x48c]
mov cx, word [0x9da000]
mov word [edi], cx
mov dl, byte [0x9da002]
mov byte [edi + 2], dl
mov dword [ebp - 0x60], 0
mov dword [ebp - 0x4c], 0
fldz
fstp qword [ebp - 0x44]
fldz
fstp qword [ebp - 0x3c]
fldz
fstp qword [ebp - 0x3c]
jmp 0x4fa79d
fld qword [ebp - 0x3c]
fadd qword [0x9d5ba0]
fstp qword [ebp - 0x3c]
fld qword [0x9d9ff8]
fcomp qword [ebp - 0x3c]
fnstsw ax
test ah, 0x41
jne 0x4fa7fc
fld qword [0x9d9ff0]
fmul qword [ebp - 0x3c]
fmul qword [ebp - 0x3c]
fld qword [ebp - 0x3c]
fmul qword [ebp - 0x3c]
fsubp st(1)
fld qword [0x9d93d8]
fmul qword [ebp - 0x3c]
fmul qword [ebp - 0x3c]
fadd qword [0x9d9fe8]
fdivp st(1)
fadd qword [ebp - 0x44]
fstp qword [ebp - 0x44]
fld qword [0x9d9fe0]
fcomp qword [ebp - 0x44]
fnstsw ax
test ah, 5
jp 0x4fa7fa
fld qword [0x9d9fd8]
fmul qword [ebp - 0x3c]
fsubr qword [ebp - 0x44]
fstp qword [ebp - 0x44]
jmp 0x4fa791
fldz
fcomp qword [ebp - 0x44]
fnstsw ax
test ah, 0x41
jne 0x4fa841
je 0x4fa873
insb byte es:[edi], dx
inc edi
bound edi, qword [esi + edi + 0x33]
sub dword [ebx], edi
cmp dword [esi + esi + 0x26], ebx
cmp eax, 0x504a5d31
push 0x78427e41
inc esp
jg 0x4fa86f
jl 0x4fa873
js 0x4fa875
jl 0x4fa870
jp 0x4fa86e
jle 0x4fa873
ja 0x4fa874
or dword [ebp + edi*2 + 0x49], 0xffffff85
dec edi
jle 0x4fa879
jle 0x4fa882
or dword [ebp + 0x7a], 0xffffffe9
pop eax
add byte es:[eax], al
mov dword [ebp - 0x60], 0x4fa81c
mov dword [ebp - 0x4c], 0x4fa808
mov eax, dword [ebp - 0x60]
mov dword [ebp - 0x198], eax
mov ecx, dword [ebp - 0x4c]
mov dword [ebp - 0x194], ecx
mov byte [ebp - 0x2ed], 0x18
mov dword [ebp - 0x2d8], 0
add byte [eax], al
add byte [eax], al
add bl, ch
add byte [eax], al
jmp 0x4fa883
jnp 0x4cd10e
mov edx, dword [ebp - 0x2d8]
add edx, 1
mov dword [ebp - 0x2d8], edx
xchg ebp, eax
sub ch, bh
invalid
inc dword [ebx - 0x6a76fe3e]
sub ch, bh
invalid
inc dword [ecx - 0x2d743]
inc dword [eax]
add dword [eax], eax
add byte [ebx + 0x15], dh
cmp dword [ebp - 0x2d8], 0x100
jae 0x4fa8a4
mov eax, dword [ebp - 0x2d8]
mov cl, byte [ebp - 0x2d8]
mov byte [ebp + eax - 0x2ac], cl
jmp 0x4fa874
mov dword [ebp - 0x1a8], 0
mov byte [ebp - 0x2ee], 0
mov dword [ebp - 0x2d8], 0xff
jmp 0x4fa8d0
mov edx, dword [ebp - 0x2d8]
sub edx, 1
mov dword [ebp - 0x2d8], edx
cmp dword [ebp - 0x2d8], 0
jbe 0x4fabdc
mov dword [ebp - 0x2f4], 0
mov dword [ebp - 0x2fc], 1
mov eax, dword [ebp - 0x2fc]
cmp eax, dword [ebp - 0x2d8]
jae 0x4fa911
mov ecx, dword [ebp - 0x2fc]
lea edx, [ecx + ecx + 1]
mov dword [ebp - 0x2fc], edx
jmp 0x4fa8f1
mov eax, dword [ebp - 0x1a8]
mov dword [ebp - 0x494], eax
cmp dword [ebp - 0x494], 3
ja case.default.0x4fa930
mov ecx, dword [ebp - 0x494]
jmp dword [ecx*4 + 0x4fd1b8]
movzx edx, byte [ebp - 0x2ee]
movzx ecx, byte [ebp + edx - 0x2ac]
fld qword [ebp - 0x44]
fnstcw word [ebp - 0x496]
movzx eax, word [ebp - 0x496]
or eax, 0xc00
mov dword [ebp - 0x49c], eax
fldcw word [ebp - 0x49c]
fistp qword [ebp - 0x4a4]
fldcw word [ebp - 0x496]
mov edx, dword [ebp - 0x4a4]
and edx, 0xff
add ecx, edx
mov byte [ebp - 0x2ee], cl
jmp 0x4faab5
movzx eax, byte [ebp - 0x2ee]
movzx ecx, byte [ebp + eax - 0x2ac]
fld qword [ebp - 0x44]
fnstcw word [ebp - 0x4a6]
movzx eax, word [ebp - 0x4a6]
or eax, 0xc00
mov dword [ebp - 0x4ac], eax
fldcw word [ebp - 0x4ac]
fistp qword [ebp - 0x4b4]
fldcw word [ebp - 0x4a6]
mov edx, dword [ebp - 0x4b4]
shr edx, 8
and edx, 0xff
add ecx, edx
mov byte [ebp - 0x2ee], cl
jmp 0x4faab5
movzx eax, byte [ebp - 0x2ee]
movzx ecx, byte [ebp + eax - 0x2ac]
fld qword [ebp - 0x44]
fnstcw word [ebp - 0x4b6]
movzx eax, word [ebp - 0x4b6]
or eax, 0xc00
mov dword [ebp - 0x4bc], eax
fldcw word [ebp - 0x4bc]
fistp qword [ebp - 0x4c4]
fldcw word [ebp - 0x4b6]
mov edx, dword [ebp - 0x4c4]
shr edx, 0x10
and edx, 0xff
add ecx, edx
mov byte [ebp - 0x2ee], cl
jmp 0x4faab5
movzx eax, byte [ebp - 0x2ee]
movzx ecx, byte [ebp + eax - 0x2ac]
fld qword [ebp - 0x44]
fnstcw word [ebp - 0x4c6]
movzx eax, word [ebp - 0x4c6]
or eax, 0xc00
mov dword [ebp - 0x4cc], eax
fldcw word [ebp - 0x4cc]
fistp qword [ebp - 0x4d4]
fldcw word [ebp - 0x4c6]
mov edx, dword [ebp - 0x4d4]
shr edx, 0x18
and edx, 0xff
add ecx, edx
mov byte [ebp - 0x2ee], cl
jmp 0x4faab5
movzx eax, byte [ebp - 0x2ee]
movzx ecx, byte [ebp + eax - 0x2ac]
mov edx, dword [ebp - 0x194]
add edx, dword [ebp - 0x1a8]
movzx eax, byte [edx - 4]
add ecx, eax
mov byte [ebp - 0x2ee], cl
mov ecx, dword [ebp - 0x1a8]
add ecx, 1
mov dword [ebp - 0x1a8], ecx
movzx edx, byte [ebp - 0x2ed]
cmp dword [ebp - 0x1a8], edx
jb 0x4faaf3
mov dword [ebp - 0x1a8], 0
movzx eax, byte [ebp - 0x2ed]
movzx ecx, byte [ebp - 0x2ee]
add ecx, eax
mov byte [ebp - 0x2ee], cl
movzx edx, byte [ebp - 0x2ee]
and edx, dword [ebp - 0x2fc]
mov dword [ebp - 0x2f8], edx
mov eax, dword [ebp - 0x2f4]
add eax, 1
mov dword [ebp - 0x2f4], eax
cmp dword [ebp - 0x2f4], 0xb
jbe 0x4fab32
mov eax, dword [ebp - 0x2f8]
xor edx, edx
div dword [ebp - 0x2d8]
mov dword [ebp - 0x2f8], edx
mov ecx, dword [ebp - 0x2f8]
cmp ecx, dword [ebp - 0x2d8]
ja 0x4fa911
mov edx, dword [ebp - 0x2d8]
cmp edx, dword [ebp - 0x2f8]
je 0x4fabd7
mov eax, dword [ebp - 0x2f8]
movzx ecx, byte [ebp + eax - 0x2ac]
mov edx, dword [ebp - 0x2d8]
movzx eax, byte [ebp + edx - 0x2ac]
xor eax, ecx
mov ecx, dword [ebp - 0x2d8]
mov byte [ebp + ecx - 0x2ac], al
mov edx, dword [ebp - 0x2d8]
movzx eax, byte [ebp + edx - 0x2ac]
mov ecx, dword [ebp - 0x2f8]
movzx edx, byte [ebp + ecx - 0x2ac]
xor edx, eax
mov eax, dword [ebp - 0x2f8]
mov byte [ebp + eax - 0x2ac], dl
mov ecx, dword [ebp - 0x2f8]
movzx edx, byte [ebp + ecx - 0x2ac]
mov eax, dword [ebp - 0x2d8]
movzx ecx, byte [ebp + eax - 0x2ac]
xor ecx, edx
mov edx, dword [ebp - 0x2d8]
mov byte [ebp + edx - 0x2ac], cl
jmp 0x4fa8c1
mov al, byte [ebp - 0x2ab]
mov byte [ebp - 0x2ef], al
mov cl, byte [ebp - 0x2a9]
mov byte [ebp - 0x1a9], cl
fld qword [0x9d9fd0]
fstp qword [ebp - 0x2cc]
fld qword [0x9d9fc8]
fstp qword [ebp - 0x2ec]
fld qword [0x9d9fc0]
fstp qword [ebp - 0x2c4]
fld qword [0x9d9fb8]
fstp qword [ebp - 0x2d4]
fld qword [0x9d9fb0]
fstp qword [ebp - 0x2b4]
fld qword [0x9d9fa8]
fstp qword [ebp - 0x1a4]
fld qword [ebp - 0x2d4]
fadd qword [ebp - 0x1a4]
fstp qword [ebp - 0x2d4]
fld qword [ebp - 0x2cc]
fsub qword [ebp - 0x1a4]
fstp qword [ebp - 0x2cc]
fld qword [ebp - 0x2b4]
fmul qword [ebp - 0x1a4]
fstp qword [ebp - 0x2b4]
fld qword [ebp - 0x2ec]
fmul qword [ebp - 0x1a4]
fstp qword [ebp - 0x2ec]
fld qword [ebp - 0x2b4]
fadd qword [ebp - 0x1a4]
fstp qword [ebp - 0x2b4]
fld qword [ebp - 0x2d4]
fmul qword [ebp - 0x1a4]
fstp qword [ebp - 0x2d4]
fld qword [ebp - 0x2ec]
fcomp qword [ebp - 0x1a4]
fnstsw ax
test ah, 5
jp 0x4fad29
fld qword [ebp - 0x2c4]
fadd qword [ebp - 0x2d4]
fstp qword [ebp - 0x2c4]
fld qword [ebp - 0x2d4]
fadd qword [ebp - 0x2b4]
fstp qword [ebp - 0x2d4]
fld qword [ebp - 0x2cc]
fmul qword [ebp - 0x2ec]
fstp qword [ebp - 0x2cc]
fld qword [ebp - 0x2ec]
fmul qword [ebp - 0x2c4]
fstp qword [ebp - 0x2ec]
fld qword [ebp - 0x1a4]
fmul qword [ebp - 0x2cc]
fstp qword [ebp - 0x1a4]
fld qword [ebp - 0x2cc]
fsub qword [ebp - 0x2ec]
fstp qword [ebp - 0x2cc]
jmp 0x4fada1
fld qword [ebp - 0x2ec]
fsub qword [ebp - 0x2c4]
fstp qword [ebp - 0x2ec]
fld qword [ebp - 0x2d4]
fadd qword [ebp - 0x2b4]
fstp qword [ebp - 0x2d4]
fld qword [ebp - 0x2ec]
fsub qword [ebp - 0x2c4]
fstp qword [ebp - 0x2ec]
fld qword [ebp - 0x2c4]
fadd qword [ebp - 0x2d4]
fstp qword [ebp - 0x2c4]
fld qword [ebp - 0x2c4]
fsub qword [ebp - 0x2d4]
fstp qword [ebp - 0x2c4]
fld qword [ebp - 0x1a4]
fmul qword [ebp - 0x2cc]
fstp qword [ebp - 0x1a4]
mov dl, byte [ebp - 0x2a7]
mov byte [ebp - 0x2b5], dl
mov al, byte [ebp - 0x2a5]
mov byte [ebp - 0x2d9], al
movzx ecx, byte [ebp - 0x2ee]
mov dl, byte [ebp + ecx - 0x2ac]
mov byte [ebp - 0x18d], dl
mov dword [ebp - 0x2e0], 0x20
cmp dword [ebp - 0x2e0], 2
jle 0x4fce68
mov eax, dword [ebp - 0x2e0]
and eax, 1
jne 0x4fce68
mov dword [ebp - 0x364], 0
mov dword [ebp - 0x360], 0
mov ecx, dword [ebp - 0x360]
add ecx, 1
mov dword [ebp - 0x360], ecx
mov dword [ebp - 0x304], 0
mov edx, dword [ebp - 0x364]
shl edx, 1
mov dword [ebp - 0x304], edx
mov dword [ebp - 0x378], 0
fld qword [0x9d9fa0]
fstp qword [ebp - 0x394]
fld qword [0x9d9f98]
fstp qword [ebp - 0x344]
fld qword [0x9d9f90]
fstp qword [ebp - 0x354]
fld qword [0x9d9f88]
fstp qword [ebp - 0x334]
fld qword [ebp - 0x344]
fsub qword [ebp - 0x334]
fstp qword [ebp - 0x344]
fld qword [ebp - 0x354]
fadd qword [ebp - 0x334]
fstp qword [ebp - 0x354]
fld qword [ebp - 0x344]
fsub qword [ebp - 0x334]
fstp qword [ebp - 0x344]
fld qword [ebp - 0x354]
fadd qword [ebp - 0x334]
fstp qword [ebp - 0x354]
fld qword [ebp - 0x344]
fcomp qword [ebp - 0x394]
fnstsw ax
test ah, 0x41
jne 0x4faff2
fld qword [ebp - 0x394]
fadd qword [ebp - 0x344]
fstp qword [ebp - 0x394]
fld qword [ebp - 0x344]
fmul qword [ebp - 0x354]
fstp qword [ebp - 0x344]
fld qword [ebp - 0x354]
fadd qword [ebp - 0x334]
fstp qword [ebp - 0x354]
fld qword [ebp - 0x344]
fdiv qword [ebp - 0x354]
fstp qword [ebp - 0x344]
fld qword [ebp - 0x394]
fadd qword [ebp - 0x344]
fstp qword [ebp - 0x394]
fld qword [ebp - 0x354]
fmul qword [ebp - 0x334]
fstp qword [ebp - 0x354]
fld qword [ebp - 0x344]
fmul qword [ebp - 0x354]
fstp qword [ebp - 0x344]
fld qword [ebp - 0x344]
fdiv qword [ebp - 0x354]
fstp qword [ebp - 0x344]
fld qword [ebp - 0x334]
fcomp qword [ebp - 0x344]
fnstsw ax
test ah, 5
jp 0x4fafa8
fld qword [ebp - 0x394]
fadd qword [ebp - 0x344]
fstp qword [ebp - 0x394]
fld qword [ebp - 0x344]
fadd qword [ebp - 0x354]
fstp qword [ebp - 0x344]
fld qword [ebp - 0x394]
fmul qword [ebp - 0x344]
fstp qword [ebp - 0x394]
fld qword [ebp - 0x354]
fmul qword [ebp - 0x334]
fstp qword [ebp - 0x354]
jmp 0x4faff0
fld qword [ebp - 0x354]
fmul qword [ebp - 0x394]
fstp qword [ebp - 0x354]
fld qword [ebp - 0x394]
fsub qword [ebp - 0x354]
fstp qword [ebp - 0x394]
fld qword [ebp - 0x394]
fdiv qword [ebp - 0x354]
fstp qword [ebp - 0x394]
fld qword [ebp - 0x394]
fadd qword [ebp - 0x354]
fstp qword [ebp - 0x394]
jmp 0x4fb055
fld qword [ebp - 0x394]
fsub qword [ebp - 0x344]
fstp qword [ebp - 0x394]
fld qword [ebp - 0x344]
fmul qword [ebp - 0x354]
fstp qword [ebp - 0x344]
fld qword [ebp - 0x354]
fadd qword [ebp - 0x334]
fstp qword [ebp - 0x354]
fld qword [ebp - 0x354]
fsub qword [ebp - 0x334]
fstp qword [ebp - 0x354]
mov eax, dword [ebp - 0x198]
add eax, dword [ebp - 0x304]
movzx ecx, byte [eax]
add ecx, dword [ebp - 0x378]
mov dword [ebp - 0x378], ecx
mov dword [ebp - 0x31c], 0
mov edx, dword [ebp - 0x31c]
add edx, 0x41
mov dword [ebp - 0x31c], edx
mov dword [ebp - 0x348], 0
mov eax, dword [ebp - 0x364]
lea ecx, [eax + eax + 1]
mov dword [ebp - 0x348], ecx
mov dword [ebp - 0x38c], 0
mov edx, dword [ebp - 0x198]
add edx, dword [ebp - 0x348]
movzx eax, byte [edx]
add eax, dword [ebp - 0x38c]
mov dword [ebp - 0x38c], eax
mov dword [ebp - 0x374], 0
mov ecx, dword [ebp - 0x374]
add ecx, 0x76
mov dword [ebp - 0x374], ecx
mov dword [ebp - 0x388], 0
mov edx, dword [ebp - 0x378]
sub edx, dword [ebp - 0x31c]
add edx, dword [ebp - 0x388]
mov dword [ebp - 0x388], edx
mov dword [ebp - 0x30c], 0
mov eax, dword [ebp - 0x38c]
sub eax, dword [ebp - 0x374]
add eax, dword [ebp - 0x30c]
mov dword [ebp - 0x30c], eax
mov dword [ebp - 0x384], 0
mov ecx, dword [ebp - 0x388]
shl ecx, 4
mov dword [ebp - 0x384], ecx
mov dword [ebp - 0x370], 0
mov edx, dword [ebp - 0x30c]
mov dword [ebp - 0x370], edx
mov dword [ebp - 0x35c], 0
mov eax, dword [ebp - 0x384]
or eax, dword [ebp - 0x370]
mov dword [ebp - 0x35c], eax
mov byte [ebp - 0x325], 0
mov cl, byte [ebp - 0x35c]
mov byte [ebp - 0x325], cl
mov byte [ebp - 0x37d], 0
movzx edx, byte [ebp - 0x18d]
mov al, byte [ebp + edx - 0x2ac]
mov byte [ebp - 0x37d], al
movzx ecx, byte [ebp - 0x2ef]
movzx edx, byte [ebp + ecx - 0x2ac]
movzx eax, byte [ebp - 0x1a9]
add eax, edx
mov byte [ebp - 0x1a9], al
mov cl, byte [ebp - 0x2ef]
add cl, 1
mov byte [ebp - 0x2ef], cl
movzx edx, byte [ebp - 0x1a9]
movzx eax, byte [ebp - 0x18d]
mov cl, byte [ebp + edx - 0x2ac]
mov byte [ebp + eax - 0x2ac], cl
movzx edx, byte [ebp - 0x2d9]
movzx eax, byte [ebp - 0x1a9]
mov cl, byte [ebp + edx - 0x2ac]
mov byte [ebp + eax - 0x2ac], cl
movzx edx, byte [ebp - 0x2ef]
movzx eax, byte [ebp - 0x2d9]
mov cl, byte [ebp + edx - 0x2ac]
mov byte [ebp + eax - 0x2ac], cl
movzx edx, byte [ebp - 0x2ef]
mov al, byte [ebp - 0x37d]
mov byte [ebp + edx - 0x2ac], al
movzx ecx, byte [ebp - 0x37d]
movzx edx, byte [ebp + ecx - 0x2ac]
movzx eax, byte [ebp - 0x2b5]
add eax, edx
mov byte [ebp - 0x2b5], al
movzx ecx, byte [ebp - 0x325]
movzx edx, byte [ebp - 0x1a9]
movzx eax, byte [ebp + edx - 0x2ac]
movzx edx, byte [ebp - 0x2ef]
movzx edx, byte [ebp + edx - 0x2ac]
add eax, edx
and eax, 0xff
movzx eax, byte [ebp + eax - 0x2ac]
xor ecx, eax
movzx edx, byte [ebp - 0x2d9]
movzx eax, byte [ebp + edx - 0x2ac]
movzx edx, byte [ebp - 0x18d]
movzx edx, byte [ebp + edx - 0x2ac]
add eax, edx
movzx edx, byte [ebp - 0x2b5]
movzx edx, byte [ebp + edx - 0x2ac]
add eax, edx
and eax, 0xff
movzx eax, byte [ebp + eax - 0x2ac]
movzx edx, byte [ebp + eax - 0x2ac]
xor ecx, edx
mov byte [ebp - 0x2d9], cl
mov al, byte [ebp - 0x325]
mov byte [ebp - 0x18d], al
mov cl, byte [ebp - 0x2d9]
mov byte [ebp - 0x369], cl
cmp dword [ebp - 0x364], 0
jle 0x4fb2eb
mov edx, dword [ebp - 0x364]
mov al, byte [ebp - 0x369]
mov byte [ebp + edx - 0x31], al
mov ecx, dword [ebp - 0x360]
add ecx, 4
mov dword [ebp - 0x360], ecx
mov edx, dword [ebp - 0x364]
add edx, 1
mov dword [ebp - 0x398], edx
jmp 0x4fb31a
mov eax, dword [ebp - 0x398]
add eax, 1
mov dword [ebp - 0x398], eax
mov ecx, dword [ebp - 0x398]
cmp ecx, dword [ebp - 0x360]
jge 0x4fb695
mov edx, dword [ebp - 0x364]
add edx, 1
mov dword [ebp - 0x364], edx
mov eax, dword [ebp - 0x364]
shl eax, 1
mov dword [ebp - 0x304], eax
mov ecx, dword [ebp - 0x198]
add ecx, dword [ebp - 0x304]
movzx edx, byte [ecx]
mov dword [ebp - 0x378], edx
mov dword [ebp - 0x31c], 0x41
mov eax, dword [ebp - 0x364]
lea ecx, [eax + eax + 1]
mov dword [ebp - 0x348], ecx
mov edx, dword [ebp - 0x198]
add edx, dword [ebp - 0x348]
movzx eax, byte [edx]
mov dword [ebp - 0x38c], eax
mov dword [ebp - 0x374], 0x76
mov ecx, dword [ebp - 0x378]
sub ecx, dword [ebp - 0x31c]
mov dword [ebp - 0x388], ecx
mov edx, dword [ebp - 0x38c]
sub edx, dword [ebp - 0x374]
mov dword [ebp - 0x30c], edx
mov eax, dword [ebp - 0x388]
shl eax, 4
mov dword [ebp - 0x384], eax
mov ecx, dword [ebp - 0x30c]
mov dword [ebp - 0x370], ecx
mov edx, dword [ebp - 0x384]
or edx, dword [ebp - 0x370]
mov dword [ebp - 0x35c], edx
mov al, byte [ebp - 0x35c]
mov byte [ebp - 0x325], al
movzx ecx, byte [ebp - 0x18d]
mov dl, byte [ebp + ecx - 0x2ac]
mov byte [ebp - 0x37d], dl
movzx eax, byte [ebp - 0x2ef]
movzx ecx, byte [ebp + eax - 0x2ac]
movzx edx, byte [ebp - 0x1a9]
add edx, ecx
mov byte [ebp - 0x1a9], dl
mov al, byte [ebp - 0x2ef]
add al, 1
mov byte [ebp - 0x2ef], al
movzx ecx, byte [ebp - 0x1a9]
movzx edx, byte [ebp - 0x18d]
mov al, byte [ebp + ecx - 0x2ac]
mov byte [ebp + edx - 0x2ac], al
fld dword [0x9d9f80]
fstp dword [ebp - 0x3a0]
fld dword [0x9d9f7c]
fstp dword [ebp - 0x3a4]
fld dword [0x9d9f78]
fstp dword [ebp - 0x3a8]
fld dword [0x9d9f74]
fstp dword [ebp - 0x39c]
fld dword [ebp - 0x3a4]
fsub dword [ebp - 0x39c]
fstp dword [ebp - 0x3a4]
fld dword [ebp - 0x3a4]
fadd dword [ebp - 0x39c]
fstp dword [ebp - 0x3a4]
fld dword [ebp - 0x3a4]
fsub dword [ebp - 0x39c]
fstp dword [ebp - 0x3a4]
fld dword [ebp - 0x3a0]
fsub dword [ebp - 0x39c]
fstp dword [ebp - 0x3a0]
fld dword [ebp - 0x3a0]
fld dword [ebp - 0x39c]
fcompp
fnstsw ax
test ah, 5
jp 0x4fb543
fld dword [ebp - 0x3a4]
fadd dword [ebp - 0x39c]
fstp dword [ebp - 0x3a4]
fld dword [ebp - 0x3a0]
fsub dword [ebp - 0x3a8]
fstp dword [ebp - 0x3a0]
fld dword [ebp - 0x3a0]
fsub dword [ebp - 0x3a8]
fstp dword [ebp - 0x3a0]
fld dword [ebp - 0x39c]
fmul dword [ebp - 0x3a4]
fstp dword [ebp - 0x39c]
movzx ecx, byte [ebp - 0x2d9]
movzx edx, byte [ebp - 0x1a9]
mov al, byte [ebp + ecx - 0x2ac]
mov byte [ebp + edx - 0x2ac], al
jmp 0x4fb58b
fld dword [ebp - 0x3a0]
fadd dword [ebp - 0x3a4]
fstp dword [ebp - 0x3a0]
fld dword [ebp - 0x3a0]
fmul dword [ebp - 0x3a4]
fstp dword [ebp - 0x3a0]
fld dword [ebp - 0x3a0]
fsub dword [ebp - 0x3a4]
fstp dword [ebp - 0x3a0]
fld dword [ebp - 0x39c]
fdiv dword [ebp - 0x3a0]
fstp dword [ebp - 0x39c]
movzx ecx, byte [ebp - 0x2ef]
movzx edx, byte [ebp - 0x2d9]
mov al, byte [ebp + ecx - 0x2ac]
mov byte [ebp + edx - 0x2ac], al
movzx ecx, byte [ebp - 0x2ef]
mov dl, byte [ebp - 0x37d]
mov byte [ebp + ecx - 0x2ac], dl
movzx eax, byte [ebp - 0x37d]
movzx ecx, byte [ebp + eax - 0x2ac]
movzx edx, byte [ebp - 0x2b5]
add edx, ecx
mov byte [ebp - 0x2b5], dl
movzx eax, byte [ebp - 0x325]
movzx ecx, byte [ebp - 0x1a9]
movzx edx, byte [ebp + ecx - 0x2ac]
movzx ecx, byte [ebp - 0x2ef]
movzx ecx, byte [ebp + ecx - 0x2ac]
add edx, ecx
and edx, 0xff
movzx edx, byte [ebp + edx - 0x2ac]
xor eax, edx
movzx ecx, byte [ebp - 0x2d9]
movzx edx, byte [ebp + ecx - 0x2ac]
movzx ecx, byte [ebp - 0x18d]
movzx ecx, byte [ebp + ecx - 0x2ac]
add edx, ecx
movzx ecx, byte [ebp - 0x2b5]
movzx ecx, byte [ebp + ecx - 0x2ac]
add edx, ecx
and edx, 0xff
movzx edx, byte [ebp + edx - 0x2ac]
movzx ecx, byte [ebp + edx - 0x2ac]
xor eax, ecx
mov byte [ebp - 0x2d9], al
mov dl, byte [ebp - 0x325]
mov byte [ebp - 0x18d], dl
mov al, byte [ebp - 0x2d9]
mov byte [ebp - 0x369], al
cmp dword [ebp - 0x364], 0
jle 0x4fb690
mov ecx, dword [ebp - 0x364]
mov dl, byte [ebp - 0x369]
mov byte [ebp + ecx - 0x31], dl
jmp 0x4fb30b
mov eax, dword [ebp - 0x360]
add eax, 1
mov dword [ebp - 0x360], eax
mov ecx, dword [ebp - 0x364]
add ecx, 1
mov dword [ebp - 0x364], ecx
mov edx, dword [ebp - 0x360]
add edx, 1
mov dword [ebp - 0x360], edx
mov eax, dword [ebp - 0x364]
shl eax, 1
mov dword [ebp - 0x304], eax
mov ecx, dword [ebp - 0x198]
add ecx, dword [ebp - 0x304]
movzx edx, byte [ecx]
mov dword [ebp - 0x378], edx
mov dword [ebp - 0x31c], 0x41
mov eax, dword [ebp - 0x364]
lea ecx, [eax + eax + 1]
mov dword [ebp - 0x348], ecx
mov edx, dword [ebp - 0x198]
add edx, dword [ebp - 0x348]
movzx eax, byte [edx]
mov dword [ebp - 0x38c], eax
mov dword [ebp - 0x374], 0x76
mov ecx, dword [ebp - 0x378]
sub ecx, dword [ebp - 0x31c]
mov dword [ebp - 0x388], ecx
mov edx, dword [ebp - 0x38c]
sub edx, dword [ebp - 0x374]
mov dword [ebp - 0x30c], edx
mov eax, dword [ebp - 0x388]
shl eax, 4
mov dword [ebp - 0x384], eax
mov ecx, dword [ebp - 0x30c]
mov dword [ebp - 0x370], ecx
mov edx, dword [ebp - 0x384]
or edx, dword [ebp - 0x370]
mov dword [ebp - 0x35c], edx
mov al, byte [ebp - 0x35c]
mov byte [ebp - 0x325], al
movzx ecx, byte [ebp - 0x18d]
mov dl, byte [ebp + ecx - 0x2ac]
mov byte [ebp - 0x37d], dl
movzx eax, byte [ebp - 0x2ef]
movzx ecx, byte [ebp + eax - 0x2ac]
movzx edx, byte [ebp - 0x1a9]
add edx, ecx
mov byte [ebp - 0x1a9], dl
mov al, byte [ebp - 0x2ef]
add al, 1
mov byte [ebp - 0x2ef], al
movzx ecx, byte [ebp - 0x1a9]
movzx edx, byte [ebp - 0x18d]
mov al, byte [ebp + ecx - 0x2ac]
mov byte [ebp + edx - 0x2ac], al
movzx ecx, byte [ebp - 0x2d9]
movzx edx, byte [ebp - 0x1a9]
mov al, byte [ebp + ecx - 0x2ac]
mov byte [ebp + edx - 0x2ac], al
movzx ecx, byte [ebp - 0x2ef]
movzx edx, byte [ebp - 0x2d9]
mov al, byte [ebp + ecx - 0x2ac]
mov byte [ebp + edx - 0x2ac], al
movzx ecx, byte [ebp - 0x2ef]
mov dl, byte [ebp - 0x37d]
mov byte [ebp + ecx - 0x2ac], dl
movzx eax, byte [ebp - 0x37d]
movzx ecx, byte [ebp + eax - 0x2ac]
movzx edx, byte [ebp - 0x2b5]
add edx, ecx
mov byte [ebp - 0x2b5], dl
movzx eax, byte [ebp - 0x325]
movzx ecx, byte [ebp - 0x1a9]
movzx edx, byte [ebp + ecx - 0x2ac]
movzx ecx, byte [ebp - 0x2ef]
movzx ecx, byte [ebp + ecx - 0x2ac]
add edx, ecx
and edx, 0xff
movzx edx, byte [ebp + edx - 0x2ac]
xor eax, edx
movzx ecx, byte [ebp - 0x2d9]
movzx edx, byte [ebp + ecx - 0x2ac]
movzx ecx, byte [ebp - 0x18d]
movzx ecx, byte [ebp + ecx - 0x2ac]
add edx, ecx
movzx ecx, byte [ebp - 0x2b5]
movzx ecx, byte [ebp + ecx - 0x2ac]
add edx, ecx
and edx, 0xff
movzx edx, byte [ebp + edx - 0x2ac]
movzx ecx, byte [ebp + edx - 0x2ac]
xor eax, ecx
mov byte [ebp - 0x2d9], al
mov dl, byte [ebp - 0x325]
mov byte [ebp - 0x18d], dl
mov al, byte [ebp - 0x2d9]
mov byte [ebp - 0x369], al
cmp dword [ebp - 0x364], 0
jle 0x4fb8f8
mov ecx, dword [ebp - 0x364]
mov dl, byte [ebp - 0x369]
mov byte [ebp + ecx - 0x31], dl
mov eax, dword [ebp - 0x364]
add eax, 1
mov dword [ebp - 0x364], eax
mov ecx, dword [ebp - 0x360]
add ecx, 1
mov dword [ebp - 0x360], ecx
mov edx, dword [ebp - 0x364]
shl edx, 1
mov dword [ebp - 0x304], edx
mov eax, dword [ebp - 0x198]
add eax, dword [ebp - 0x304]
movzx ecx, byte [eax]
mov dword [ebp - 0x378], ecx
mov dword [ebp - 0x31c], 0x41
mov edx, dword [ebp - 0x364]
lea eax, [edx + edx + 1]
mov dword [ebp - 0x348], eax
mov ecx, dword [ebp - 0x198]
add ecx, dword [ebp - 0x348]
movzx edx, byte [ecx]
mov dword [ebp - 0x38c], edx
mov dword [ebp - 0x374], 0x76
mov eax, dword [ebp - 0x378]
sub eax, dword [ebp - 0x31c]
mov dword [ebp - 0x388], eax
mov ecx, dword [ebp - 0x38c]
sub ecx, dword [ebp - 0x374]
mov dword [ebp - 0x30c], ecx
mov edx, dword [ebp - 0x388]
shl edx, 4
mov dword [ebp - 0x384], edx
mov eax, dword [ebp - 0x30c]
mov dword [ebp - 0x370], eax
mov ecx, dword [ebp - 0x384]
or ecx, dword [ebp - 0x370]
mov dword [ebp - 0x35c], ecx
mov dl, byte [ebp - 0x35c]
mov byte [ebp - 0x325], dl
movzx eax, byte [ebp - 0x18d]
mov cl, byte [ebp + eax - 0x2ac]
mov byte [ebp - 0x37d], cl
movzx edx, byte [ebp - 0x2ef]
movzx eax, byte [ebp + edx - 0x2ac]
movzx ecx, byte [ebp - 0x1a9]
add ecx, eax
mov byte [ebp - 0x1a9], cl
mov dl, byte [ebp - 0x2ef]
add dl, 1
mov byte [ebp - 0x2ef], dl
movzx eax, byte [ebp - 0x1a9]
movzx ecx, byte [ebp - 0x18d]
mov dl, byte [ebp + eax - 0x2ac]
mov byte [ebp + ecx - 0x2ac], dl
movzx eax, byte [ebp - 0x2d9]
movzx ecx, byte [ebp - 0x1a9]
mov dl, byte [ebp + eax - 0x2ac]
mov byte [ebp + ecx - 0x2ac], dl
movzx eax, byte [ebp - 0x2ef]
movzx ecx, byte [ebp - 0x2d9]
mov dl, byte [ebp + eax - 0x2ac]
mov byte [ebp + ecx - 0x2ac], dl
movzx eax, byte [ebp - 0x2ef]
mov cl, byte [ebp - 0x37d]
mov byte [ebp + eax - 0x2ac], cl
movzx edx, byte [ebp - 0x37d]
movzx eax, byte [ebp + edx - 0x2ac]
movzx ecx, byte [ebp - 0x2b5]
add ecx, eax
mov byte [ebp - 0x2b5], cl
movzx edx, byte [ebp - 0x325]
movzx eax, byte [ebp - 0x1a9]
movzx ecx, byte [ebp + eax - 0x2ac]
movzx eax, byte [ebp - 0x2ef]
movzx eax, byte [ebp + eax - 0x2ac]
add ecx, eax
and ecx, 0xff
movzx ecx, byte [ebp + ecx - 0x2ac]
xor edx, ecx
movzx eax, byte [ebp - 0x2d9]
movzx ecx, byte [ebp + eax - 0x2ac]
movzx eax, byte [ebp - 0x18d]
movzx eax, byte [ebp + eax - 0x2ac]
add ecx, eax
movzx eax, byte [ebp - 0x2b5]
movzx eax, byte [ebp + eax - 0x2ac]
add ecx, eax
and ecx, 0xff
movzx ecx, byte [ebp + ecx - 0x2ac]
movzx eax, byte [ebp + ecx - 0x2ac]
xor edx, eax
mov byte [ebp - 0x2d9], dl
fld dword [0x9d9f70]
fstp dword [ebp - 0x338]
fld dword [0x9d9f6c]
fstp dword [ebp - 0x37c]
fld dword [0x9d9f68]
fstp dword [ebp - 0x318]
fld dword [0x9d9f64]
fstp dword [ebp - 0x308]
fld dword [0x9d9f60]
fstp dword [ebp - 0x310]
fld dword [ebp - 0x308]
fsub dword [ebp - 0x310]
fstp dword [ebp - 0x308]
fld dword [ebp - 0x308]
fadd dword [ebp - 0x310]
fstp dword [ebp - 0x308]
fld dword [ebp - 0x338]
fsub dword [ebp - 0x310]
fstp dword [ebp - 0x338]
fld dword [ebp - 0x37c]
fsub dword [ebp - 0x310]
fstp dword [ebp - 0x37c]
fld dword [ebp - 0x318]
fmul dword [ebp - 0x310]
fstp dword [ebp - 0x318]
fld dword [ebp - 0x310]
fld dword [ebp - 0x318]
fcompp
fnstsw ax
test ah, 0x41
jne 0x4fbc32
fld dword [ebp - 0x338]
fsub dword [ebp - 0x318]
fstp dword [ebp - 0x338]
fld dword [ebp - 0x310]
fmul dword [ebp - 0x37c]
fstp dword [ebp - 0x310]
fld dword [ebp - 0x37c]
fadd dword [ebp - 0x308]
fstp dword [ebp - 0x37c]
fld dword [ebp - 0x338]
fsub dword [ebp - 0x318]
fstp dword [ebp - 0x338]
fld dword [ebp - 0x310]
fmul dword [ebp - 0x37c]
fstp dword [ebp - 0x310]
mov cl, byte [ebp - 0x325]
mov byte [ebp - 0x18d], cl
jmp 0x4fbdb1
fld dword [ebp - 0x318]
fmul dword [ebp - 0x310]
fstp dword [ebp - 0x318]
fld dword [ebp - 0x338]
fdiv dword [ebp - 0x318]
fstp dword [ebp - 0x338]
fld dword [ebp - 0x308]
fdiv dword [ebp - 0x338]
fstp dword [ebp - 0x308]
fld dword [ebp - 0x338]
fdiv dword [ebp - 0x318]
fstp dword [ebp - 0x338]
fld dword [ebp - 0x308]
fadd dword [ebp - 0x338]
fstp dword [ebp - 0x308]
fld dword [ebp - 0x37c]
fadd dword [ebp - 0x308]
fstp dword [ebp - 0x37c]
fld dword [ebp - 0x37c]
fadd dword [ebp - 0x308]
fstp dword [ebp - 0x37c]
fld dword [ebp - 0x338]
fadd dword [ebp - 0x318]
fstp dword [ebp - 0x338]
fld dword [ebp - 0x318]
fmul dword [ebp - 0x310]
fstp dword [ebp - 0x318]
fld dword [ebp - 0x338]
fdiv dword [ebp - 0x318]
fstp dword [ebp - 0x338]
fld dword [ebp - 0x37c]
fld dword [ebp - 0x308]
fcompp
fnstsw ax
test ah, 0x41
jne 0x4fbd57
fld dword [ebp - 0x338]
fmul dword [ebp - 0x318]
fstp dword [ebp - 0x338]
fld dword [ebp - 0x338]
fdiv dword [ebp - 0x318]
fstp dword [ebp - 0x338]
fld dword [ebp - 0x338]
fadd dword [ebp - 0x318]
fstp dword [ebp - 0x338]
fld dword [ebp - 0x308]
fdiv dword [ebp - 0x338]
fstp dword [ebp - 0x308]
fld dword [ebp - 0x308]
fmul dword [ebp - 0x338]
fstp dword [ebp - 0x308]
jmp 0x4fbdb1
fld dword [ebp - 0x308]
fsub dword [ebp - 0x310]
fstp dword [ebp - 0x308]
fld dword [ebp - 0x310]
fmul dword [ebp - 0x338]
fstp dword [ebp - 0x310]
fld dword [ebp - 0x37c]
fdiv dword [ebp - 0x318]
fstp dword [ebp - 0x37c]
fld dword [ebp - 0x37c]
fsub dword [ebp - 0x318]
fstp dword [ebp - 0x37c]
fld dword [ebp - 0x338]
fmul dword [ebp - 0x37c]
fstp dword [ebp - 0x338]
mov dl, byte [ebp - 0x2d9]
mov byte [ebp - 0x369], dl
cmp dword [ebp - 0x364], 0
jle 0x4fbdd6
mov eax, dword [ebp - 0x364]
mov cl, byte [ebp - 0x369]
mov byte [ebp + eax - 0x31], cl
mov edx, dword [ebp - 0x364]
add edx, 1
mov dword [ebp - 0x364], edx
mov eax, dword [ebp - 0x360]
add eax, 1
mov dword [ebp - 0x360], eax
mov ecx, dword [ebp - 0x364]
shl ecx, 1
mov dword [ebp - 0x304], ecx
mov edx, dword [ebp - 0x198]
add edx, dword [ebp - 0x304]
movzx eax, byte [edx]
mov dword [ebp - 0x378], eax
mov dword [ebp - 0x31c], 0x41
mov ecx, dword [ebp - 0x364]
lea edx, [ecx + ecx + 1]
mov dword [ebp - 0x348], edx
mov eax, dword [ebp - 0x198]
add eax, dword [ebp - 0x348]
movzx ecx, byte [eax]
mov dword [ebp - 0x38c], ecx
mov dword [ebp - 0x374], 0x76
mov edx, dword [ebp - 0x378]
sub edx, dword [ebp - 0x31c]
mov dword [ebp - 0x388], edx
mov eax, dword [ebp - 0x38c]
sub eax, dword [ebp - 0x374]
mov dword [ebp - 0x30c], eax
mov ecx, dword [ebp - 0x388]
shl ecx, 4
mov dword [ebp - 0x384], ecx
mov edx, dword [ebp - 0x30c]
mov dword [ebp - 0x370], edx
mov eax, dword [ebp - 0x384]
or eax, dword [ebp - 0x370]
mov dword [ebp - 0x35c], eax
mov cl, byte [ebp - 0x35c]
mov byte [ebp - 0x325], cl
movzx edx, byte [ebp - 0x18d]
mov al, byte [ebp + edx - 0x2ac]
mov byte [ebp - 0x37d], al
movzx ecx, byte [ebp - 0x2ef]
movzx edx, byte [ebp + ecx - 0x2ac]
movzx eax, byte [ebp - 0x1a9]
add eax, edx
mov byte [ebp - 0x1a9], al
mov cl, byte [ebp - 0x2ef]
add cl, 1
mov byte [ebp - 0x2ef], cl
movzx edx, byte [ebp - 0x1a9]
movzx eax, byte [ebp - 0x18d]
mov cl, byte [ebp + edx - 0x2ac]
mov byte [ebp + eax - 0x2ac], cl
movzx edx, byte [ebp - 0x2d9]
movzx eax, byte [ebp - 0x1a9]
mov cl, byte [ebp + edx - 0x2ac]
mov byte [ebp + eax - 0x2ac], cl
movzx edx, byte [ebp - 0x2ef]
movzx eax, byte [ebp - 0x2d9]
mov cl, byte [ebp + edx - 0x2ac]
mov byte [ebp + eax - 0x2ac], cl
movzx edx, byte [ebp - 0x2ef]
mov al, byte [ebp - 0x37d]
mov byte [ebp + edx - 0x2ac], al
movzx ecx, byte [ebp - 0x37d]
movzx edx, byte [ebp + ecx - 0x2ac]
movzx eax, byte [ebp - 0x2b5]
add eax, edx
mov byte [ebp - 0x2b5], al
movzx ecx, byte [ebp - 0x325]
movzx edx, byte [ebp - 0x1a9]
movzx eax, byte [ebp + edx - 0x2ac]
movzx edx, byte [ebp - 0x2ef]
movzx edx, byte [ebp + edx - 0x2ac]
add eax, edx
and eax, 0xff
movzx eax, byte [ebp + eax - 0x2ac]
xor ecx, eax
movzx edx, byte [ebp - 0x2d9]
movzx eax, byte [ebp + edx - 0x2ac]
movzx edx, byte [ebp - 0x18d]
movzx edx, byte [ebp + edx - 0x2ac]
add eax, edx
movzx edx, byte [ebp - 0x2b5]
movzx edx, byte [ebp + edx - 0x2ac]
add eax, edx
and eax, 0xff
movzx eax, byte [ebp + eax - 0x2ac]
movzx edx, byte [ebp + eax - 0x2ac]
xor ecx, edx
mov byte [ebp - 0x2d9], cl
mov al, byte [ebp - 0x325]
mov byte [ebp - 0x18d], al
mov cl, byte [ebp - 0x2d9]
mov byte [ebp - 0x369], cl
cmp dword [ebp - 0x364], 0
jle 0x4fc029
mov edx, dword [ebp - 0x364]
mov al, byte [ebp - 0x369]
mov byte [ebp + edx - 0x31], al
mov ecx, dword [ebp - 0x360]
add ecx, 5
mov dword [ebp - 0x360], ecx
mov edx, dword [ebp - 0x364]
add edx, 1
mov dword [ebp - 0x3ac], edx
jmp 0x4fc058
mov eax, dword [ebp - 0x3ac]
add eax, 1
mov dword [ebp - 0x3ac], eax
mov ecx, dword [ebp - 0x3ac]
cmp ecx, dword [ebp - 0x360]
jge 0x4fc5b1
mov edx, dword [ebp - 0x364]
add edx, 1
mov dword [ebp - 0x364], edx
mov eax, dword [ebp - 0x364]
shl eax, 1
mov dword [ebp - 0x304], eax
mov ecx, dword [ebp - 0x198]
add ecx, dword [ebp - 0x304]
movzx edx, byte [ecx]
mov dword [ebp - 0x378], edx
mov dword [ebp - 0x31c], 0x41
mov eax, dword [ebp - 0x364]
lea ecx, [eax + eax + 1]
mov dword [ebp - 0x348], ecx
mov edx, dword [ebp - 0x198]
add edx, dword [ebp - 0x348]
movzx eax, byte [edx]
mov dword [ebp - 0x38c], eax
mov dword [ebp - 0x374], 0x76
mov ecx, dword [ebp - 0x378]
sub ecx, dword [ebp - 0x31c]
mov dword [ebp - 0x388], ecx
mov edx, dword [ebp - 0x38c]
sub edx, dword [ebp - 0x374]
mov dword [ebp - 0x30c], edx
mov eax, dword [ebp - 0x388]
shl eax, 4
mov dword [ebp - 0x384], eax
mov ecx, dword [ebp - 0x30c]
mov dword [ebp - 0x370], ecx
mov edx, dword [ebp - 0x384]
or edx, dword [ebp - 0x370]
mov dword [ebp - 0x35c], edx
mov al, byte [ebp - 0x35c]
mov byte [ebp - 0x325], al
movzx ecx, byte [ebp - 0x18d]
mov dl, byte [ebp + ecx - 0x2ac]
mov byte [ebp - 0x37d], dl
movzx eax, byte [ebp - 0x2ef]
movzx ecx, byte [ebp + eax - 0x2ac]
movzx edx, byte [ebp - 0x1a9]
add edx, ecx
mov byte [ebp - 0x1a9], dl
mov al, byte [ebp - 0x2ef]
add al, 1
mov byte [ebp - 0x2ef], al
movzx ecx, byte [ebp - 0x1a9]
movzx edx, byte [ebp - 0x18d]
mov al, byte [ebp + ecx - 0x2ac]
mov byte [ebp + edx - 0x2ac], al
movzx ecx, byte [ebp - 0x2d9]
movzx edx, byte [ebp - 0x1a9]
mov al, byte [ebp + ecx - 0x2ac]
mov byte [ebp + edx - 0x2ac], al
movzx ecx, byte [ebp - 0x2ef]
movzx edx, byte [ebp - 0x2d9]
mov al, byte [ebp + ecx - 0x2ac]
mov byte [ebp + edx - 0x2ac], al
movzx ecx, byte [ebp - 0x2ef]
mov dl, byte [ebp - 0x37d]
mov byte [ebp + ecx - 0x2ac], dl
movzx eax, byte [ebp - 0x37d]
movzx ecx, byte [ebp + eax - 0x2ac]
movzx edx, byte [ebp - 0x2b5]
add edx, ecx
mov byte [ebp - 0x2b5], dl
movzx eax, byte [ebp - 0x325]
movzx ecx, byte [ebp - 0x1a9]
movzx edx, byte [ebp + ecx - 0x2ac]
movzx ecx, byte [ebp - 0x2ef]
movzx ecx, byte [ebp + ecx - 0x2ac]
add edx, ecx
and edx, 0xff
movzx edx, byte [ebp + edx - 0x2ac]
xor eax, edx
movzx ecx, byte [ebp - 0x2d9]
movzx edx, byte [ebp + ecx - 0x2ac]
movzx ecx, byte [ebp - 0x18d]
movzx ecx, byte [ebp + ecx - 0x2ac]
add edx, ecx
movzx ecx, byte [ebp - 0x2b5]
movzx ecx, byte [ebp + ecx - 0x2ac]
add edx, ecx
and edx, 0xff
movzx edx, byte [ebp + edx - 0x2ac]
movzx ecx, byte [ebp + edx - 0x2ac]
xor eax, ecx
mov byte [ebp - 0x2d9], al
mov dl, byte [ebp - 0x325]
mov byte [ebp - 0x18d], dl
fld qword [0x9d9f58]
fstp qword [ebp - 0x3b4]
fld qword [0x9d9f50]
fstp qword [ebp - 0x3bc]
fld qword [0x9d9f48]
fstp qword [ebp - 0x3d4]
fld qword [0x9d9f40]
fstp qword [ebp - 0x3c4]
fld qword [0x9d85e0]
fstp qword [ebp - 0x3dc]
fld qword [0x9d9f38]
fstp qword [ebp - 0x3cc]
fld qword [ebp - 0x3bc]
fadd qword [ebp - 0x3cc]
fstp qword [ebp - 0x3bc]
fld qword [ebp - 0x3dc]
fsub qword [ebp - 0x3cc]
fstp qword [ebp - 0x3dc]
fld qword [ebp - 0x3d4]
fsub qword [ebp - 0x3cc]
fstp qword [ebp - 0x3d4]
fld qword [ebp - 0x3d4]
fadd qword [ebp - 0x3cc]
fstp qword [ebp - 0x3d4]
fld qword [ebp - 0x3bc]
fsub qword [ebp - 0x3cc]
fstp qword [ebp - 0x3bc]
fld qword [ebp - 0x3bc]
fadd qword [ebp - 0x3cc]
fstp qword [ebp - 0x3bc]
fld qword [ebp - 0x3dc]
fcomp qword [ebp - 0x3bc]
fnstsw ax
test ah, 5
jp 0x4fc3ce
fld qword [ebp - 0x3c4]
fadd qword [ebp - 0x3dc]
fstp qword [ebp - 0x3c4]
fld qword [ebp - 0x3d4]
fsub qword [ebp - 0x3c4]
fstp qword [ebp - 0x3d4]
fld qword [ebp - 0x3d4]
fadd qword [ebp - 0x3c4]
fstp qword [ebp - 0x3d4]
fld qword [ebp - 0x3c4]
fadd qword [ebp - 0x3dc]
fstp qword [ebp - 0x3c4]
fld qword [ebp - 0x3bc]
fadd qword [ebp - 0x3d4]
fstp qword [ebp - 0x3bc]
fld qword [ebp - 0x3b4]
fsub qword [ebp - 0x3bc]
fstp qword [ebp - 0x3b4]
mov al, byte [ebp - 0x2d9]
mov byte [ebp - 0x369], al
jmp 0x4fc593
fld qword [ebp - 0x3cc]
fdiv qword [ebp - 0x3bc]
fstp qword [ebp - 0x3cc]
fld qword [ebp - 0x3c4]
fdiv qword [ebp - 0x3cc]
fstp qword [ebp - 0x3c4]
fld qword [ebp - 0x3dc]
fdiv qword [ebp - 0x3b4]
fstp qword [ebp - 0x3dc]
fld qword [ebp - 0x3dc]
fdiv qword [ebp - 0x3b4]
fstp qword [ebp - 0x3dc]
fld qword [ebp - 0x3dc]
fsub qword [ebp - 0x3b4]
fstp qword [ebp - 0x3dc]
fld qword [ebp - 0x3cc]
fdiv qword [ebp - 0x3bc]
fstp qword [ebp - 0x3cc]
fld qword [ebp - 0x3cc]
fdiv qword [ebp - 0x3bc]
fstp qword [ebp - 0x3cc]
fld qword [ebp - 0x3c4]
fdiv qword [ebp - 0x3cc]
fstp qword [ebp - 0x3c4]
fld qword [ebp - 0x3bc]
fdiv qword [ebp - 0x3c4]
fstp qword [ebp - 0x3bc]
fld qword [ebp - 0x3cc]
fdiv qword [ebp - 0x3bc]
fstp qword [ebp - 0x3cc]
fld qword [ebp - 0x3bc]
fsub qword [ebp - 0x3c4]
fstp qword [ebp - 0x3bc]
fld qword [ebp - 0x3bc]
fdiv qword [ebp - 0x3c4]
fstp qword [ebp - 0x3bc]
fld qword [ebp - 0x3cc]
fcomp qword [ebp - 0x3c4]
fnstsw ax
test ah, 5
jp 0x4fc527
fld qword [ebp - 0x3c4]
fdiv qword [ebp - 0x3cc]
fstp qword [ebp - 0x3c4]
fld qword [ebp - 0x3d4]
fsub qword [ebp - 0x3dc]
fstp qword [ebp - 0x3d4]
fld qword [ebp - 0x3d4]
fsub qword [ebp - 0x3dc]
fstp qword [ebp - 0x3d4]
fld qword [ebp - 0x3bc]
fmul qword [ebp - 0x3c4]
fstp qword [ebp - 0x3bc]
fld qword [ebp - 0x3cc]
fmul qword [ebp - 0x3bc]
fstp qword [ebp - 0x3cc]
fld qword [ebp - 0x3dc]
fadd qword [ebp - 0x3b4]
fstp qword [ebp - 0x3dc]
jmp 0x4fc593
fld qword [ebp - 0x3dc]
fmul qword [ebp - 0x3b4]
fstp qword [ebp - 0x3dc]
fld qword [ebp - 0x3c4]
fdiv qword [ebp - 0x3cc]
fstp qword [ebp - 0x3c4]
fld qword [ebp - 0x3c4]
fdiv qword [ebp - 0x3cc]
fstp qword [ebp - 0x3c4]
fld qword [ebp - 0x3d4]
fsub qword [ebp - 0x3dc]
fstp qword [ebp - 0x3d4]
fld qword [ebp - 0x3c4]
fsub qword [ebp - 0x3cc]
fstp qword [ebp - 0x3c4]
fld qword [ebp - 0x3b4]
fdiv qword [ebp - 0x3d4]
fstp qword [ebp - 0x3b4]
cmp dword [ebp - 0x364], 0
jle 0x4fc5ac
mov ecx, dword [ebp - 0x364]
mov dl, byte [ebp - 0x369]
mov byte [ebp + ecx - 0x31], dl
jmp 0x4fc049
mov eax, dword [ebp - 0x360]
add eax, 1
mov dword [ebp - 0x360], eax
mov ecx, dword [ebp - 0x364]
add ecx, 1
mov dword [ebp - 0x364], ecx
mov edx, dword [ebp - 0x360]
add edx, 1
mov dword [ebp - 0x360], edx
mov eax, dword [ebp - 0x364]
shl eax, 1
mov dword [ebp - 0x304], eax
mov ecx, dword [ebp - 0x198]
add ecx, dword [ebp - 0x304]
movzx edx, byte [ecx]
mov dword [ebp - 0x378], edx
mov dword [ebp - 0x31c], 0x41
mov eax, dword [ebp - 0x364]
lea ecx, [eax + eax + 1]
mov dword [ebp - 0x348], ecx
mov edx, dword [ebp - 0x198]
add edx, dword [ebp - 0x348]
movzx eax, byte [edx]
mov dword [ebp - 0x38c], eax
mov dword [ebp - 0x374], 0x76
mov ecx, dword [ebp - 0x378]
sub ecx, dword [ebp - 0x31c]
mov dword [ebp - 0x388], ecx
mov edx, dword [ebp - 0x38c]
sub edx, dword [ebp - 0x374]
mov dword [ebp - 0x30c], edx
mov eax, dword [ebp - 0x388]
shl eax, 4
mov dword [ebp - 0x384], eax
mov ecx, dword [ebp - 0x30c]
mov dword [ebp - 0x370], ecx
mov edx, dword [ebp - 0x384]
or edx, dword [ebp - 0x370]
mov dword [ebp - 0x35c], edx
mov al, byte [ebp - 0x35c]
mov byte [ebp - 0x325], al
movzx ecx, byte [ebp - 0x18d]
mov dl, byte [ebp + ecx - 0x2ac]
mov byte [ebp - 0x37d], dl
movzx eax, byte [ebp - 0x2ef]
movzx ecx, byte [ebp + eax - 0x2ac]
movzx edx, byte [ebp - 0x1a9]
add edx, ecx
mov byte [ebp - 0x1a9], dl
mov al, byte [ebp - 0x2ef]
add al, 1
mov byte [ebp - 0x2ef], al
movzx ecx, byte [ebp - 0x1a9]
movzx edx, byte [ebp - 0x18d]
mov al, byte [ebp + ecx - 0x2ac]
mov byte [ebp + edx - 0x2ac], al
movzx ecx, byte [ebp - 0x2d9]
movzx edx, byte [ebp - 0x1a9]
mov al, byte [ebp + ecx - 0x2ac]
mov byte [ebp + edx - 0x2ac], al
movzx ecx, byte [ebp - 0x2ef]
movzx edx, byte [ebp - 0x2d9]
mov al, byte [ebp + ecx - 0x2ac]
mov byte [ebp + edx - 0x2ac], al
movzx ecx, byte [ebp - 0x2ef]
mov dl, byte [ebp - 0x37d]
mov byte [ebp + ecx - 0x2ac], dl
movzx eax, byte [ebp - 0x37d]
movzx ecx, byte [ebp + eax - 0x2ac]
movzx edx, byte [ebp - 0x2b5]
add edx, ecx
mov byte [ebp - 0x2b5], dl
movzx eax, byte [ebp - 0x325]
movzx ecx, byte [ebp - 0x1a9]
movzx edx, byte [ebp + ecx - 0x2ac]
movzx ecx, byte [ebp - 0x2ef]
movzx ecx, byte [ebp + ecx - 0x2ac]
add edx, ecx
and edx, 0xff
movzx edx, byte [ebp + edx - 0x2ac]
xor eax, edx
movzx ecx, byte [ebp - 0x2d9]
movzx edx, byte [ebp + ecx - 0x2ac]
movzx ecx, byte [ebp - 0x18d]
movzx ecx, byte [ebp + ecx - 0x2ac]
add edx, ecx
movzx ecx, byte [ebp - 0x2b5]
movzx ecx, byte [ebp + ecx - 0x2ac]
add edx, ecx
and edx, 0xff
movzx edx, byte [ebp + edx - 0x2ac]
movzx ecx, byte [ebp + edx - 0x2ac]
xor eax, ecx
mov byte [ebp - 0x2d9], al
mov dl, byte [ebp - 0x325]
mov byte [ebp - 0x18d], dl
mov al, byte [ebp - 0x2d9]
mov byte [ebp - 0x369], al
cmp dword [ebp - 0x364], 0
jle 0x4fc814
mov ecx, dword [ebp - 0x364]
mov dl, byte [ebp - 0x369]
mov byte [ebp + ecx - 0x31], dl
mov eax, dword [ebp - 0x364]
add eax, 1
mov dword [ebp - 0x364], eax
mov ecx, dword [ebp - 0x360]
add ecx, 1
mov dword [ebp - 0x360], ecx
mov edx, dword [ebp - 0x364]
shl edx, 1
mov dword [ebp - 0x304], edx
mov eax, dword [ebp - 0x198]
add eax, dword [ebp - 0x304]
movzx ecx, byte [eax]
mov dword [ebp - 0x378], ecx
mov dword [ebp - 0x31c], 0x41
mov edx, dword [ebp - 0x364]
lea eax, [edx + edx + 1]
mov dword [ebp - 0x348], eax
mov ecx, dword [ebp - 0x198]
add ecx, dword [ebp - 0x348]
movzx edx, byte [ecx]
mov dword [ebp - 0x38c], edx
mov dword [ebp - 0x374], 0x76
mov eax, dword [ebp - 0x378]
sub eax, dword [ebp - 0x31c]
mov dword [ebp - 0x388], eax
mov ecx, dword [ebp - 0x38c]
sub ecx, dword [ebp - 0x374]
mov dword [ebp - 0x30c], ecx
mov edx, dword [ebp - 0x388]
shl edx, 4
mov dword [ebp - 0x384], edx
mov eax, dword [ebp - 0x30c]
mov dword [ebp - 0x370], eax
mov ecx, dword [ebp - 0x384]
or ecx, dword [ebp - 0x370]
mov dword [ebp - 0x35c], ecx
mov dl, byte [ebp - 0x35c]
mov byte [ebp - 0x325], dl
movzx eax, byte [ebp - 0x18d]
mov cl, byte [ebp + eax - 0x2ac]
mov byte [ebp - 0x37d], cl
movzx edx, byte [ebp - 0x2ef]
movzx eax, byte [ebp + edx - 0x2ac]
movzx ecx, byte [ebp - 0x1a9]
add ecx, eax
mov byte [ebp - 0x1a9], cl
mov dl, byte [ebp - 0x2ef]
add dl, 1
mov byte [ebp - 0x2ef], dl
movzx eax, byte [ebp - 0x1a9]
movzx ecx, byte [ebp - 0x18d]
mov dl, byte [ebp + eax - 0x2ac]
mov byte [ebp + ecx - 0x2ac], dl
movzx eax, byte [ebp - 0x2d9]
movzx ecx, byte [ebp - 0x1a9]
mov dl, byte [ebp + eax - 0x2ac]
mov byte [ebp + ecx - 0x2ac], dl
movzx eax, byte [ebp - 0x2ef]
movzx ecx, byte [ebp - 0x2d9]
mov dl, byte [ebp + eax - 0x2ac]
mov byte [ebp + ecx - 0x2ac], dl
movzx eax, byte [ebp - 0x2ef]
mov cl, byte [ebp - 0x37d]
mov byte [ebp + eax - 0x2ac], cl
movzx edx, byte [ebp - 0x37d]
movzx eax, byte [ebp + edx - 0x2ac]
movzx ecx, byte [ebp - 0x2b5]
add ecx, eax
mov byte [ebp - 0x2b5], cl
movzx edx, byte [ebp - 0x325]
movzx eax, byte [ebp - 0x1a9]
movzx ecx, byte [ebp + eax - 0x2ac]
movzx eax, byte [ebp - 0x2ef]
movzx eax, byte [ebp + eax - 0x2ac]
add ecx, eax
and ecx, 0xff
movzx ecx, byte [ebp + ecx - 0x2ac]
xor edx, ecx
movzx eax, byte [ebp - 0x2d9]
movzx ecx, byte [ebp + eax - 0x2ac]
movzx eax, byte [ebp - 0x18d]
movzx eax, byte [ebp + eax - 0x2ac]
add ecx, eax
movzx eax, byte [ebp - 0x2b5]
movzx eax, byte [ebp + eax - 0x2ac]
add ecx, eax
and ecx, 0xff
movzx ecx, byte [ebp + ecx - 0x2ac]
movzx eax, byte [ebp + ecx - 0x2ac]
xor edx, eax
mov byte [ebp - 0x2d9], dl
mov cl, byte [ebp - 0x325]
mov byte [ebp - 0x18d], cl
mov dl, byte [ebp - 0x2d9]
mov byte [ebp - 0x369], dl
cmp dword [ebp - 0x364], 0
jle 0x4fca69
mov eax, dword [ebp - 0x364]
mov cl, byte [ebp - 0x369]
mov byte [ebp + eax - 0x31], cl
mov edx, dword [ebp - 0x364]
add edx, 1
mov dword [ebp - 0x364], edx
mov eax, dword [ebp - 0x360]
add eax, 1
mov dword [ebp - 0x360], eax
mov ecx, dword [ebp - 0x364]
shl ecx, 1
mov dword [ebp - 0x304], ecx
mov edx, dword [ebp - 0x198]
add edx, dword [ebp - 0x304]
movzx eax, byte [edx]
mov dword [ebp - 0x378], eax
mov dword [ebp - 0x31c], 0x41
mov ecx, dword [ebp - 0x364]
lea edx, [ecx + ecx + 1]
mov dword [ebp - 0x348], edx
mov eax, dword [ebp - 0x198]
add eax, dword [ebp - 0x348]
movzx ecx, byte [eax]
mov dword [ebp - 0x38c], ecx
mov dword [ebp - 0x374], 0x76
mov edx, dword [ebp - 0x378]
sub edx, dword [ebp - 0x31c]
mov dword [ebp - 0x388], edx
mov eax, dword [ebp - 0x38c]
sub eax, dword [ebp - 0x374]
mov dword [ebp - 0x30c], eax
mov ecx, dword [ebp - 0x388]
shl ecx, 4
mov dword [ebp - 0x384], ecx
mov edx, dword [ebp - 0x30c]
mov dword [ebp - 0x370], edx
mov eax, dword [ebp - 0x384]
or eax, dword [ebp - 0x370]
mov dword [ebp - 0x35c], eax
mov cl, byte [ebp - 0x35c]
mov byte [ebp - 0x325], cl
movzx edx, byte [ebp - 0x18d]
mov al, byte [ebp + edx - 0x2ac]
mov byte [ebp - 0x37d], al
movzx ecx, byte [ebp - 0x2ef]
movzx edx, byte [ebp + ecx - 0x2ac]
movzx eax, byte [ebp - 0x1a9]
add eax, edx
mov byte [ebp - 0x1a9], al
mov cl, byte [ebp - 0x2ef]
add cl, 1
mov byte [ebp - 0x2ef], cl
movzx edx, byte [ebp - 0x1a9]
movzx eax, byte [ebp - 0x18d]
mov cl, byte [ebp + edx - 0x2ac]
mov byte [ebp + eax - 0x2ac], cl
movzx edx, byte [ebp - 0x2d9]
movzx eax, byte [ebp - 0x1a9]
mov cl, byte [ebp + edx - 0x2ac]
mov byte [ebp + eax - 0x2ac], cl
movzx edx, byte [ebp - 0x2ef]
movzx eax, byte [ebp - 0x2d9]
mov cl, byte [ebp + edx - 0x2ac]
mov byte [ebp + eax - 0x2ac], cl
fld dword [0x9d9f34]
fstp dword [ebp - 0x324]
fld dword [0x9d9f30]
fstp dword [ebp - 0x368]
fld dword [0x9d9f2c]
fstp dword [ebp - 0x320]
fld dword [0x9d9f28]
fstp dword [ebp - 0x358]
fld dword [0x9d9f24]
fstp dword [ebp - 0x300]
fld dword [0x9d9f20]
fstp dword [ebp - 0x314]
fld dword [ebp - 0x324]
fadd dword [ebp - 0x314]
fstp dword [ebp - 0x324]
fld dword [ebp - 0x368]
fsub dword [ebp - 0x314]
fstp dword [ebp - 0x368]
fld dword [ebp - 0x368]
fadd dword [ebp - 0x314]
fstp dword [ebp - 0x368]
fld dword [ebp - 0x358]
fadd dword [ebp - 0x314]
fstp dword [ebp - 0x358]
fld dword [ebp - 0x324]
fadd dword [ebp - 0x314]
fstp dword [ebp - 0x324]
fld dword [ebp - 0x368]
fsub dword [ebp - 0x314]
fstp dword [ebp - 0x368]
fld dword [ebp - 0x324]
fld dword [ebp - 0x314]
fcompp
fnstsw ax
test ah, 0x41
jne 0x4fcd0f
fld dword [ebp - 0x358]
fsub dword [ebp - 0x300]
fstp dword [ebp - 0x358]
fld dword [ebp - 0x314]
fadd dword [ebp - 0x324]
fstp dword [ebp - 0x314]
fld dword [ebp - 0x368]
fdiv dword [ebp - 0x320]
fstp dword [ebp - 0x368]
fld dword [ebp - 0x314]
fmul dword [ebp - 0x324]
fstp dword [ebp - 0x314]
fld dword [ebp - 0x300]
fsub dword [ebp - 0x314]
fstp dword [ebp - 0x300]
fld dword [ebp - 0x300]
fsub dword [ebp - 0x314]
fstp dword [ebp - 0x300]
jmp 0x4fcd8f
fld dword [ebp - 0x300]
fsub dword [ebp - 0x314]
fstp dword [ebp - 0x300]
fld dword [ebp - 0x300]
fmul dword [ebp - 0x314]
fstp dword [ebp - 0x300]
fld dword [ebp - 0x314]
fsub dword [ebp - 0x324]
fstp dword [ebp - 0x314]
fld dword [ebp - 0x300]
fsub dword [ebp - 0x314]
fstp dword [ebp - 0x300]
fld dword [ebp - 0x320]
fsub dword [ebp - 0x358]
fstp dword [ebp - 0x320]
fld dword [ebp - 0x368]
fadd dword [ebp - 0x320]
fstp dword [ebp - 0x368]
movzx edx, byte [ebp - 0x2ef]
mov al, byte [ebp - 0x37d]
mov byte [ebp + edx - 0x2ac], al
movzx ecx, byte [ebp - 0x37d]
movzx edx, byte [ebp + ecx - 0x2ac]
movzx eax, byte [ebp - 0x2b5]
add eax, edx
mov byte [ebp - 0x2b5], al
movzx ecx, byte [ebp - 0x325]
movzx edx, byte [ebp - 0x1a9]
movzx eax, byte [ebp + edx - 0x2ac]
movzx edx, byte [ebp - 0x2ef]
movzx edx, byte [ebp + edx - 0x2ac]
add eax, edx
and eax, 0xff
movzx eax, byte [ebp + eax - 0x2ac]
xor ecx, eax
movzx edx, byte [ebp - 0x2d9]
movzx eax, byte [ebp + edx - 0x2ac]
movzx edx, byte [ebp - 0x18d]
movzx edx, byte [ebp + edx - 0x2ac]
add eax, edx
movzx edx, byte [ebp - 0x2b5]
movzx edx, byte [ebp + edx - 0x2ac]
add eax, edx
and eax, 0xff
movzx eax, byte [ebp + eax - 0x2ac]
movzx edx, byte [ebp + eax - 0x2ac]
xor ecx, edx
mov byte [ebp - 0x2d9], cl
mov al, byte [ebp - 0x325]
mov byte [ebp - 0x18d], al
mov cl, byte [ebp - 0x2d9]
mov byte [ebp - 0x369], cl
cmp dword [ebp - 0x364], 0
jle 0x4fce62
mov edx, dword [ebp - 0x364]
mov al, byte [ebp - 0x369]
mov byte [ebp + edx - 0x31], al
mov byte [ebp - 0x21], 0
jmp 0x4fce99
mov dword [ebp - 0x3e0], 0
jmp 0x4fce83
mov ecx, dword [ebp - 0x3e0]
add ecx, 1
mov dword [ebp - 0x3e0], ecx
cmp dword [ebp - 0x3e0], 0x10
jge 0x4fce99
mov edx, dword [ebp - 0x3e0]
mov byte [ebp + edx - 0x30], 0
jmp 0x4fce74
lea eax, [ebp - 0x30]
mov dword [ebp - 0x4d8], eax
mov ecx, dword [ebp - 0x4d8]
mov dword [ebp - 0x4dc], ecx
mov edx, dword [ebp - 0x4d8]
mov al, byte [edx]
mov byte [ebp - 0x4dd], al
add dword [ebp - 0x4d8], 1
cmp byte [ebp - 0x4dd], 0
jne 0x4fceae
mov ecx, dword [ebp - 0x4d8]
sub ecx, dword [ebp - 0x4dc]
mov edx, dword [ebp - 0x4dc]
mov dword [ebp - 0x4e4], edx
mov dword [ebp - 0x4e8], ecx
lea eax, [ebp - 0x164]
add eax, 0xffffffff
mov dword [ebp - 0x4ec], eax
mov ecx, dword [ebp - 0x4ec]
mov dl, byte [ecx + 1]
mov byte [ebp - 0x4ed], dl
add dword [ebp - 0x4ec], 1
cmp byte [ebp - 0x4ed], 0
jne 0x4fcef9
mov edi, dword [ebp - 0x4ec]
mov esi, dword [ebp - 0x4e4]
mov eax, dword [ebp - 0x4e8]
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 ecx, [ebp - 0x18c]
mov dword [ebp - 0x4f4], ecx
mov edx, dword [ebp - 0x4f4]
mov dword [ebp - 0x4f8], edx
mov eax, dword [ebp - 0x4f4]
mov cl, byte [eax]
mov byte [ebp - 0x4f9], cl
add dword [ebp - 0x4f4], 1
cmp byte [ebp - 0x4f9], 0
jne 0x4fcf50
mov edx, dword [ebp - 0x4f4]
sub edx, dword [ebp - 0x4f8]
mov eax, dword [ebp - 0x4f8]
mov dword [ebp - 0x500], eax
mov dword [ebp - 0x504], edx
lea ecx, [ebp - 0x164]
add ecx, 0xffffffff
mov dword [ebp - 0x508], ecx
mov edx, dword [ebp - 0x508]
mov al, byte [edx + 1]
mov byte [ebp - 0x509], al
add dword [ebp - 0x508], 1
cmp byte [ebp - 0x509], 0
jne 0x4fcf9b
mov edi, dword [ebp - 0x508]
mov esi, dword [ebp - 0x500]
mov edx, dword [ebp - 0x504]
mov ecx, edx
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, edx
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 ecx, dword [ebp - 0x488]
mov edx, dword [ecx + 0xdc]
call edx
mov dword [ebp - 0x20], eax
cmp dword [ebp - 0x20], 0xffffffff
jne 0x4fd00f
call dword [sym.imp.KERNEL32.dll_GetLastError]
jmp 0x4fd1a4
xor eax, eax
mov dword [ebp - 0x5c], eax
mov dword [ebp - 0x58], eax
mov dword [ebp - 0x54], eax
mov dword [ebp - 0x5c], 0
mov dword [ebp - 0x58], 0
mov dword [ebp - 0x1c], 0
xor ecx, ecx
mov dword [ebp - 0x18], ecx
mov dword [ebp - 0x50], 0
push 0
lea edx, [ebp - 0x50]
push edx
push 8
lea eax, [ebp - 0x1c]
push eax
push 0xc
lea ecx, [ebp - 0x5c]
push ecx
push 0x2d1400
mov edx, dword [ebp - 0x20]
push edx
mov eax, dword [ebp - 0x488]
mov ecx, dword [eax + 0xcc]
call ecx
test eax, eax
jne 0x4fd083
call dword [sym.imp.KERNEL32.dll_GetLastError]
mov dword [ebp - 0x34], eax
mov edx, dword [ebp - 0x20]
push edx
call dword [sym.imp.KERNEL32.dll_CloseHandle]
mov eax, dword [ebp - 0x34]
jmp 0x4fd1a4
mov eax, dword [ebp - 0x18]
mov dword [ebp - 0x14], eax
mov ecx, dword [ebp - 0x14]
push ecx
call fcn.0096b337
add esp, 4
mov dword [ebp - 0x3e4], eax
mov edx, dword [ebp - 0x3e4]
mov dword [ebp - 0x48], edx
mov eax, dword [ebp - 0x14]
push eax
push 0
mov ecx, dword [ebp - 0x48]
push ecx
call fcn.0096afe0
add esp, 0xc
push 0
lea edx, [ebp - 0x50]
push edx
mov eax, dword [ebp - 0x14]
push eax
mov ecx, dword [ebp - 0x48]
push ecx
push 0xc
lea edx, [ebp - 0x5c]
push edx
push 0x2d1400
mov eax, dword [ebp - 0x20]
push eax
mov ecx, dword [ebp - 0x488]
mov edx, dword [ecx + 0xcc]
call edx
test eax, eax
jne 0x4fd118
call dword [sym.imp.KERNEL32.dll_GetLastError]
mov dword [ebp - 0x34], eax
mov eax, dword [ebp - 0x48]
mov dword [ebp - 0x3e8], eax
mov ecx, dword [ebp - 0x3e8]
push ecx
call fcn.0096b321
add esp, 4
mov edx, dword [ebp - 0x20]
push edx
call dword [sym.imp.KERNEL32.dll_CloseHandle]
mov eax, dword [ebp - 0x34]
jmp 0x4fd1a4
mov eax, dword [ebp - 0x48]
mov dword [ebp - 0x168], eax
mov ecx, dword [ebp - 0x168]
mov edx, dword [ecx + 0x18]
mov dword [ebp - 0x10], edx
cmp dword [ebp - 0x10], 0
je 0x4fd17f
mov eax, dword [ebp - 0x48]
add eax, dword [ebp - 0x10]
push eax
lea ecx, [ebp - 0x404]
call fcn.00499740
mov dword [ebp - 0x510], eax
mov ecx, dword [ebp - 0x510]
mov dword [ebp - 0x514], ecx
mov dword [ebp - 4], 0
mov edx, dword [ebp - 0x514]
push edx
mov ecx, dword [ebp + 0xc]
call fcn.004e8950
mov dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0x404]
call fcn.004b6c20
mov eax, dword [ebp - 0x48]
mov dword [ebp - 0x408], eax
mov ecx, dword [ebp - 0x408]
push ecx
call fcn.0096b321
add esp, 4
mov edx, dword [ebp - 0x20]
push edx
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
mov esp, ebp
pop ebp
ret 8