Function at 0x478f31
Capabilities:
Get storage device properties

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x3c8
mov eax, dword [0xa480c0]
xor eax, ebp
mov dword [ebp - 4], eax
push ebx
push esi
push edi
mov dword [ebp - 0x250], ecx
and dword [ebp - 0x1f0], 0
push 0xa177aa
mov ecx, dword [ebp + 0xc]
call fcn.004703ef
push 8
pop ecx
xor eax, eax
lea edi, [ebp - 0x38]
rep stosd dword es:[edi], eax
stosw word es:[edi], ax
push 0x100
push 0
lea eax, [ebp - 0x138]
push eax
call fcn.009efbb0
add esp, 0xc
push 0xa
lea eax, [ebp - 0x38]
push eax
push dword [ebp + 8]
call fcn.009f5e00
add esp, 0xc
lea eax, [ebp - 0x138]
dec eax
mov dword [ebp - 0x220], eax
mov eax, dword [ebp - 0x220]
mov al, byte [eax + 1]
mov byte [ebp - 0x1cd], al
inc dword [ebp - 0x220]
cmp byte [ebp - 0x1cd], 0
jne 0x478fa1
mov edi, dword [ebp - 0x220]
mov ax, word [0xa177ac]
mov word [edi], ax
mov al, byte [0xa177ae]
mov byte [edi + 2], al
and dword [ebp - 0x154], 0
and dword [ebp - 0x158], 0
xorps xmm0, xmm0
movsd qword [ebp - 0x21c], xmm0
xorps xmm0, xmm0
movsd qword [ebp - 0x1f8], xmm0
xorps xmm0, xmm0
movsd qword [ebp - 0x1f8], xmm0
jmp 0x47901f
movsd xmm0, qword [ebp - 0x1f8]
addsd xmm0, qword [0xa167a0]
movsd qword [ebp - 0x1f8], xmm0
movsd xmm0, qword [0xa17a38]
comisd xmm0, xmmword [ebp - 0x1f8]
jbe 0x4790d0
movsd xmm0, qword [0xa17978]
mulsd xmm0, qword [ebp - 0x1f8]
mulsd xmm0, qword [ebp - 0x1f8]
movsd xmm1, qword [ebp - 0x1f8]
mulsd xmm1, qword [ebp - 0x1f8]
subsd xmm0, xmm1
movsd xmm1, qword [0xa16810]
mulsd xmm1, qword [ebp - 0x1f8]
mulsd xmm1, qword [ebp - 0x1f8]
addsd xmm1, qword [0xa17898]
divsd xmm0, xmm1
addsd xmm0, qword [ebp - 0x21c]
movsd qword [ebp - 0x21c], xmm0
movsd xmm0, qword [ebp - 0x21c]
comisd xmm0, xmmword [0xa17930]
jbe 0x4790cb
movsd xmm0, qword [0xa177f8]
mulsd xmm0, qword [ebp - 0x1f8]
movsd xmm1, qword [ebp - 0x21c]
subsd xmm1, xmm0
movsd qword [ebp - 0x21c], xmm1
jmp 0x479007
xorps xmm0, xmm0
comisd xmm0, xmmword [ebp - 0x21c]
jbe 0x479113
jae 0x47910d
outsb dx, byte [esi]
cmp byte [ecx + edx*2 + 0x41], dl
cmp byte [ebp + edi + 0x37], al
jnp 0x479150
pop esp
cmp al, 0x3f
jl 0x47915b
xor byte [eax + 0x76], 0x77
jnp 0x47916d
jbe 0x47916c
ja 0x47916e
jne 0x479174
jp 0x47916e
jae 0x47916f
jae 0x479171
je 0x479172
je 0x479172
jae 0x47917b
jnp 0x479176
jne 0x479181
jg 0x47917a
ja 0x479183
jg 0x479176
jno 0x47917f
jns 0x47917b
je 0x47917c
je 0x47917e
jne 0x479186
jl 0x47917c
jno 0x47918b
jg 0x47917f
jb 0x47918d
jg 0x4790f8
jmp 0x47b6fb
call 0xc7479139
test dword [esi + edi*8 - 0x6f110001], ebp
inc edi
add bh, al
test dword [eax - 0x22000002], ebp
nop
inc edi
add byte [ebx - 0x1537b], cl
dec dword [ecx - 0x19f7b]
dec dword [ebx - 0x1577b]
dec dword [ecx - 0x3937b]
inc esi
test dword [ebx - 2], eax
invalid
mov dword [ebp - 0x154], 0x4790ee
mov dword [ebp - 0x158], 0x4790dd
mov eax, dword [ebp - 0x154]
mov dword [ebp - 0x1a0], eax
mov eax, dword [ebp - 0x158]
mov dword [ebp - 0x394], eax
mov byte [ebp - 0x1bd], 0x15
and dword [ebp - 0x1ac], 0
jmp 0x47915c
mov eax, dword [ebp - 0x1ac]
inc eax
mov dword [ebp - 0x1ac], eax
test dword [esi + edi*8 - 1], edx
inc dword [eax - 0x77]
test dword [esi + edi*8 - 1], edx
inc dword [ecx - 0x1ab43]
inc dword [eax]
add dword [eax], eax
add byte [ebx + 0x15], dh
cmp dword [ebp - 0x1ac], 0x100
jae 0x47917d
mov eax, dword [ebp - 0x1ac]
invalid
dec dword [edx - 0x1ab73]
mov cl, byte [ebp - 0x1ac]
lea edx, [esi + edi*8 - 1]
invalid
invalid
dec dword [eax - 0x363fa74]
invalid
mov byte [ebp + eax - 0x364], cl
add eax, 0xfffffc9c
invalid
jmp 0x47914f
rol byte [ebx - 0x1d35b], cl
inc dword [eax]
and dword [ebp - 0x1d4], 0
movsd dword es:[edi], dword [esi]
sub al, 0xfe
invalid
add dh, al
test dword [ebx + 0xfffffe], ebx
mov byte [ebp - 0x165], 0
wait
invalid
mov dword [ebp - 0x1ac], 0xff
jmp 0x4791a4
push esp
invalid
mov eax, dword [ebp - 0x1ac]
dec eax
mov dword [ebp - 0x1ac], eax
cmp dword [ebp - 0x1ac], 0
jbe 0x479429
and dword [ebp - 0x24c], 0
mov dword [ebp - 0x238], 1
mov eax, dword [ebp - 0x238]
cmp eax, dword [ebp - 0x1ac]
jae 0x4791e2
mov eax, dword [ebp - 0x238]
lea eax, [eax + eax + 1]
mov dword [ebp - 0x238], eax
jmp 0x4791c2
mov eax, dword [ebp - 0x1d4]
mov dword [ebp - 0x398], eax
mov eax, dword [ebp - 0x398]
mov dword [ebp - 0x1bc], eax
cmp dword [ebp - 0x1bc], 0
je 0x479227
sub dword [ebp - 0x1bc], 1
je 0x479255
sub dword [ebp - 0x1bc], 1
je 0x479286
sub dword [ebp - 0x1bc], 1
je 0x4792b4
jmp 0x4792e2
movzx eax, byte [ebp - 0x165]
movzx ebx, byte [ebp + eax - 0x364]
movsd xmm0, qword [ebp - 0x21c]
call fcn.0099ba00
and eax, 0xff
add ebx, eax
mov byte [ebp - 0x165], bl
jmp 0x479309
movzx eax, byte [ebp - 0x165]
movzx ebx, byte [ebp + eax - 0x364]
movsd xmm0, qword [ebp - 0x21c]
call fcn.0099ba00
shr eax, 8
and eax, 0xff
add ebx, eax
mov byte [ebp - 0x165], bl
jmp 0x479309
movzx eax, byte [ebp - 0x165]
movzx ebx, byte [ebp + eax - 0x364]
movsd xmm0, qword [ebp - 0x21c]
call fcn.0099ba00
shr eax, 0x10
and eax, 0xff
add ebx, eax
mov byte [ebp - 0x165], bl
jmp 0x479309
movzx eax, byte [ebp - 0x165]
movzx ebx, byte [ebp + eax - 0x364]
movsd xmm0, qword [ebp - 0x21c]
call fcn.0099ba00
shr eax, 0x18
and eax, 0xff
add ebx, eax
mov byte [ebp - 0x165], bl
jmp 0x479309
movzx eax, byte [ebp - 0x165]
movzx eax, byte [ebp + eax - 0x364]
mov ecx, dword [ebp - 0x394]
add ecx, dword [ebp - 0x1d4]
movzx ecx, byte [ecx - 4]
add eax, ecx
mov byte [ebp - 0x165], al
mov eax, dword [ebp - 0x1d4]
inc eax
mov dword [ebp - 0x1d4], eax
movzx eax, byte [ebp - 0x1bd]
cmp dword [ebp - 0x1d4], eax
jb 0x479342
and dword [ebp - 0x1d4], 0
movzx eax, byte [ebp - 0x1bd]
movzx ecx, byte [ebp - 0x165]
add ecx, eax
mov byte [ebp - 0x165], cl
movzx eax, byte [ebp - 0x165]
and eax, dword [ebp - 0x238]
mov dword [ebp - 0x1c8], eax
mov eax, dword [ebp - 0x24c]
inc eax
mov dword [ebp - 0x24c], eax
cmp dword [ebp - 0x24c], 0xb
jbe 0x47937f
mov eax, dword [ebp - 0x1c8]
xor edx, edx
div dword [ebp - 0x1ac]
mov dword [ebp - 0x1c8], edx
mov eax, dword [ebp - 0x1c8]
cmp eax, dword [ebp - 0x1ac]
ja 0x4791e2
mov eax, dword [ebp - 0x1ac]
cmp eax, dword [ebp - 0x1c8]
je 0x479424
mov eax, dword [ebp - 0x1c8]
movzx eax, byte [ebp + eax - 0x364]
mov ecx, dword [ebp - 0x1ac]
movzx ecx, byte [ebp + ecx - 0x364]
xor ecx, eax
mov eax, dword [ebp - 0x1ac]
mov byte [ebp + eax - 0x364], cl
mov eax, dword [ebp - 0x1ac]
movzx eax, byte [ebp + eax - 0x364]
mov ecx, dword [ebp - 0x1c8]
movzx ecx, byte [ebp + ecx - 0x364]
xor ecx, eax
mov eax, dword [ebp - 0x1c8]
mov byte [ebp + eax - 0x364], cl
mov eax, dword [ebp - 0x1c8]
movzx eax, byte [ebp + eax - 0x364]
mov ecx, dword [ebp - 0x1ac]
movzx ecx, byte [ebp + ecx - 0x364]
xor ecx, eax
mov eax, dword [ebp - 0x1ac]
mov byte [ebp + eax - 0x364], cl
jmp 0x479197
xor eax, eax
inc eax
shl eax, 0
mov al, byte [ebp + eax - 0x364]
mov byte [ebp - 0x159], al
xor eax, eax
inc eax
imul eax, eax, 3
mov al, byte [ebp + eax - 0x364]
mov byte [ebp - 0x15a], al
xor eax, eax
inc eax
imul eax, eax, 5
mov al, byte [ebp + eax - 0x364]
mov byte [ebp - 0x15e], al
xor eax, eax
inc eax
imul eax, eax, 7
mov al, byte [ebp + eax - 0x364]
mov byte [ebp - 0x15b], al
movzx eax, byte [ebp - 0x165]
mov al, byte [ebp + eax - 0x364]
mov byte [ebp - 0x15c], al
mov dword [ebp - 0x378], 0x20
cmp dword [ebp - 0x378], 2
jle 0x47b6b2
mov eax, dword [ebp - 0x378]
and eax, 1
jne 0x47b6b2
and dword [ebp - 0x164], 0
and dword [ebp - 0x16c], 0
mov eax, dword [ebp - 0x16c]
inc eax
mov dword [ebp - 0x16c], eax
and dword [ebp - 0x19c], 0
mov eax, dword [ebp - 0x164]
shl eax, 1
mov dword [ebp - 0x19c], eax
and dword [ebp - 0x178], 0
mov eax, dword [ebp - 0x1a0]
add eax, dword [ebp - 0x19c]
movzx eax, byte [eax]
add eax, dword [ebp - 0x178]
mov dword [ebp - 0x178], eax
and dword [ebp - 0x17c], 0
mov eax, dword [ebp - 0x17c]
add eax, 0x6b
mov dword [ebp - 0x17c], eax
and dword [ebp - 0x18c], 0
mov eax, dword [ebp - 0x164]
lea eax, [eax + eax + 1]
mov dword [ebp - 0x18c], eax
and dword [ebp - 0x180], 0
mov eax, dword [ebp - 0x1a0]
add eax, dword [ebp - 0x18c]
movzx eax, byte [eax]
add eax, dword [ebp - 0x180]
mov dword [ebp - 0x180], eax
and dword [ebp - 0x184], 0
mov eax, dword [ebp - 0x184]
add eax, 0x73
mov dword [ebp - 0x184], eax
and dword [ebp - 0x174], 0
mov eax, dword [ebp - 0x178]
sub eax, dword [ebp - 0x17c]
add eax, dword [ebp - 0x174]
mov dword [ebp - 0x174], eax
and dword [ebp - 0x188], 0
mov eax, dword [ebp - 0x180]
sub eax, dword [ebp - 0x184]
add eax, dword [ebp - 0x188]
mov dword [ebp - 0x188], eax
and dword [ebp - 0x190], 0
mov eax, dword [ebp - 0x174]
shl eax, 4
mov dword [ebp - 0x190], eax
and dword [ebp - 0x194], 0
mov eax, dword [ebp - 0x188]
mov dword [ebp - 0x194], eax
and dword [ebp - 0x198], 0
mov eax, dword [ebp - 0x190]
or eax, dword [ebp - 0x194]
mov dword [ebp - 0x198], eax
mov byte [ebp - 0x15f], 0
mov al, byte [ebp - 0x198]
mov byte [ebp - 0x15f], al
mov byte [ebp - 0x15d], 0
movzx eax, byte [ebp - 0x15c]
mov al, byte [ebp + eax - 0x364]
mov byte [ebp - 0x15d], al
movzx eax, byte [ebp - 0x159]
movzx eax, byte [ebp + eax - 0x364]
movzx ecx, byte [ebp - 0x15a]
add ecx, eax
mov byte [ebp - 0x15a], cl
mov al, byte [ebp - 0x159]
add al, 1
mov byte [ebp - 0x159], al
movzx eax, byte [ebp - 0x15a]
movzx ecx, byte [ebp - 0x15c]
mov al, byte [ebp + eax - 0x364]
mov byte [ebp + ecx - 0x364], al
movzx eax, byte [ebp - 0x15b]
movzx ecx, byte [ebp - 0x15a]
mov al, byte [ebp + eax - 0x364]
mov byte [ebp + ecx - 0x364], al
movzx eax, byte [ebp - 0x159]
movzx ecx, byte [ebp - 0x15b]
mov al, byte [ebp + eax - 0x364]
mov byte [ebp + ecx - 0x364], al
movzx eax, byte [ebp - 0x159]
mov cl, byte [ebp - 0x15d]
mov byte [ebp + eax - 0x364], cl
movzx eax, byte [ebp - 0x15d]
movzx eax, byte [ebp + eax - 0x364]
movzx ecx, byte [ebp - 0x15e]
add ecx, eax
mov byte [ebp - 0x15e], cl
movzx eax, byte [ebp - 0x15f]
movzx ecx, byte [ebp - 0x15a]
movzx ecx, byte [ebp + ecx - 0x364]
movzx edx, byte [ebp - 0x159]
movzx edx, byte [ebp + edx - 0x364]
add ecx, edx
and ecx, 0xff
movzx ecx, byte [ebp + ecx - 0x364]
xor eax, ecx
movzx ecx, byte [ebp - 0x15b]
movzx ecx, byte [ebp + ecx - 0x364]
movzx edx, byte [ebp - 0x15c]
movzx edx, byte [ebp + edx - 0x364]
add ecx, edx
movzx edx, byte [ebp - 0x15e]
movzx edx, byte [ebp + edx - 0x364]
add ecx, edx
and ecx, 0xff
movzx ecx, byte [ebp + ecx - 0x364]
movzx ecx, byte [ebp + ecx - 0x364]
xor eax, ecx
mov byte [ebp - 0x15b], al
mov al, byte [ebp - 0x15f]
mov byte [ebp - 0x15c], al
mov al, byte [ebp - 0x15b]
mov byte [ebp - 0x160], al
cmp dword [ebp - 0x164], 0
jle 0x47977d
mov eax, dword [ebp - 0x164]
mov cl, byte [ebp - 0x160]
mov byte [ebp + eax - 0x15], cl
mov eax, dword [ebp - 0x164]
inc eax
mov dword [ebp - 0x164], eax
mov eax, dword [ebp - 0x16c]
inc eax
mov dword [ebp - 0x16c], eax
mov eax, dword [ebp - 0x164]
shl eax, 1
mov dword [ebp - 0x19c], eax
mov eax, dword [ebp - 0x1a0]
add eax, dword [ebp - 0x19c]
movzx eax, byte [eax]
mov dword [ebp - 0x178], eax
mov dword [ebp - 0x17c], 0x6b
mov eax, dword [ebp - 0x164]
lea eax, [eax + eax + 1]
mov dword [ebp - 0x18c], eax
mov eax, dword [ebp - 0x1a0]
add eax, dword [ebp - 0x18c]
movzx eax, byte [eax]
mov dword [ebp - 0x180], eax
mov dword [ebp - 0x184], 0x73
mov eax, dword [ebp - 0x178]
sub eax, dword [ebp - 0x17c]
mov dword [ebp - 0x174], eax
mov eax, dword [ebp - 0x180]
sub eax, dword [ebp - 0x184]
mov dword [ebp - 0x188], eax
mov eax, dword [ebp - 0x174]
shl eax, 4
mov dword [ebp - 0x190], eax
mov eax, dword [ebp - 0x188]
mov dword [ebp - 0x194], eax
mov eax, dword [ebp - 0x190]
or eax, dword [ebp - 0x194]
mov dword [ebp - 0x198], eax
mov al, byte [ebp - 0x198]
mov byte [ebp - 0x15f], al
movzx eax, byte [ebp - 0x15c]
mov al, byte [ebp + eax - 0x364]
mov byte [ebp - 0x15d], al
movzx eax, byte [ebp - 0x159]
movzx eax, byte [ebp + eax - 0x364]
movzx ecx, byte [ebp - 0x15a]
add ecx, eax
mov byte [ebp - 0x15a], cl
mov al, byte [ebp - 0x159]
add al, 1
mov byte [ebp - 0x159], al
movzx eax, byte [ebp - 0x15a]
movzx ecx, byte [ebp - 0x15c]
mov al, byte [ebp + eax - 0x364]
mov byte [ebp + ecx - 0x364], al
movzx eax, byte [ebp - 0x15b]
movzx ecx, byte [ebp - 0x15a]
mov al, byte [ebp + eax - 0x364]
mov byte [ebp + ecx - 0x364], al
movzx eax, byte [ebp - 0x159]
movzx ecx, byte [ebp - 0x15b]
mov al, byte [ebp + eax - 0x364]
mov byte [ebp + ecx - 0x364], al
movzx eax, byte [ebp - 0x159]
mov cl, byte [ebp - 0x15d]
mov byte [ebp + eax - 0x364], cl
movzx eax, byte [ebp - 0x15d]
movzx eax, byte [ebp + eax - 0x364]
movzx ecx, byte [ebp - 0x15e]
add ecx, eax
mov byte [ebp - 0x15e], cl
movzx eax, byte [ebp - 0x15f]
movzx ecx, byte [ebp - 0x15a]
movzx ecx, byte [ebp + ecx - 0x364]
movzx edx, byte [ebp - 0x159]
movzx edx, byte [ebp + edx - 0x364]
add ecx, edx
and ecx, 0xff
movzx ecx, byte [ebp + ecx - 0x364]
xor eax, ecx
movzx ecx, byte [ebp - 0x15b]
movzx ecx, byte [ebp + ecx - 0x364]
movzx edx, byte [ebp - 0x15c]
movzx edx, byte [ebp + edx - 0x364]
add ecx, edx
movzx edx, byte [ebp - 0x15e]
movzx edx, byte [ebp + edx - 0x364]
add ecx, edx
and ecx, 0xff
movzx ecx, byte [ebp + ecx - 0x364]
movzx ecx, byte [ebp + ecx - 0x364]
xor eax, ecx
mov byte [ebp - 0x15b], al
mov al, byte [ebp - 0x15f]
mov byte [ebp - 0x15c], al
mov al, byte [ebp - 0x15b]
mov byte [ebp - 0x160], al
cmp dword [ebp - 0x164], 0
jle 0x4799cd
mov eax, dword [ebp - 0x164]
mov cl, byte [ebp - 0x160]
mov byte [ebp + eax - 0x15], cl
mov eax, dword [ebp - 0x164]
inc eax
mov dword [ebp - 0x164], eax
mov eax, dword [ebp - 0x16c]
inc eax
mov dword [ebp - 0x16c], eax
mov eax, dword [ebp - 0x164]
shl eax, 1
mov dword [ebp - 0x19c], eax
mov eax, dword [ebp - 0x1a0]
add eax, dword [ebp - 0x19c]
movzx eax, byte [eax]
mov dword [ebp - 0x178], eax
mov dword [ebp - 0x17c], 0x6b
mov eax, dword [ebp - 0x164]
lea eax, [eax + eax + 1]
mov dword [ebp - 0x18c], eax
mov eax, dword [ebp - 0x1a0]
add eax, dword [ebp - 0x18c]
movzx eax, byte [eax]
mov dword [ebp - 0x180], eax
mov dword [ebp - 0x184], 0x73
mov eax, dword [ebp - 0x178]
sub eax, dword [ebp - 0x17c]
mov dword [ebp - 0x174], eax
mov eax, dword [ebp - 0x180]
sub eax, dword [ebp - 0x184]
mov dword [ebp - 0x188], eax
mov eax, dword [ebp - 0x174]
shl eax, 4
mov dword [ebp - 0x190], eax
mov eax, dword [ebp - 0x188]
mov dword [ebp - 0x194], eax
mov eax, dword [ebp - 0x190]
or eax, dword [ebp - 0x194]
mov dword [ebp - 0x198], eax
mov al, byte [ebp - 0x198]
mov byte [ebp - 0x15f], al
movzx eax, byte [ebp - 0x15c]
mov al, byte [ebp + eax - 0x364]
mov byte [ebp - 0x15d], al
movzx eax, byte [ebp - 0x159]
movzx eax, byte [ebp + eax - 0x364]
movzx ecx, byte [ebp - 0x15a]
add ecx, eax
mov byte [ebp - 0x15a], cl
mov al, byte [ebp - 0x159]
add al, 1
mov byte [ebp - 0x159], al
movzx eax, byte [ebp - 0x15a]
movzx ecx, byte [ebp - 0x15c]
mov al, byte [ebp + eax - 0x364]
mov byte [ebp + ecx - 0x364], al
movzx eax, byte [ebp - 0x15b]
movzx ecx, byte [ebp - 0x15a]
mov al, byte [ebp + eax - 0x364]
mov byte [ebp + ecx - 0x364], al
movzx eax, byte [ebp - 0x159]
movzx ecx, byte [ebp - 0x15b]
mov al, byte [ebp + eax - 0x364]
mov byte [ebp + ecx - 0x364], al
movzx eax, byte [ebp - 0x159]
mov cl, byte [ebp - 0x15d]
mov byte [ebp + eax - 0x364], cl
movzx eax, byte [ebp - 0x15d]
movzx eax, byte [ebp + eax - 0x364]
movzx ecx, byte [ebp - 0x15e]
add ecx, eax
mov byte [ebp - 0x15e], cl
movzx eax, byte [ebp - 0x15f]
movzx ecx, byte [ebp - 0x15a]
movzx ecx, byte [ebp + ecx - 0x364]
movzx edx, byte [ebp - 0x159]
movzx edx, byte [ebp + edx - 0x364]
add ecx, edx
and ecx, 0xff
movzx ecx, byte [ebp + ecx - 0x364]
xor eax, ecx
movzx ecx, byte [ebp - 0x15b]
movzx ecx, byte [ebp + ecx - 0x364]
movzx edx, byte [ebp - 0x15c]
movzx edx, byte [ebp + edx - 0x364]
add ecx, edx
movzx edx, byte [ebp - 0x15e]
movzx edx, byte [ebp + edx - 0x364]
add ecx, edx
and ecx, 0xff
movzx ecx, byte [ebp + ecx - 0x364]
movzx ecx, byte [ebp + ecx - 0x364]
xor eax, ecx
mov byte [ebp - 0x15b], al
mov al, byte [ebp - 0x15f]
mov byte [ebp - 0x15c], al
mov al, byte [ebp - 0x15b]
mov byte [ebp - 0x160], al
cmp dword [ebp - 0x164], 0
jle 0x479c1d
mov eax, dword [ebp - 0x164]
mov cl, byte [ebp - 0x160]
mov byte [ebp + eax - 0x15], cl
mov eax, dword [ebp - 0x16c]
add eax, 3
mov dword [ebp - 0x16c], eax
mov eax, dword [ebp - 0x164]
inc eax
mov dword [ebp - 0x25c], eax
jmp 0x479c48
mov eax, dword [ebp - 0x25c]
inc eax
mov dword [ebp - 0x25c], eax
mov eax, dword [ebp - 0x25c]
cmp eax, dword [ebp - 0x16c]
jge 0x479ea2
mov eax, dword [ebp - 0x164]
inc eax
mov dword [ebp - 0x164], eax
mov eax, dword [ebp - 0x164]
shl eax, 1
mov dword [ebp - 0x19c], eax
mov eax, dword [ebp - 0x1a0]
add eax, dword [ebp - 0x19c]
movzx eax, byte [eax]
mov dword [ebp - 0x178], eax
mov dword [ebp - 0x17c], 0x6b
mov eax, dword [ebp - 0x164]
lea eax, [eax + eax + 1]
mov dword [ebp - 0x18c], eax
mov eax, dword [ebp - 0x1a0]
add eax, dword [ebp - 0x18c]
movzx eax, byte [eax]
mov dword [ebp - 0x180], eax
mov dword [ebp - 0x184], 0x73
mov eax, dword [ebp - 0x178]
sub eax, dword [ebp - 0x17c]
mov dword [ebp - 0x174], eax
mov eax, dword [ebp - 0x180]
sub eax, dword [ebp - 0x184]
mov dword [ebp - 0x188], eax
mov eax, dword [ebp - 0x174]
shl eax, 4
mov dword [ebp - 0x190], eax
mov eax, dword [ebp - 0x188]
mov dword [ebp - 0x194], eax
mov eax, dword [ebp - 0x190]
or eax, dword [ebp - 0x194]
mov dword [ebp - 0x198], eax
mov al, byte [ebp - 0x198]
mov byte [ebp - 0x15f], al
movzx eax, byte [ebp - 0x15c]
mov al, byte [ebp + eax - 0x364]
mov byte [ebp - 0x15d], al
movzx eax, byte [ebp - 0x159]
movzx eax, byte [ebp + eax - 0x364]
movzx ecx, byte [ebp - 0x15a]
add ecx, eax
mov byte [ebp - 0x15a], cl
mov al, byte [ebp - 0x159]
add al, 1
mov byte [ebp - 0x159], al
movzx eax, byte [ebp - 0x15a]
movzx ecx, byte [ebp - 0x15c]
mov al, byte [ebp + eax - 0x364]
mov byte [ebp + ecx - 0x364], al
movzx eax, byte [ebp - 0x15b]
movzx ecx, byte [ebp - 0x15a]
mov al, byte [ebp + eax - 0x364]
mov byte [ebp + ecx - 0x364], al
movzx eax, byte [ebp - 0x159]
movzx ecx, byte [ebp - 0x15b]
mov al, byte [ebp + eax - 0x364]
mov byte [ebp + ecx - 0x364], al
movzx eax, byte [ebp - 0x159]
mov cl, byte [ebp - 0x15d]
mov byte [ebp + eax - 0x364], cl
movzx eax, byte [ebp - 0x15d]
movzx eax, byte [ebp + eax - 0x364]
movzx ecx, byte [ebp - 0x15e]
add ecx, eax
mov byte [ebp - 0x15e], cl
movzx eax, byte [ebp - 0x15f]
movzx ecx, byte [ebp - 0x15a]
movzx ecx, byte [ebp + ecx - 0x364]
movzx edx, byte [ebp - 0x159]
movzx edx, byte [ebp + edx - 0x364]
add ecx, edx
and ecx, 0xff
movzx ecx, byte [ebp + ecx - 0x364]
xor eax, ecx
movzx ecx, byte [ebp - 0x15b]
movzx ecx, byte [ebp + ecx - 0x364]
movzx edx, byte [ebp - 0x15c]
movzx edx, byte [ebp + edx - 0x364]
add ecx, edx
movzx edx, byte [ebp - 0x15e]
movzx edx, byte [ebp + edx - 0x364]
add ecx, edx
and ecx, 0xff
movzx ecx, byte [ebp + ecx - 0x364]
movzx ecx, byte [ebp + ecx - 0x364]
xor eax, ecx
mov byte [ebp - 0x15b], al
mov al, byte [ebp - 0x15f]
mov byte [ebp - 0x15c], al
mov al, byte [ebp - 0x15b]
mov byte [ebp - 0x160], al
cmp dword [ebp - 0x164], 0
jle 0x479e9d
mov eax, dword [ebp - 0x164]
mov cl, byte [ebp - 0x160]
mov byte [ebp + eax - 0x15], cl
jmp 0x479c3b
mov eax, dword [ebp - 0x16c]
inc eax
mov dword [ebp - 0x16c], eax
mov eax, dword [ebp - 0x164]
inc eax
mov dword [ebp - 0x164], eax
mov eax, dword [ebp - 0x16c]
inc eax
mov dword [ebp - 0x16c], eax
mov eax, dword [ebp - 0x164]
shl eax, 1
mov dword [ebp - 0x19c], eax
mov eax, dword [ebp - 0x1a0]
add eax, dword [ebp - 0x19c]
movzx eax, byte [eax]
mov dword [ebp - 0x178], eax
mov dword [ebp - 0x17c], 0x6b
mov eax, dword [ebp - 0x164]
lea eax, [eax + eax + 1]
mov dword [ebp - 0x18c], eax
mov eax, dword [ebp - 0x1a0]
add eax, dword [ebp - 0x18c]
movzx eax, byte [eax]
mov dword [ebp - 0x180], eax
mov dword [ebp - 0x184], 0x73
mov eax, dword [ebp - 0x178]
sub eax, dword [ebp - 0x17c]
mov dword [ebp - 0x174], eax
mov eax, dword [ebp - 0x180]
sub eax, dword [ebp - 0x184]
mov dword [ebp - 0x188], eax
mov eax, dword [ebp - 0x174]
shl eax, 4
mov dword [ebp - 0x190], eax
mov eax, dword [ebp - 0x188]
mov dword [ebp - 0x194], eax
mov eax, dword [ebp - 0x190]
or eax, dword [ebp - 0x194]
mov dword [ebp - 0x198], eax
mov al, byte [ebp - 0x198]
mov byte [ebp - 0x15f], al
movzx eax, byte [ebp - 0x15c]
mov al, byte [ebp + eax - 0x364]
mov byte [ebp - 0x15d], al
movzx eax, byte [ebp - 0x159]
movzx eax, byte [ebp + eax - 0x364]
movzx ecx, byte [ebp - 0x15a]
add ecx, eax
mov byte [ebp - 0x15a], cl
mov al, byte [ebp - 0x159]
add al, 1
mov byte [ebp - 0x159], al
movzx eax, byte [ebp - 0x15a]
movzx ecx, byte [ebp - 0x15c]
mov al, byte [ebp + eax - 0x364]
mov byte [ebp + ecx - 0x364], al
movzx eax, byte [ebp - 0x15b]
movzx ecx, byte [ebp - 0x15a]
mov al, byte [ebp + eax - 0x364]
mov byte [ebp + ecx - 0x364], al
movzx eax, byte [ebp - 0x159]
movzx ecx, byte [ebp - 0x15b]
mov al, byte [ebp + eax - 0x364]
mov byte [ebp + ecx - 0x364], al
movzx eax, byte [ebp - 0x159]
mov cl, byte [ebp - 0x15d]
mov byte [ebp + eax - 0x364], cl
movzx eax, byte [ebp - 0x15d]
movzx eax, byte [ebp + eax - 0x364]
movzx ecx, byte [ebp - 0x15e]
add ecx, eax
mov byte [ebp - 0x15e], cl
movzx eax, byte [ebp - 0x15f]
movzx ecx, byte [ebp - 0x15a]
movzx ecx, byte [ebp + ecx - 0x364]
movzx edx, byte [ebp - 0x159]
movzx edx, byte [ebp + edx - 0x364]
add ecx, edx
and ecx, 0xff
movzx ecx, byte [ebp + ecx - 0x364]
xor eax, ecx
movzx ecx, byte [ebp - 0x15b]
movzx ecx, byte [ebp + ecx - 0x364]
movzx edx, byte [ebp - 0x15c]
movzx edx, byte [ebp + edx - 0x364]
add ecx, edx
movzx edx, byte [ebp - 0x15e]
movzx edx, byte [ebp + edx - 0x364]
add ecx, edx
and ecx, 0xff
movzx ecx, byte [ebp + ecx - 0x364]
movzx ecx, byte [ebp + ecx - 0x364]
xor eax, ecx
mov byte [ebp - 0x15b], al
mov al, byte [ebp - 0x15f]
mov byte [ebp - 0x15c], al
mov al, byte [ebp - 0x15b]
mov byte [ebp - 0x160], al
cmp dword [ebp - 0x164], 0
jle 0x47a0ff
mov eax, dword [ebp - 0x164]
mov cl, byte [ebp - 0x160]
mov byte [ebp + eax - 0x15], cl
mov eax, dword [ebp - 0x164]
inc eax
mov dword [ebp - 0x164], eax
mov eax, dword [ebp - 0x16c]
inc eax
mov dword [ebp - 0x16c], eax
mov eax, dword [ebp - 0x164]
shl eax, 1
mov dword [ebp - 0x19c], eax
mov eax, dword [ebp - 0x1a0]
add eax, dword [ebp - 0x19c]
movzx eax, byte [eax]
mov dword [ebp - 0x178], eax
mov dword [ebp - 0x17c], 0x6b
mov eax, dword [ebp - 0x164]
lea eax, [eax + eax + 1]
mov dword [ebp - 0x18c], eax
movsd xmm0, qword [0xa17c80]
movsd qword [ebp - 0x200], xmm0
movsd xmm0, qword [0xa17bc0]
movsd qword [ebp - 0x214], xmm0
movsd xmm0, qword [0xa17ad8]
movsd qword [ebp - 0x248], xmm0
movsd xmm0, qword [ebp - 0x214]
subsd xmm0, qword [ebp - 0x248]
movsd qword [ebp - 0x214], xmm0
movsd xmm0, qword [ebp - 0x200]
addsd xmm0, qword [ebp - 0x248]
movsd qword [ebp - 0x200], xmm0
movsd xmm0, qword [ebp - 0x214]
subsd xmm0, qword [ebp - 0x248]
movsd qword [ebp - 0x214], xmm0
movsd xmm0, qword [ebp - 0x200]
comisd xmm0, xmmword [ebp - 0x214]
jbe 0x47a23f
movsd xmm0, qword [ebp - 0x248]
mulsd xmm0, qword [ebp - 0x214]
movsd qword [ebp - 0x248], xmm0
movsd xmm0, qword [ebp - 0x248]
mulsd xmm0, qword [ebp - 0x214]
movsd qword [ebp - 0x248], xmm0
movsd xmm0, qword [ebp - 0x200]
mulsd xmm0, qword [ebp - 0x248]
movsd qword [ebp - 0x200], xmm0
mov eax, dword [ebp - 0x1a0]
add eax, dword [ebp - 0x18c]
movzx eax, byte [eax]
mov dword [ebp - 0x180], eax
jmp 0x47a287
movsd xmm0, qword [ebp - 0x200]
mulsd xmm0, qword [ebp - 0x214]
movsd qword [ebp - 0x200], xmm0
movsd xmm0, qword [ebp - 0x200]
subsd xmm0, qword [ebp - 0x214]
movsd qword [ebp - 0x200], xmm0
movsd xmm0, qword [ebp - 0x200]
mulsd xmm0, qword [ebp - 0x214]
movsd qword [ebp - 0x200], xmm0
mov dword [ebp - 0x184], 0x73
mov eax, dword [ebp - 0x178]
sub eax, dword [ebp - 0x17c]
mov dword [ebp - 0x174], eax
mov eax, dword [ebp - 0x180]
sub eax, dword [ebp - 0x184]
mov dword [ebp - 0x188], eax
mov eax, dword [ebp - 0x174]
shl eax, 4
mov dword [ebp - 0x190], eax
mov eax, dword [ebp - 0x188]
mov dword [ebp - 0x194], eax
mov eax, dword [ebp - 0x190]
or eax, dword [ebp - 0x194]
mov dword [ebp - 0x198], eax
mov al, byte [ebp - 0x198]
mov byte [ebp - 0x15f], al
movss xmm0, dword [0xa17e18]
movss dword [ebp - 0x1a8], xmm0
movss xmm0, dword [0xa17dac]
movss dword [ebp - 0x1b4], xmm0
movss xmm0, dword [0xa17d18]
movss dword [ebp - 0x1a4], xmm0
movss xmm0, dword [ebp - 0x1a8]
mulss xmm0, dword [ebp - 0x1a4]
movss dword [ebp - 0x1a8], xmm0
movss xmm0, dword [ebp - 0x1a8]
subss xmm0, dword [ebp - 0x1a4]
movss dword [ebp - 0x1a8], xmm0
movss xmm0, dword [ebp - 0x1b4]
subss xmm0, dword [ebp - 0x1a4]
movss dword [ebp - 0x1b4], xmm0
movss xmm0, dword [ebp - 0x1b4]
comiss xmm0, dword [ebp - 0x1a8]
jbe 0x47a4b0
movss xmm0, dword [ebp - 0x1a4]
divss xmm0, dword [ebp - 0x1a8]
movss dword [ebp - 0x1a4], xmm0
movss xmm0, dword [ebp - 0x1b4]
subss xmm0, dword [ebp - 0x1a4]
movss dword [ebp - 0x1b4], xmm0
movss xmm0, dword [ebp - 0x1b4]
divss xmm0, dword [ebp - 0x1a4]
movss dword [ebp - 0x1b4], xmm0
movss xmm0, dword [ebp - 0x1a4]
addss xmm0, dword [ebp - 0x1a8]
movss dword [ebp - 0x1a4], xmm0
movss xmm0, dword [ebp - 0x1b4]
addss xmm0, dword [ebp - 0x1a4]
movss dword [ebp - 0x1b4], xmm0
movss xmm0, dword [ebp - 0x1a4]
mulss xmm0, dword [ebp - 0x1a8]
movss dword [ebp - 0x1a4], xmm0
movss xmm0, dword [ebp - 0x1a8]
comiss xmm0, dword [ebp - 0x1b4]
jbe 0x47a466
movss xmm0, dword [ebp - 0x1b4]
subss xmm0, dword [ebp - 0x1a8]
movss dword [ebp - 0x1b4], xmm0
movss xmm0, dword [ebp - 0x1a4]
mulss xmm0, dword [ebp - 0x1b4]
movss dword [ebp - 0x1a4], xmm0
movss xmm0, dword [ebp - 0x1a8]
addss xmm0, dword [ebp - 0x1a4]
movss dword [ebp - 0x1a8], xmm0
jmp 0x47a4ae
movss xmm0, dword [ebp - 0x1a4]
mulss xmm0, dword [ebp - 0x1b4]
movss dword [ebp - 0x1a4], xmm0
movss xmm0, dword [ebp - 0x1a8]
divss xmm0, dword [ebp - 0x1a4]
movss dword [ebp - 0x1a8], xmm0
movss xmm0, dword [ebp - 0x1b4]
addss xmm0, dword [ebp - 0x1a8]
movss dword [ebp - 0x1b4], xmm0
jmp 0x47a50c
movss xmm0, dword [ebp - 0x1a8]
addss xmm0, dword [ebp - 0x1a4]
movss dword [ebp - 0x1a8], xmm0
movss xmm0, dword [ebp - 0x1a8]
addss xmm0, dword [ebp - 0x1a4]
movss dword [ebp - 0x1a8], xmm0
movss xmm0, dword [ebp - 0x1a8]
mulss xmm0, dword [ebp - 0x1a4]
movss dword [ebp - 0x1a8], xmm0
movzx eax, byte [ebp - 0x15c]
mov al, byte [ebp + eax - 0x364]
mov byte [ebp - 0x15d], al
movzx eax, byte [ebp - 0x159]
movzx eax, byte [ebp + eax - 0x364]
movzx ecx, byte [ebp - 0x15a]
add ecx, eax
mov byte [ebp - 0x15a], cl
mov al, byte [ebp - 0x159]
add al, 1
mov byte [ebp - 0x159], al
movzx eax, byte [ebp - 0x15a]
movzx ecx, byte [ebp - 0x15c]
mov al, byte [ebp + eax - 0x364]
mov byte [ebp + ecx - 0x364], al
movzx eax, byte [ebp - 0x15b]
movzx ecx, byte [ebp - 0x15a]
mov al, byte [ebp + eax - 0x364]
mov byte [ebp + ecx - 0x364], al
movzx eax, byte [ebp - 0x159]
movzx ecx, byte [ebp - 0x15b]
mov al, byte [ebp + eax - 0x364]
mov byte [ebp + ecx - 0x364], al
movzx eax, byte [ebp - 0x159]
mov cl, byte [ebp - 0x15d]
mov byte [ebp + eax - 0x364], cl
movzx eax, byte [ebp - 0x15d]
movzx eax, byte [ebp + eax - 0x364]
movzx ecx, byte [ebp - 0x15e]
add ecx, eax
mov byte [ebp - 0x15e], cl
movzx eax, byte [ebp - 0x15f]
movzx ecx, byte [ebp - 0x15a]
movzx ecx, byte [ebp + ecx - 0x364]
movzx edx, byte [ebp - 0x159]
movzx edx, byte [ebp + edx - 0x364]
add ecx, edx
and ecx, 0xff
movzx ecx, byte [ebp + ecx - 0x364]
xor eax, ecx
movzx ecx, byte [ebp - 0x15b]
movzx ecx, byte [ebp + ecx - 0x364]
movzx edx, byte [ebp - 0x15c]
movzx edx, byte [ebp + edx - 0x364]
add ecx, edx
movzx edx, byte [ebp - 0x15e]
movzx edx, byte [ebp + edx - 0x364]
add ecx, edx
and ecx, 0xff
movzx ecx, byte [ebp + ecx - 0x364]
movzx ecx, byte [ebp + ecx - 0x364]
xor eax, ecx
mov byte [ebp - 0x15b], al
mov al, byte [ebp - 0x15f]
mov byte [ebp - 0x15c], al
mov al, byte [ebp - 0x15b]
mov byte [ebp - 0x160], al
cmp dword [ebp - 0x164], 0
jle 0x47a675
mov eax, dword [ebp - 0x164]
mov cl, byte [ebp - 0x160]
mov byte [ebp + eax - 0x15], cl
mov eax, dword [ebp - 0x164]
inc eax
mov dword [ebp - 0x164], eax
mov eax, dword [ebp - 0x16c]
inc eax
mov dword [ebp - 0x16c], eax
mov eax, dword [ebp - 0x164]
shl eax, 1
mov dword [ebp - 0x19c], eax
mov eax, dword [ebp - 0x1a0]
add eax, dword [ebp - 0x19c]
movzx eax, byte [eax]
mov dword [ebp - 0x178], eax
mov dword [ebp - 0x17c], 0x6b
mov eax, dword [ebp - 0x164]
lea eax, [eax + eax + 1]
mov dword [ebp - 0x18c], eax
mov eax, dword [ebp - 0x1a0]
add eax, dword [ebp - 0x18c]
movzx eax, byte [eax]
mov dword [ebp - 0x180], eax
mov dword [ebp - 0x184], 0x73
mov eax, dword [ebp - 0x178]
sub eax, dword [ebp - 0x17c]
mov dword [ebp - 0x174], eax
mov eax, dword [ebp - 0x180]
sub eax, dword [ebp - 0x184]
mov dword [ebp - 0x188], eax
mov eax, dword [ebp - 0x174]
shl eax, 4
mov dword [ebp - 0x190], eax
mov eax, dword [ebp - 0x188]
mov dword [ebp - 0x194], eax
mov eax, dword [ebp - 0x190]
or eax, dword [ebp - 0x194]
mov dword [ebp - 0x198], eax
mov al, byte [ebp - 0x198]
mov byte [ebp - 0x15f], al
movzx eax, byte [ebp - 0x15c]
mov al, byte [ebp + eax - 0x364]
mov byte [ebp - 0x15d], al
movzx eax, byte [ebp - 0x159]
movzx eax, byte [ebp + eax - 0x364]
movzx ecx, byte [ebp - 0x15a]
add ecx, eax
mov byte [ebp - 0x15a], cl
mov al, byte [ebp - 0x159]
add al, 1
mov byte [ebp - 0x159], al
movzx eax, byte [ebp - 0x15a]
movzx ecx, byte [ebp - 0x15c]
mov al, byte [ebp + eax - 0x364]
mov byte [ebp + ecx - 0x364], al
movzx eax, byte [ebp - 0x15b]
movzx ecx, byte [ebp - 0x15a]
mov al, byte [ebp + eax - 0x364]
mov byte [ebp + ecx - 0x364], al
movzx eax, byte [ebp - 0x159]
movzx ecx, byte [ebp - 0x15b]
mov al, byte [ebp + eax - 0x364]
mov byte [ebp + ecx - 0x364], al
movzx eax, byte [ebp - 0x159]
mov cl, byte [ebp - 0x15d]
mov byte [ebp + eax - 0x364], cl
movzx eax, byte [ebp - 0x15d]
movzx eax, byte [ebp + eax - 0x364]
movzx ecx, byte [ebp - 0x15e]
add ecx, eax
mov byte [ebp - 0x15e], cl
movzx eax, byte [ebp - 0x15f]
movzx ecx, byte [ebp - 0x15a]
movzx ecx, byte [ebp + ecx - 0x364]
movzx edx, byte [ebp - 0x159]
movzx edx, byte [ebp + edx - 0x364]
add ecx, edx
and ecx, 0xff
movzx ecx, byte [ebp + ecx - 0x364]
xor eax, ecx
movzx ecx, byte [ebp - 0x15b]
movzx ecx, byte [ebp + ecx - 0x364]
movzx edx, byte [ebp - 0x15c]
movzx edx, byte [ebp + edx - 0x364]
add ecx, edx
movzx edx, byte [ebp - 0x15e]
movzx edx, byte [ebp + edx - 0x364]
add ecx, edx
and ecx, 0xff
movzx ecx, byte [ebp + ecx - 0x364]
movzx ecx, byte [ebp + ecx - 0x364]
xor eax, ecx
mov byte [ebp - 0x15b], al
mov al, byte [ebp - 0x15f]
mov byte [ebp - 0x15c], al
mov al, byte [ebp - 0x15b]
mov byte [ebp - 0x160], al
cmp dword [ebp - 0x164], 0
jle 0x47a8c5
mov eax, dword [ebp - 0x164]
mov cl, byte [ebp - 0x160]
mov byte [ebp + eax - 0x15], cl
mov eax, dword [ebp - 0x16c]
add eax, 4
mov dword [ebp - 0x16c], eax
mov eax, dword [ebp - 0x164]
inc eax
mov dword [ebp - 0x258], eax
jmp 0x47a8f0
mov eax, dword [ebp - 0x258]
inc eax
mov dword [ebp - 0x258], eax
mov eax, dword [ebp - 0x258]
cmp eax, dword [ebp - 0x16c]
jge 0x47ac66
mov eax, dword [ebp - 0x164]
inc eax
mov dword [ebp - 0x164], eax
mov eax, dword [ebp - 0x164]
shl eax, 1
mov dword [ebp - 0x19c], eax
mov eax, dword [ebp - 0x1a0]
add eax, dword [ebp - 0x19c]
movzx eax, byte [eax]
mov dword [ebp - 0x178], eax
mov dword [ebp - 0x17c], 0x6b
mov eax, dword [ebp - 0x164]
lea eax, [eax + eax + 1]
mov dword [ebp - 0x18c], eax
mov eax, dword [ebp - 0x1a0]
add eax, dword [ebp - 0x18c]
movzx eax, byte [eax]
mov dword [ebp - 0x180], eax
mov dword [ebp - 0x184], 0x73
mov eax, dword [ebp - 0x178]
sub eax, dword [ebp - 0x17c]
mov dword [ebp - 0x174], eax
mov eax, dword [ebp - 0x180]
sub eax, dword [ebp - 0x184]
mov dword [ebp - 0x188], eax
mov eax, dword [ebp - 0x174]
shl eax, 4
mov dword [ebp - 0x190], eax
mov eax, dword [ebp - 0x188]
mov dword [ebp - 0x194], eax
mov eax, dword [ebp - 0x190]
or eax, dword [ebp - 0x194]
mov dword [ebp - 0x198], eax
mov al, byte [ebp - 0x198]
mov byte [ebp - 0x15f], al
movzx eax, byte [ebp - 0x15c]
mov al, byte [ebp + eax - 0x364]
mov byte [ebp - 0x15d], al
movzx eax, byte [ebp - 0x159]
movzx eax, byte [ebp + eax - 0x364]
movzx ecx, byte [ebp - 0x15a]
add ecx, eax
mov byte [ebp - 0x15a], cl
mov al, byte [ebp - 0x159]
add al, 1
mov byte [ebp - 0x159], al
movzx eax, byte [ebp - 0x15a]
movzx ecx, byte [ebp - 0x15c]
mov al, byte [ebp + eax - 0x364]
mov byte [ebp + ecx - 0x364], al
movzx eax, byte [ebp - 0x15b]
movzx ecx, byte [ebp - 0x15a]
mov al, byte [ebp + eax - 0x364]
mov byte [ebp + ecx - 0x364], al
movzx eax, byte [ebp - 0x159]
movzx ecx, byte [ebp - 0x15b]
mov al, byte [ebp + eax - 0x364]
mov byte [ebp + ecx - 0x364], al
movzx eax, byte [ebp - 0x159]
mov cl, byte [ebp - 0x15d]
mov byte [ebp + eax - 0x364], cl
movzx eax, byte [ebp - 0x15d]
movzx eax, byte [ebp + eax - 0x364]
movzx ecx, byte [ebp - 0x15e]
add ecx, eax
mov byte [ebp - 0x15e], cl
movzx eax, byte [ebp - 0x15f]
movzx ecx, byte [ebp - 0x15a]
movzx ecx, byte [ebp + ecx - 0x364]
movzx edx, byte [ebp - 0x159]
movzx edx, byte [ebp + edx - 0x364]
add ecx, edx
and ecx, 0xff
movzx ecx, byte [ebp + ecx - 0x364]
xor eax, ecx
movzx ecx, byte [ebp - 0x15b]
movzx ecx, byte [ebp + ecx - 0x364]
movzx edx, byte [ebp - 0x15c]
movzx edx, byte [ebp + edx - 0x364]
add ecx, edx
movzx edx, byte [ebp - 0x15e]
movzx edx, byte [ebp + edx - 0x364]
add ecx, edx
and ecx, 0xff
movzx ecx, byte [ebp + ecx - 0x364]
movzx ecx, byte [ebp + ecx - 0x364]
xor eax, ecx
mov byte [ebp - 0x15b], al
mov al, byte [ebp - 0x15f]
mov byte [ebp - 0x15c], al
movsd xmm0, qword [0xa17ca8]
movsd qword [ebp - 0x240], xmm0
movsd xmm0, qword [0xa17c08]
movsd qword [ebp - 0x1e0], xmm0
movsd xmm0, qword [0xa17b08]
movsd qword [ebp - 0x228], xmm0
movsd xmm0, qword [ebp - 0x1e0]
addsd xmm0, qword [ebp - 0x228]
movsd qword [ebp - 0x1e0], xmm0
movsd xmm0, qword [ebp - 0x1e0]
subsd xmm0, qword [ebp - 0x228]
movsd qword [ebp - 0x1e0], xmm0
movsd xmm0, qword [ebp - 0x240]
mulsd xmm0, qword [ebp - 0x228]
movsd qword [ebp - 0x240], xmm0
movsd xmm0, qword [ebp - 0x240]
comisd xmm0, xmmword [ebp - 0x228]
jbe 0x47ac00
movsd xmm0, qword [ebp - 0x1e0]
subsd xmm0, qword [ebp - 0x228]
movsd qword [ebp - 0x1e0], xmm0
movsd xmm0, qword [ebp - 0x1e0]
mulsd xmm0, qword [ebp - 0x228]
movsd qword [ebp - 0x1e0], xmm0
movsd xmm0, qword [ebp - 0x228]
mulsd xmm0, qword [ebp - 0x240]
movsd qword [ebp - 0x228], xmm0
mov al, byte [ebp - 0x15b]
mov byte [ebp - 0x160], al
jmp 0x47ac48
movsd xmm0, qword [ebp - 0x240]
mulsd xmm0, qword [ebp - 0x1e0]
movsd qword [ebp - 0x240], xmm0
movsd xmm0, qword [ebp - 0x240]
subsd xmm0, qword [ebp - 0x1e0]
movsd qword [ebp - 0x240], xmm0
movsd xmm0, qword [ebp - 0x1e0]
mulsd xmm0, qword [ebp - 0x228]
movsd qword [ebp - 0x1e0], xmm0
cmp dword [ebp - 0x164], 0
jle 0x47ac61
mov eax, dword [ebp - 0x164]
mov cl, byte [ebp - 0x160]
mov byte [ebp + eax - 0x15], cl
jmp 0x47a8e3
mov eax, dword [ebp - 0x16c]
inc eax
mov dword [ebp - 0x16c], eax
mov eax, dword [ebp - 0x164]
inc eax
mov dword [ebp - 0x164], eax
mov eax, dword [ebp - 0x16c]
inc eax
mov dword [ebp - 0x16c], eax
mov eax, dword [ebp - 0x164]
shl eax, 1
mov dword [ebp - 0x19c], eax
mov eax, dword [ebp - 0x1a0]
add eax, dword [ebp - 0x19c]
movzx eax, byte [eax]
mov dword [ebp - 0x178], eax
mov dword [ebp - 0x17c], 0x6b
mov eax, dword [ebp - 0x164]
lea eax, [eax + eax + 1]
mov dword [ebp - 0x18c], eax
mov eax, dword [ebp - 0x1a0]
add eax, dword [ebp - 0x18c]
movzx eax, byte [eax]
mov dword [ebp - 0x180], eax
mov dword [ebp - 0x184], 0x73
mov eax, dword [ebp - 0x178]
sub eax, dword [ebp - 0x17c]
mov dword [ebp - 0x174], eax
mov eax, dword [ebp - 0x180]
sub eax, dword [ebp - 0x184]
mov dword [ebp - 0x188], eax
mov eax, dword [ebp - 0x174]
shl eax, 4
mov dword [ebp - 0x190], eax
mov eax, dword [ebp - 0x188]
mov dword [ebp - 0x194], eax
mov eax, dword [ebp - 0x190]
or eax, dword [ebp - 0x194]
mov dword [ebp - 0x198], eax
mov al, byte [ebp - 0x198]
mov byte [ebp - 0x15f], al
movzx eax, byte [ebp - 0x15c]
mov al, byte [ebp + eax - 0x364]
mov byte [ebp - 0x15d], al
movzx eax, byte [ebp - 0x159]
movzx eax, byte [ebp + eax - 0x364]
movzx ecx, byte [ebp - 0x15a]
add ecx, eax
mov byte [ebp - 0x15a], cl
mov al, byte [ebp - 0x159]
add al, 1
mov byte [ebp - 0x159], al
movzx eax, byte [ebp - 0x15a]
movzx ecx, byte [ebp - 0x15c]
mov al, byte [ebp + eax - 0x364]
mov byte [ebp + ecx - 0x364], al
movzx eax, byte [ebp - 0x15b]
movzx ecx, byte [ebp - 0x15a]
mov al, byte [ebp + eax - 0x364]
mov byte [ebp + ecx - 0x364], al
movzx eax, byte [ebp - 0x159]
movzx ecx, byte [ebp - 0x15b]
mov al, byte [ebp + eax - 0x364]
mov byte [ebp + ecx - 0x364], al
movzx eax, byte [ebp - 0x159]
mov cl, byte [ebp - 0x15d]
mov byte [ebp + eax - 0x364], cl
movzx eax, byte [ebp - 0x15d]
movzx eax, byte [ebp + eax - 0x364]
movzx ecx, byte [ebp - 0x15e]
add ecx, eax
mov byte [ebp - 0x15e], cl
movzx eax, byte [ebp - 0x15f]
movzx ecx, byte [ebp - 0x15a]
movzx ecx, byte [ebp + ecx - 0x364]
movzx edx, byte [ebp - 0x159]
movzx edx, byte [ebp + edx - 0x364]
add ecx, edx
and ecx, 0xff
movzx ecx, byte [ebp + ecx - 0x364]
xor eax, ecx
movzx ecx, byte [ebp - 0x15b]
movzx ecx, byte [ebp + ecx - 0x364]
movzx edx, byte [ebp - 0x15c]
movzx edx, byte [ebp + edx - 0x364]
add ecx, edx
movzx edx, byte [ebp - 0x15e]
movzx edx, byte [ebp + edx - 0x364]
add ecx, edx
and ecx, 0xff
movzx ecx, byte [ebp + ecx - 0x364]
movzx ecx, byte [ebp + ecx - 0x364]
xor eax, ecx
mov byte [ebp - 0x15b], al
mov al, byte [ebp - 0x15f]
mov byte [ebp - 0x15c], al
mov al, byte [ebp - 0x15b]
mov byte [ebp - 0x160], al
cmp dword [ebp - 0x164], 0
jle 0x47aec3
mov eax, dword [ebp - 0x164]
mov cl, byte [ebp - 0x160]
mov byte [ebp + eax - 0x15], cl
mov eax, dword [ebp - 0x164]
inc eax
mov dword [ebp - 0x164], eax
mov eax, dword [ebp - 0x16c]
inc eax
mov dword [ebp - 0x16c], eax
mov eax, dword [ebp - 0x164]
shl eax, 1
mov dword [ebp - 0x19c], eax
mov eax, dword [ebp - 0x1a0]
add eax, dword [ebp - 0x19c]
movzx eax, byte [eax]
mov dword [ebp - 0x178], eax
mov dword [ebp - 0x17c], 0x6b
mov eax, dword [ebp - 0x164]
lea eax, [eax + eax + 1]
mov dword [ebp - 0x18c], eax
mov eax, dword [ebp - 0x1a0]
add eax, dword [ebp - 0x18c]
movzx eax, byte [eax]
mov dword [ebp - 0x180], eax
mov dword [ebp - 0x184], 0x73
mov eax, dword [ebp - 0x178]
sub eax, dword [ebp - 0x17c]
mov dword [ebp - 0x174], eax
mov eax, dword [ebp - 0x180]
sub eax, dword [ebp - 0x184]
mov dword [ebp - 0x188], eax
mov eax, dword [ebp - 0x174]
shl eax, 4
mov dword [ebp - 0x190], eax
mov eax, dword [ebp - 0x188]
mov dword [ebp - 0x194], eax
mov eax, dword [ebp - 0x190]
or eax, dword [ebp - 0x194]
mov dword [ebp - 0x198], eax
mov al, byte [ebp - 0x198]
mov byte [ebp - 0x15f], al
movzx eax, byte [ebp - 0x15c]
mov al, byte [ebp + eax - 0x364]
mov byte [ebp - 0x15d], al
movzx eax, byte [ebp - 0x159]
movzx eax, byte [ebp + eax - 0x364]
movzx ecx, byte [ebp - 0x15a]
add ecx, eax
mov byte [ebp - 0x15a], cl
mov al, byte [ebp - 0x159]
add al, 1
mov byte [ebp - 0x159], al
movzx eax, byte [ebp - 0x15a]
movzx ecx, byte [ebp - 0x15c]
mov al, byte [ebp + eax - 0x364]
mov byte [ebp + ecx - 0x364], al
movzx eax, byte [ebp - 0x15b]
movzx ecx, byte [ebp - 0x15a]
mov al, byte [ebp + eax - 0x364]
mov byte [ebp + ecx - 0x364], al
movzx eax, byte [ebp - 0x159]
movzx ecx, byte [ebp - 0x15b]
mov al, byte [ebp + eax - 0x364]
mov byte [ebp + ecx - 0x364], al
movzx eax, byte [ebp - 0x159]
mov cl, byte [ebp - 0x15d]
mov byte [ebp + eax - 0x364], cl
movzx eax, byte [ebp - 0x15d]
movzx eax, byte [ebp + eax - 0x364]
movzx ecx, byte [ebp - 0x15e]
add ecx, eax
mov byte [ebp - 0x15e], cl
movzx eax, byte [ebp - 0x15f]
movzx ecx, byte [ebp - 0x15a]
movzx ecx, byte [ebp + ecx - 0x364]
movzx edx, byte [ebp - 0x159]
movzx edx, byte [ebp + edx - 0x364]
add ecx, edx
and ecx, 0xff
movzx ecx, byte [ebp + ecx - 0x364]
xor eax, ecx
movzx ecx, byte [ebp - 0x15b]
movzx ecx, byte [ebp + ecx - 0x364]
movzx edx, byte [ebp - 0x15c]
movzx edx, byte [ebp + edx - 0x364]
add ecx, edx
movzx edx, byte [ebp - 0x15e]
movzx edx, byte [ebp + edx - 0x364]
add ecx, edx
and ecx, 0xff
movzx ecx, byte [ebp + ecx - 0x364]
movzx ecx, byte [ebp + ecx - 0x364]
xor eax, ecx
mov byte [ebp - 0x15b], al
mov al, byte [ebp - 0x15f]
mov byte [ebp - 0x15c], al
mov al, byte [ebp - 0x15b]
mov byte [ebp - 0x160], al
cmp dword [ebp - 0x164], 0
jle 0x47b113
mov eax, dword [ebp - 0x164]
mov cl, byte [ebp - 0x160]
mov byte [ebp + eax - 0x15], cl
mov eax, dword [ebp - 0x164]
inc eax
mov dword [ebp - 0x164], eax
mov eax, dword [ebp - 0x16c]
inc eax
mov dword [ebp - 0x16c], eax
mov eax, dword [ebp - 0x164]
shl eax, 1
mov dword [ebp - 0x19c], eax
movsd xmm0, qword [0xa17c88]
movsd qword [ebp - 0x208], xmm0
movsd xmm0, qword [0xa17bf0]
movsd qword [ebp - 0x1e8], xmm0
movsd xmm0, qword [0xa17af8]
movsd qword [ebp - 0x264], xmm0
movsd xmm0, qword [ebp - 0x1e8]
subsd xmm0, qword [ebp - 0x264]
movsd qword [ebp - 0x1e8], xmm0
movsd xmm0, qword [ebp - 0x1e8]
addsd xmm0, qword [ebp - 0x264]
movsd qword [ebp - 0x1e8], xmm0
movsd xmm0, qword [ebp - 0x208]
addsd xmm0, qword [ebp - 0x264]
movsd qword [ebp - 0x208], xmm0
movsd xmm0, qword [ebp - 0x264]
comisd xmm0, xmmword [ebp - 0x208]
jbe 0x47b20f
movsd xmm0, qword [ebp - 0x1e8]
subsd xmm0, qword [ebp - 0x208]
movsd qword [ebp - 0x1e8], xmm0
movsd xmm0, qword [ebp - 0x1e8]
addsd xmm0, qword [ebp - 0x208]
movsd qword [ebp - 0x1e8], xmm0
movsd xmm0, qword [ebp - 0x208]
addsd xmm0, qword [ebp - 0x264]
movsd qword [ebp - 0x208], xmm0
jmp 0x47b26c
movsd xmm0, qword [ebp - 0x208]
addsd xmm0, qword [ebp - 0x1e8]
movsd qword [ebp - 0x208], xmm0
movsd xmm0, qword [ebp - 0x208]
subsd xmm0, qword [ebp - 0x1e8]
movsd qword [ebp - 0x208], xmm0
movsd xmm0, qword [ebp - 0x1e8]
addsd xmm0, qword [ebp - 0x264]
movsd qword [ebp - 0x1e8], xmm0
mov eax, dword [ebp - 0x1a0]
add eax, dword [ebp - 0x19c]
movzx eax, byte [eax]
mov dword [ebp - 0x178], eax
mov dword [ebp - 0x17c], 0x6b
mov eax, dword [ebp - 0x164]
lea eax, [eax + eax + 1]
mov dword [ebp - 0x18c], eax
mov eax, dword [ebp - 0x1a0]
add eax, dword [ebp - 0x18c]
movzx eax, byte [eax]
mov dword [ebp - 0x180], eax
mov dword [ebp - 0x184], 0x73
mov eax, dword [ebp - 0x178]
sub eax, dword [ebp - 0x17c]
mov dword [ebp - 0x174], eax
mov eax, dword [ebp - 0x180]
sub eax, dword [ebp - 0x184]
mov dword [ebp - 0x188], eax
mov eax, dword [ebp - 0x174]
shl eax, 4
mov dword [ebp - 0x190], eax
mov eax, dword [ebp - 0x188]
mov dword [ebp - 0x194], eax
mov eax, dword [ebp - 0x190]
or eax, dword [ebp - 0x194]
mov dword [ebp - 0x198], eax
mov al, byte [ebp - 0x198]
mov byte [ebp - 0x15f], al
movzx eax, byte [ebp - 0x15c]
mov al, byte [ebp + eax - 0x364]
mov byte [ebp - 0x15d], al
movzx eax, byte [ebp - 0x159]
movzx eax, byte [ebp + eax - 0x364]
movzx ecx, byte [ebp - 0x15a]
add ecx, eax
mov byte [ebp - 0x15a], cl
mov al, byte [ebp - 0x159]
add al, 1
mov byte [ebp - 0x159], al
movss xmm0, dword [0xa17e30]
movss dword [ebp - 0x1b0], xmm0
movss xmm0, dword [0xa17ddc]
movss dword [ebp - 0x170], xmm0
movss xmm0, dword [0xa17d34]
movss dword [ebp - 0x1b8], xmm0
movss xmm0, dword [ebp - 0x170]
addss xmm0, dword [ebp - 0x1b8]
movss dword [ebp - 0x170], xmm0
movss xmm0, dword [ebp - 0x170]
subss xmm0, dword [ebp - 0x1b8]
movss dword [ebp - 0x170], xmm0
movss xmm0, dword [ebp - 0x170]
addss xmm0, dword [ebp - 0x1b8]
movss dword [ebp - 0x170], xmm0
movss xmm0, dword [ebp - 0x170]
comiss xmm0, dword [ebp - 0x1b8]
jbe 0x47b434
movss xmm0, dword [ebp - 0x1b0]
addss xmm0, dword [ebp - 0x170]
movss dword [ebp - 0x1b0], xmm0
movss xmm0, dword [ebp - 0x1b0]
addss xmm0, dword [ebp - 0x170]
movss dword [ebp - 0x1b0], xmm0
movss xmm0, dword [ebp - 0x170]
subss xmm0, dword [ebp - 0x1b8]
movss dword [ebp - 0x170], xmm0
movzx eax, byte [ebp - 0x15a]
movzx ecx, byte [ebp - 0x15c]
mov al, byte [ebp + eax - 0x364]
mov byte [ebp + ecx - 0x364], al
jmp 0x47b567
movss xmm0, dword [ebp - 0x1b8]
mulss xmm0, dword [ebp - 0x170]
movss dword [ebp - 0x1b8], xmm0
movss xmm0, dword [ebp - 0x1b0]
subss xmm0, dword [ebp - 0x1b8]
movss dword [ebp - 0x1b0], xmm0
movss xmm0, dword [ebp - 0x170]
addss xmm0, dword [ebp - 0x1b0]
movss dword [ebp - 0x170], xmm0
movss xmm0, dword [ebp - 0x170]
subss xmm0, dword [ebp - 0x1b8]
movss dword [ebp - 0x170], xmm0
movss xmm0, dword [ebp - 0x170]
mulss xmm0, dword [ebp - 0x1b8]
movss dword [ebp - 0x170], xmm0
movss xmm0, dword [ebp - 0x1b0]
addss xmm0, dword [ebp - 0x170]
movss dword [ebp - 0x1b0], xmm0
movss xmm0, dword [ebp - 0x1b0]
comiss xmm0, dword [ebp - 0x1b8]
jbe 0x47b51f
movss xmm0, dword [ebp - 0x170]
divss xmm0, dword [ebp - 0x1b0]
movss dword [ebp - 0x170], xmm0
movss xmm0, dword [ebp - 0x170]
divss xmm0, dword [ebp - 0x1b0]
movss dword [ebp - 0x170], xmm0
movss xmm0, dword [ebp - 0x1b0]
mulss xmm0, dword [ebp - 0x1b8]
movss dword [ebp - 0x1b0], xmm0
jmp 0x47b567
movss xmm0, dword [ebp - 0x1b0]
divss xmm0, dword [ebp - 0x1b8]
movss dword [ebp - 0x1b0], xmm0
movss xmm0, dword [ebp - 0x1b8]
divss xmm0, dword [ebp - 0x170]
movss dword [ebp - 0x1b8], xmm0
movss xmm0, dword [ebp - 0x170]
subss xmm0, dword [ebp - 0x1b0]
movss dword [ebp - 0x170], xmm0
movzx eax, byte [ebp - 0x15b]
movzx ecx, byte [ebp - 0x15a]
mov al, byte [ebp + eax - 0x364]
mov byte [ebp + ecx - 0x364], al
movzx eax, byte [ebp - 0x159]
movzx ecx, byte [ebp - 0x15b]
mov al, byte [ebp + eax - 0x364]
mov byte [ebp + ecx - 0x364], al
movzx eax, byte [ebp - 0x159]
mov cl, byte [ebp - 0x15d]
mov byte [ebp + eax - 0x364], cl
movzx eax, byte [ebp - 0x15d]
movzx eax, byte [ebp + eax - 0x364]
movzx ecx, byte [ebp - 0x15e]
add ecx, eax
mov byte [ebp - 0x15e], cl
movzx eax, byte [ebp - 0x15f]
movzx ecx, byte [ebp - 0x15a]
movzx ecx, byte [ebp + ecx - 0x364]
movzx edx, byte [ebp - 0x159]
movzx edx, byte [ebp + edx - 0x364]
add ecx, edx
and ecx, 0xff
movzx ecx, byte [ebp + ecx - 0x364]
xor eax, ecx
movzx ecx, byte [ebp - 0x15b]
movzx ecx, byte [ebp + ecx - 0x364]
movzx edx, byte [ebp - 0x15c]
movzx edx, byte [ebp + edx - 0x364]
add ecx, edx
movzx edx, byte [ebp - 0x15e]
movzx edx, byte [ebp + edx - 0x364]
add ecx, edx
and ecx, 0xff
movzx ecx, byte [ebp + ecx - 0x364]
movzx ecx, byte [ebp + ecx - 0x364]
xor eax, ecx
mov byte [ebp - 0x15b], al
mov al, byte [ebp - 0x15f]
mov byte [ebp - 0x15c], al
mov al, byte [ebp - 0x15b]
mov byte [ebp - 0x160], al
cmp dword [ebp - 0x164], 0
jle 0x47b688
mov eax, dword [ebp - 0x164]
mov cl, byte [ebp - 0x160]
mov byte [ebp + eax - 0x15], cl
xor eax, eax
inc eax
imul eax, eax, 0xf
mov dword [ebp - 0x37c], eax
cmp dword [ebp - 0x37c], 0x10
jae 0x47b69f
jmp 0x47b6a5
call fcn.0099b828
nop
mov eax, dword [ebp - 0x37c]
mov byte [ebp + eax - 0x14], 0
jmp 0x47b6fb
and dword [ebp - 0x230], 0
jmp 0x47b6c8
mov eax, dword [ebp - 0x230]
inc eax
mov dword [ebp - 0x230], eax
cmp dword [ebp - 0x230], 0x10
jge 0x47b6fb
mov eax, dword [ebp - 0x230]
mov dword [ebp - 0x380], eax
cmp dword [ebp - 0x380], 0x10
jae 0x47b6e8
jmp 0x47b6ee
call fcn.0099b828
nop
mov eax, dword [ebp - 0x380]
mov byte [ebp + eax - 0x14], 0
jmp 0x47b6bb
lea eax, [ebp - 0x14]
mov dword [ebp - 0x1ec], eax
mov eax, dword [ebp - 0x1ec]
mov dword [ebp - 0x370], eax
mov eax, dword [ebp - 0x1ec]
mov al, byte [eax]
mov byte [ebp - 0x1c9], al
inc dword [ebp - 0x1ec]
cmp byte [ebp - 0x1c9], 0
jne 0x47b710
mov eax, dword [ebp - 0x1ec]
sub eax, dword [ebp - 0x370]
mov ecx, dword [ebp - 0x370]
mov dword [ebp - 0x390], ecx
mov dword [ebp - 0x38c], eax
lea eax, [ebp - 0x138]
dec eax
mov dword [ebp - 0x22c], eax
mov eax, dword [ebp - 0x22c]
mov al, byte [eax + 1]
mov byte [ebp - 0x1cc], al
inc dword [ebp - 0x22c]
cmp byte [ebp - 0x1cc], 0
jne 0x47b758
mov edi, dword [ebp - 0x22c]
mov esi, dword [ebp - 0x390]
mov eax, dword [ebp - 0x38c]
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 - 0x38]
mov dword [ebp - 0x20c], eax
mov eax, dword [ebp - 0x20c]
mov dword [ebp - 0x374], eax
mov eax, dword [ebp - 0x20c]
mov al, byte [eax]
mov byte [ebp - 0x1cb], al
inc dword [ebp - 0x20c]
cmp byte [ebp - 0x1cb], 0
jne 0x47b7ab
mov eax, dword [ebp - 0x20c]
sub eax, dword [ebp - 0x374]
mov ecx, dword [ebp - 0x374]
mov dword [ebp - 0x388], ecx
mov dword [ebp - 0x3ac], eax
lea eax, [ebp - 0x138]
dec eax
mov dword [ebp - 0x234], eax
mov eax, dword [ebp - 0x234]
mov al, byte [eax + 1]
mov byte [ebp - 0x1ca], al
inc dword [ebp - 0x234]
cmp byte [ebp - 0x1ca], 0
jne 0x47b7f3
mov edi, dword [ebp - 0x234]
mov esi, dword [ebp - 0x388]
mov eax, dword [ebp - 0x3ac]
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 - 0x138]
push eax
mov eax, dword [ebp - 0x250]
call dword [eax + 0x18]
mov dword [ebp - 0x1d8], eax
cmp dword [ebp - 0x1d8], 0xffffffff
jne 0x47b867
call dword [sym.imp.KERNEL32.dll_GetLastError]
jmp 0x47ba72
xor eax, eax
lea edi, [ebp - 0x150]
stosd dword es:[edi], eax
stosd dword es:[edi], eax
stosd dword es:[edi], eax
and dword [ebp - 0x150], 0
and dword [ebp - 0x14c], 0
xor eax, eax
mov dword [ebp - 0x144], eax
mov dword [ebp - 0x140], eax
and dword [ebp - 0x13c], 0
push 0
lea eax, [ebp - 0x13c]
push eax
push 8
lea eax, [ebp - 0x144]
push eax
push 0xc
lea eax, [ebp - 0x150]
push eax
push 0x2d1400
push dword [ebp - 0x1d8]
mov eax, dword [ebp - 0x250]
call dword [eax + 8]
test eax, eax
jne 0x47b8eb
call dword [sym.imp.KERNEL32.dll_GetLastError]
mov dword [ebp - 0x1f0], eax
push dword [ebp - 0x1d8]
call dword [sym.imp.KERNEL32.dll_CloseHandle]
mov eax, dword [ebp - 0x1f0]
jmp 0x47ba72
mov eax, dword [ebp - 0x140]
mov dword [ebp - 0x254], eax
push dword [ebp - 0x254]
call fcn.0099b56b
pop ecx
mov dword [ebp - 0x3b0], eax
mov eax, dword [ebp - 0x3b0]
mov dword [ebp - 0x1c4], eax
push dword [ebp - 0x254]
push 0
push dword [ebp - 0x1c4]
call fcn.009efbb0
add esp, 0xc
push 0
lea eax, [ebp - 0x13c]
push eax
push dword [ebp - 0x254]
push dword [ebp - 0x1c4]
push 0xc
lea eax, [ebp - 0x150]
push eax
push 0x2d1400
push dword [ebp - 0x1d8]
mov eax, dword [ebp - 0x250]
call dword [eax + 8]
test eax, eax
jne 0x47b9c4
call dword [sym.imp.KERNEL32.dll_GetLastError]
mov dword [ebp - 0x1f0], eax
mov eax, dword [ebp - 0x1c4]
mov dword [ebp - 0x384], eax
push dword [ebp - 0x384]
call fcn.0099b574
pop ecx
cmp dword [ebp - 0x384], 0
jne 0x47b997
and dword [ebp - 0x3a8], 0
jmp 0x47b9ad
mov dword [ebp - 0x1c4], 0x8123
mov eax, dword [ebp - 0x1c4]
mov dword [ebp - 0x3a8], eax
push dword [ebp - 0x1d8]
call dword [sym.imp.KERNEL32.dll_CloseHandle]
mov eax, dword [ebp - 0x1f0]
jmp 0x47ba72
mov eax, dword [ebp - 0x1c4]
mov dword [ebp - 0x3a4], eax
mov eax, dword [ebp - 0x3a4]
mov eax, dword [eax + 0x18]
mov dword [ebp - 0x368], eax
cmp dword [ebp - 0x368], 0
je 0x47ba20
mov eax, dword [ebp - 0x1c4]
add eax, dword [ebp - 0x368]
push eax
lea ecx, [ebp - 0x3c8]
call fcn.0041a3b4
mov dword [ebp - 0x3a0], eax
push dword [ebp - 0x3a0]
mov ecx, dword [ebp + 0xc]
call fcn.0046c28b
lea ecx, [ebp - 0x3c8]
call fcn.0041a7da
nop
mov eax, dword [ebp - 0x1c4]
mov dword [ebp - 0x36c], eax
push dword [ebp - 0x36c]
call fcn.0099b574
pop ecx
cmp dword [ebp - 0x36c], 0
jne 0x47ba4a
and dword [ebp - 0x39c], 0
jmp 0x47ba60
mov dword [ebp - 0x1c4], 0x8123
mov eax, dword [ebp - 0x1c4]
mov dword [ebp - 0x39c], eax
push dword [ebp - 0x1d8]
call dword [sym.imp.KERNEL32.dll_CloseHandle]
mov eax, dword [ebp - 0x1f0]
pop edi
pop esi
pop ebx
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.0099b2f9
leave
ret 8