Function at 0x4265a9
Capabilities:
Encode data using base64

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x60
push ebx
push esi
mov esi, eax
mov eax, dword [esi]
mov dword [ebp - 0x10], eax
mov eax, dword [esi + 4]
push edi
mov edi, dword [esi + 0x18]
mov ecx, dword [edi + 0x3c]
add edi, 0xc
mov dword [ebp - 0x14], eax
mov eax, dword [edi + 0x1c]
mov dword [ebp - 0xc], eax
mov eax, dword [edi + 0x18]
mov dword [ebp - 8], eax
mov eax, dword [edi + 0x2c]
mov dword [ebp - 0x30], edi
mov dword [ebp - 0x18], ecx
cmp ecx, eax
jae 0x426536
sub eax, ecx
dec eax
jmp 0x42653b
mov eax, dword [edi + 0x28]
sub eax, ecx
mov dword [ebp - 0x38], 0x4f
mov dword [ebp - 0x38], 0x47
mov dword [ebp - 0x20], 0x15
mov dword [ebp - 0x28], eax
mov eax, dword [ebp - 0x20]
mov ecx, dword [ebp - 0x38]
cmp ecx, eax
jle 0x4275da
mov eax, dword [ebp - 0x20]
mov ecx, dword [ebp - 0x20]
cmp eax, ecx
je 0x4275da
mov eax, dword [ebp - 0x38]
mov ecx, dword [ebp - 0x20]
imul eax, eax, 0x29
lea eax, [eax + ecx - 0x12]
add eax, dword [ebp - 0x38]
jmp 0x4275d7
fld qword [0x473a60]
fld qword [0x473a58]
fld qword [0x473960]
fld qword [0x473980]
fld qword [0x473a68]
jmp dword [eax*4 + 0x427bf6]
push 3
pop ebx
jmp 0x4265d4
cmp dword [ebp - 0x14], 0
je 0x4275ec
mov eax, dword [ebp - 0x10]
movzx eax, byte [eax]
mov ecx, dword [ebp - 8]
and dword [ebp + 8], 0
dec dword [ebp - 0x14]
shl eax, cl
or dword [ebp - 0xc], eax
inc dword [ebp - 0x10]
add dword [ebp - 8], 8
cmp dword [ebp - 8], ebx
jb 0x4265ae
mov eax, dword [ebp - 0xc]
fld qword [0x473a38]
and eax, 7
mov ecx, eax
and ecx, 1
mov dword [edi + 0x14], ecx
fstp qword [ebp - 0x54]
fld qword [0x473a30]
shr eax, 1
sub eax, 0
fstp qword [ebp - 0x24]
fld qword [0x473a28]
fstp qword [ebp - 0x3c]
fld qword [0x473988]
fstp qword [ebp - 0x5c]
fld qword [0x473930]
fstp qword [ebp - 0x3c]
fld qword [ebp - 0x5c]
fsub qword [ebp - 0x54]
fstp qword [ebp - 0x3c]
fld qword [ebp - 0x24]
fmul qword [0x473a20]
fstp qword [ebp - 0x24]
fld qword [ebp - 0x3c]
fadd qword [0x473a18]
fadd qword [ebp - 0x54]
fld qword [ebp - 0x54]
fdiv st(6)
fsubp st(1)
fstp qword [ebp - 0x3c]
fld qword [ebp - 0x3c]
fadd qword [ebp - 0x3c]
fsub st(4)
fld qword [ebp - 0x3c]
fmul qword [ebp - 0x3c]
fsubp st(1)
fadd qword [0x473a10]
fld qword [ebp - 0x3c]
fdiv qword [0x473a08]
fsubp st(1)
fstp qword [ebp - 0x3c]
je 0x426876
dec eax
je 0x42669d
dec eax
fstp st(0)
fstp st(3)
fstp st(1)
je 0x42668a
dec eax
je 0x42760e
fstp st(0)
fstp st(0)
jmp 0x4275da
shr dword [ebp - 0xc], 3
fstp st(0)
sub dword [ebp - 8], ebx
fstp st(0)
mov byte [edi + 0x38], bl
jmp 0x4275da
mov dword [ebp - 0x20], 0x3f
fxch st(3)
add dword [ebp - 0x20], 0xfffffffa
mov eax, dword [ebp - 0x20]
mov ecx, dword [ebp - 0x20]
imul eax, ecx
mov ecx, dword [ebp - 0x20]
imul ecx, ecx, 0xffffffac
sub ecx, eax
mov eax, dword [ebp - 0x20]
mov edx, dword [ebp - 0x20]
imul eax, edx
mov edx, dword [ebp - 0x20]
imul eax, edx
imul eax, eax, 0x3d
add ecx, eax
mov eax, dword [ebp - 0x20]
sub ecx, eax
sub ecx, 0xb9
mov dword [ebp - 0x20], ecx
add dword [ebp - 0x20], 0x55
mov eax, dword [ebp - 0x20]
push 0x52
pop ecx
sub ecx, eax
add ecx, dword [ebp - 0x20]
add ecx, dword [ebp - 0x20]
mov dword [ebp - 0x20], ecx
mov eax, dword [ebp - 0x20]
imul eax, eax, 0x28
mov dword [ebp - 0x20], eax
add dword [ebp - 0x20], 0x49
fstp qword [ebp - 0x3c]
fld qword [ebp - 0x3c]
fsub qword [ebp - 0x3c]
fld qword [ebp - 0x3c]
fmul qword [0x473a00]
fsubp st(1)
faddp st(2)
fld qword [ebp - 0x3c]
faddp st(2)
fxch st(1)
fstp qword [ebp - 0x3c]
fld qword [ebp - 0x3c]
fmul qword [0x4739f8]
fld qword [ebp - 0x3c]
fadd qword [0x4739f0]
faddp st(1)
fstp qword [ebp - 0x3c]
fadd qword [ebp - 0x3c]
fadd qword [ebp - 0x3c]
fld qword [ebp - 0x3c]
fmul qword [0x4739e8]
faddp st(1)
fsub qword [0x4739e0]
fstp qword [ebp - 0x3c]
fld qword [ebp - 0x3c]
fmul qword [ebp - 0x3c]
fld qword [ebp - 0x3c]
fadd qword [0x4739d8]
faddp st(1)
fld qword [ebp - 0x3c]
fmul qword [0x4739d0]
fmul qword [ebp - 0x3c]
fsubp st(1)
faddp st(1)
fsub qword [ebp - 0x3c]
fsub qword [0x4739c8]
fadd qword [ebp - 0x3c]
fsub qword [ebp - 0x3c]
fsub qword [ebp - 0x3c]
fstp qword [ebp - 0x3c]
fdivr qword [ebp - 0x3c]
fadd qword [ebp - 0x3c]
fadd qword [ebp - 0x3c]
fsub qword [ebp - 0x3c]
fstp qword [ebp - 0x3c]
fld qword [ebp - 0x3c]
fsub qword [ebp - 0x3c]
fsub qword [ebp - 0x3c]
fstp qword [ebp - 0x3c]
fld qword [ebp - 0x3c]
push 0x45b0d8
fadd qword [ebp - 0x3c]
push 0x45a0d8
push 5
push 9
fstp qword [ebp - 0x3c]
fld qword [ebp - 0x3c]
fmul qword [ebp - 0x3c]
fadd qword [ebp - 0x3c]
fstp qword [ebp - 0x3c]
fld qword [ebp - 0x3c]
fsub qword [0x473a50]
fstp qword [ebp - 0x3c]
call fcn.00425e74
add esp, 0x10
mov dword [edi], eax
test eax, eax
je 0x427711
fld qword [0x473a38]
mov byte [edi + 0x38], 6
fstp qword [ebp - 0x54]
shr dword [ebp - 0xc], 3
fld qword [0x473a30]
sub dword [ebp - 8], ebx
fstp qword [ebp - 0x24]
fld qword [0x473a28]
fstp qword [ebp - 0x3c]
fld qword [0x473988]
fstp qword [ebp - 0x5c]
fld qword [0x473930]
fstp qword [ebp - 0x3c]
fld qword [ebp - 0x5c]
fsub qword [ebp - 0x54]
fstp qword [ebp - 0x3c]
fld qword [ebp - 0x24]
fmul qword [0x473a20]
fstp qword [ebp - 0x24]
fld qword [ebp - 0x3c]
fadd qword [0x473a18]
fadd qword [ebp - 0x54]
fld qword [ebp - 0x54]
fdiv qword [0x473a60]
fsubp st(1)
fstp qword [ebp - 0x3c]
fld qword [ebp - 0x3c]
fadd qword [ebp - 0x3c]
fsub qword [0x473a58]
fld qword [ebp - 0x3c]
fmul qword [ebp - 0x3c]
fsubp st(1)
fadd qword [0x473a10]
fld qword [ebp - 0x3c]
fdiv qword [0x473a08]
fsubp st(1)
fstp qword [ebp - 0x3c]
jmp 0x4275da
fxch st(3)
sub dword [ebp - 8], ebx
fstp qword [ebp - 0x3c]
mov ecx, dword [ebp - 8]
fld qword [ebp - 0x3c]
mov eax, dword [ebp - 0xc]
fsub qword [ebp - 0x3c]
and ecx, 7
fld qword [ebp - 0x3c]
shr eax, 3
fmul qword [0x473a00]
shr eax, cl
sub dword [ebp - 8], ecx
fsubp st(1)
mov dword [ebp - 0xc], eax
faddp st(2)
fld qword [ebp - 0x3c]
faddp st(2)
fxch st(1)
fstp qword [ebp - 0x3c]
fld qword [ebp - 0x3c]
fmul qword [0x4739f8]
fld qword [ebp - 0x3c]
fadd qword [0x4739f0]
faddp st(1)
fstp qword [ebp - 0x3c]
fadd qword [ebp - 0x3c]
fadd qword [ebp - 0x3c]
fld qword [ebp - 0x3c]
fmul qword [0x4739e8]
faddp st(1)
fsub qword [0x4739e0]
fstp qword [ebp - 0x3c]
fld qword [ebp - 0x3c]
fmul qword [ebp - 0x3c]
fld qword [ebp - 0x3c]
fadd qword [0x4739d8]
faddp st(1)
fld qword [ebp - 0x3c]
fmul qword [0x4739d0]
fmul qword [ebp - 0x3c]
fsubp st(1)
faddp st(1)
fsub qword [ebp - 0x3c]
fsub qword [0x4739c8]
fadd qword [ebp - 0x3c]
fsub qword [ebp - 0x3c]
fsub qword [ebp - 0x3c]
fstp qword [ebp - 0x3c]
fdivr qword [ebp - 0x3c]
fadd qword [ebp - 0x3c]
fadd qword [ebp - 0x3c]
fsub qword [ebp - 0x3c]
fstp qword [ebp - 0x3c]
fld qword [ebp - 0x3c]
fsub qword [ebp - 0x3c]
fsub qword [ebp - 0x3c]
fstp qword [ebp - 0x3c]
fld qword [ebp - 0x3c]
fadd qword [ebp - 0x3c]
fstp qword [ebp - 0x3c]
fld qword [ebp - 0x3c]
fmul qword [ebp - 0x3c]
fadd qword [ebp - 0x3c]
fstp qword [ebp - 0x3c]
fld qword [ebp - 0x3c]
mov byte [edi + 0x38], 1
fsub qword [0x473a50]
fstp qword [ebp - 0x3c]
jmp 0x4275da
mov ecx, dword [ebp - 8]
fstp st(0)
fstp st(3)
fstp st(1)
fstp st(0)
fstp st(0)
cmp ecx, 0x20
jae 0x426999
xor edx, edx
cmp dword [ebp - 0x14], edx
je 0x427718
mov eax, dword [ebp - 0x10]
movzx eax, byte [eax]
dec dword [ebp - 0x14]
shl eax, cl
add ecx, 8
mov dword [ebp + 8], edx
mov dword [ebp - 8], ecx
or dword [ebp - 0xc], eax
inc dword [ebp - 0x10]
cmp ecx, 0x20
jb 0x42696d
jmp 0x42699b
xor edx, edx
mov ecx, dword [ebp - 0xc]
mov eax, dword [ebp - 0xc]
not ecx
and eax, 0xffff
shr ecx, 0x10
cmp ecx, eax
jne 0x42772c
mov dword [edi], eax
mov dword [ebp - 0x20], 0x43
mov eax, dword [ebp - 0x20]
mov ecx, dword [ebp - 0x20]
imul eax, ecx
mov ecx, dword [ebp - 0x20]
sub eax, ecx
add eax, dword [ebp - 0x20]
push 0xfffffffffffffffd
add eax, dword [ebp - 0x20]
mov ecx, dword [ebp - 0x20]
lea eax, [eax + ecx + 0x46]
mov dword [ebp - 0x20], eax
mov eax, dword [ebp - 0x20]
pop ecx
sub ecx, eax
add ecx, dword [ebp - 0x20]
mov dword [ebp - 8], edx
add ecx, dword [ebp - 0x20]
mov dword [ebp - 0xc], edx
mov dword [ebp - 0x20], ecx
mov eax, dword [ebp - 0x20]
cdq
push 0x24
pop ecx
idiv ecx
push 0xffffffffffffffe9
pop ebx
push 0x53
mov ecx, eax
mov eax, dword [ebp - 0x20]
cdq
idiv ebx
sub eax, ecx
mov ecx, dword [ebp - 0x20]
imul ecx, ecx, 0x29
sub eax, ecx
mov ecx, dword [ebp - 0x20]
sub eax, ecx
mov ecx, dword [ebp - 0x20]
sub eax, ecx
mov ecx, dword [ebp - 0x20]
sub eax, ecx
add eax, dword [ebp - 0x20]
add eax, dword [ebp - 0x20]
mov ecx, dword [ebp - 0x20]
lea eax, [eax + ecx + 0x61]
mov dword [ebp - 0x20], eax
mov eax, dword [ebp - 0x20]
mov ecx, dword [ebp - 0x20]
sub eax, ecx
mov dword [ebp - 0x20], eax
mov eax, dword [ebp - 0x20]
mov ecx, dword [ebp - 0x20]
imul eax, ecx
imul eax, eax, 0x16da
cdq
pop ecx
idiv ecx
mov dword [ebp - 0x20], eax
mov eax, dword [ebp - 0x20]
add eax, dword [ebp - 0x20]
mov ecx, dword [ebp - 0x20]
lea eax, [eax + ecx + 0x2a]
mov dword [ebp - 0x20], eax
mov eax, dword [ebp - 0x20]
add eax, dword [ebp - 0x20]
cmp dword [edi], 0
mov dword [ebp - 0x20], eax
je 0x426a74
push 2
pop eax
jmp 0x426a7e
mov eax, dword [edi + 0x14]
neg eax
sbb eax, eax
and eax, 7
mov byte [edi + 0x38], al
jmp 0x4275da
cmp dword [ebp - 0x14], 0
fstp st(0)
fstp st(3)
fstp st(1)
fstp st(0)
fstp st(0)
je 0x4275f6
cmp dword [ebp - 0x28], 0
jne 0x426b28
mov ecx, dword [edi + 0x28]
cmp dword [ebp - 0x18], ecx
jne 0x426ace
mov eax, dword [edi + 0x2c]
mov edx, dword [edi + 0x24]
cmp edx, eax
je 0x426ace
mov dword [ebp - 0x18], edx
jae 0x426ac3
sub eax, edx
dec eax
mov dword [ebp - 0x28], eax
jmp 0x426ac8
sub ecx, edx
mov dword [ebp - 0x28], ecx
cmp dword [ebp - 0x28], 0
jne 0x426b28
mov eax, dword [ebp - 0x18]
push dword [ebp + 8]
mov ebx, edi
mov dword [edi + 0x30], eax
call fcn.00423614
mov edx, dword [edi + 0x30]
pop ecx
mov ecx, dword [edi + 0x2c]
mov dword [ebp - 0x18], edx
cmp edx, ecx
jae 0x426af4
mov edx, ecx
sub edx, dword [ebp - 0x18]
dec edx
jmp 0x426afa
mov edx, dword [edi + 0x28]
sub edx, dword [ebp - 0x18]
mov dword [ebp - 0x28], edx
mov edx, dword [edi + 0x28]
cmp dword [ebp - 0x18], edx
jne 0x426b1e
mov ebx, dword [edi + 0x24]
cmp ebx, ecx
je 0x426b1e
mov dword [ebp - 0x18], ebx
jae 0x426b19
sub ecx, ebx
dec ecx
mov dword [ebp - 0x28], ecx
jmp 0x426b1e
sub edx, ebx
mov dword [ebp - 0x28], edx
cmp dword [ebp - 0x28], 0
je 0x42776e
mov ebx, dword [edi]
and dword [ebp + 8], 0
cmp ebx, dword [ebp - 0x14]
jbe 0x426b36
mov ebx, dword [ebp - 0x14]
fld qword [0x473a38]
fstp qword [ebp - 0x54]
fld qword [0x473a30]
fstp qword [ebp - 0x24]
fld qword [0x473a28]
fstp qword [ebp - 0x3c]
fld qword [0x473988]
fstp qword [ebp - 0x5c]
fld qword [0x473930]
fstp qword [ebp - 0x3c]
fld qword [ebp - 0x5c]
fsub qword [ebp - 0x54]
fstp qword [ebp - 0x3c]
fld qword [ebp - 0x24]
fmul qword [0x473a20]
fstp qword [ebp - 0x24]
fld qword [ebp - 0x3c]
fadd qword [0x473a18]
fadd qword [ebp - 0x54]
fld qword [ebp - 0x54]
fdiv qword [0x473a60]
fsubp st(1)
fstp qword [ebp - 0x3c]
fld qword [ebp - 0x3c]
fadd qword [ebp - 0x3c]
fsub qword [0x473a58]
fld qword [ebp - 0x3c]
fmul qword [ebp - 0x3c]
fsubp st(1)
fadd qword [0x473a10]
fld qword [ebp - 0x3c]
fdiv qword [0x473a08]
fsubp st(1)
fstp qword [ebp - 0x3c]
cmp ebx, dword [ebp - 0x28]
jbe 0x426bc2
mov ebx, dword [ebp - 0x28]
push ebx
push dword [ebp - 0x10]
push dword [ebp - 0x18]
call fcn.00412c10
add dword [ebp - 0x10], ebx
sub dword [ebp - 0x14], ebx
add dword [ebp - 0x18], ebx
sub dword [ebp - 0x28], ebx
add esp, 0xc
sub dword [edi], ebx
jne 0x4275da
cmp dword [edi + 0x14], 0
sete al
dec al
and al, 7
jmp 0x426a7e
fstp st(4)
fstp st(2)
fstp st(0)
fstp st(0)
jmp 0x426c25
cmp dword [ebp - 0x14], 0
je 0x4275f4
mov eax, dword [ebp - 0x10]
movzx eax, byte [eax]
mov ecx, dword [ebp - 8]
and dword [ebp + 8], 0
dec dword [ebp - 0x14]
shl eax, cl
or dword [ebp - 0xc], eax
inc dword [ebp - 0x10]
add dword [ebp - 8], 8
cmp dword [ebp - 8], 0xe
jb 0x426bff
mov eax, dword [ebp - 0xc]
and eax, 0x3fff
mov ecx, eax
and ecx, 0x1f
mov dword [edi], eax
cmp ecx, 0x1d
ja 0x427798
shr eax, 5
and eax, 0x1f
cmp eax, 0x1d
ja 0x427798
fstp qword [ebp - 0x5c]
add eax, ecx
fld qword [0x473a48]
lea eax, [eax*4 + 0x408]
fstp qword [ebp - 0x54]
push eax
fld qword [0x473a40]
fstp qword [ebp - 0x3c]
fld qword [ebp - 0x5c]
fsub qword [ebp - 0x54]
fstp qword [ebp - 0x54]
call fcn.0043e7dd
mov dword [edi + 8], eax
test eax, eax
je 0x427711
fld qword [0x473920]
shr dword [ebp - 0xc], 0xe
sub dword [ebp - 8], 0xe
fstp qword [ebp - 0x3c]
fld qword [0x473918]
fstp qword [ebp - 0x54]
fld qword [0x473910]
fstp qword [ebp - 0x5c]
fld qword [0x473908]
fstp qword [ebp - 0x5c]
fld qword [0x473900]
fstp qword [ebp - 0x5c]
fld qword [ebp - 0x54]
fcomp qword [ebp - 0x54]
fnstsw ax
test ah, 1
jne 0x426cd5
fld qword [ebp - 0x5c]
fadd qword [ebp - 0x3c]
fstp qword [ebp - 0x5c]
and dword [edi + 4], 0
mov byte [edi + 0x38], 4
jmp 0x426e2a
fstp st(0)
fstp st(3)
fstp st(1)
fstp st(0)
fstp st(0)
jmp 0x426e2a
cmp dword [ebp - 0x14], 0
je 0x4275f6
mov eax, dword [ebp - 0x10]
movzx eax, byte [eax]
mov ecx, dword [ebp - 8]
and dword [ebp + 8], 0
dec dword [ebp - 0x14]
shl eax, cl
or dword [ebp - 0xc], eax
inc dword [ebp - 0x10]
add dword [ebp - 8], 8
cmp dword [ebp - 8], 3
jb 0x426cf1
fld qword [0x4739a0]
fstp qword [ebp - 0x2c]
fld qword [0x473998]
fstp qword [ebp - 0x24]
fld qword [0x473990]
fstp qword [ebp - 0x3c]
fld qword [0x473988]
fstp qword [ebp - 0x54]
fld qword [ebp - 0x3c]
fcomp qword [ebp - 0x2c]
fnstsw ax
test ah, 5
jp 0x426dc7
fld qword [ebp - 0x24]
fadd qword [0x473980]
fstp qword [ebp - 0x24]
fld qword [ebp - 0x3c]
fld qword [ebp - 0x3c]
fucompp
fnstsw ax
test ah, 0x44
jp 0x426dc7
fld qword [ebp - 0x54]
fld qword [ebp - 0x54]
fucompp
fnstsw ax
test ah, 0x44
jp 0x426db1
fld qword [ebp - 0x3c]
fld qword [ebp - 0x54]
fmul qword [0x473978]
fsubp st(1)
fstp qword [ebp - 0x2c]
fld qword [ebp - 0x24]
fadd qword [0x473970]
fadd qword [ebp - 0x3c]
fadd qword [ebp - 0x2c]
fld qword [ebp - 0x2c]
fmul qword [0x473968]
fsubp st(1)
fld qword [ebp - 0x3c]
fmul qword [0x473960]
fsubp st(1)
fstp qword [ebp - 0x3c]
fld qword [ebp - 0x24]
fcomp qword [ebp - 0x2c]
fnstsw ax
test ah, 0x41
jp 0x426dc7
fld qword [ebp - 0x54]
fsub qword [ebp - 0x3c]
fstp qword [ebp - 0x2c]
mov ecx, dword [edi + 4]
fld qword [0x473958]
mov ecx, dword [ecx*4 + 0x45b1d8]
mov edx, dword [edi + 8]
mov eax, dword [ebp - 0xc]
shr dword [ebp - 0xc], 3
and eax, 7
mov dword [edx + ecx*4], eax
inc dword [edi + 4]
fstp qword [ebp - 0x5c]
fld qword [0x473950]
sub dword [ebp - 8], 3
fstp qword [ebp - 0x5c]
fld qword [0x473948]
fstp qword [ebp - 0x5c]
fld qword [0x473940]
fstp qword [ebp - 0x5c]
fld qword [0x473938]
fstp qword [ebp - 0x5c]
fld qword [0x473930]
fstp qword [ebp - 0x54]
fld qword [ebp - 0x5c]
fadd qword [0x473928]
fstp qword [ebp - 0x5c]
mov eax, dword [edi]
shr eax, 0xa
add eax, 4
cmp dword [edi + 4], eax
jb 0x426d17
jmp 0x426e51
mov eax, dword [edi + 4]
mov eax, dword [eax*4 + 0x45b1d8]
mov ecx, dword [edi + 8]
and dword [ecx + eax*4], 0
inc dword [edi + 4]
cmp dword [edi + 4], 0x13
jb 0x426e3d
push dword [edi + 0x20]
lea ecx, [edi + 0x10]
lea eax, [edi + 0xc]
push ecx
push eax
push dword [edi + 8]
mov dword [eax], 7
call fcn.00425bec
fld qword [0x473958]
fstp qword [ebp - 0x5c]
mov ebx, eax
fld qword [0x473950]
add esp, 0x10
fstp qword [ebp - 0x5c]
fld qword [0x473948]
fstp qword [ebp - 0x5c]
fld qword [0x473940]
fstp qword [ebp - 0x5c]
fld qword [0x473938]
fstp qword [ebp - 0x5c]
fld qword [0x473930]
fstp qword [ebp - 0x54]
fld qword [ebp - 0x5c]
fadd qword [0x473928]
fstp qword [ebp - 0x5c]
test ebx, ebx
jne 0x4277a3
and dword [edi + 4], eax
fld qword [0x473a58]
fst qword [ebp - 0x3c]
fld qword [ebp - 0x3c]
fsub qword [ebp - 0x3c]
fld qword [ebp - 0x3c]
fmul qword [0x473a00]
fsubp st(1)
fld qword [0x473960]
fadd st(1), st(0)
fld qword [ebp - 0x3c]
faddp st(2)
fxch st(1)
fstp qword [ebp - 0x3c]
fld qword [ebp - 0x3c]
fmul qword [0x4739f8]
fld qword [ebp - 0x3c]
fadd qword [0x4739f0]
faddp st(1)
fstp qword [ebp - 0x3c]
fld qword [ebp - 0x3c]
fld qword [0x473980]
fadd st(1), st(0)
fld qword [ebp - 0x3c]
faddp st(2)
fld qword [ebp - 0x3c]
fmul qword [0x4739e8]
faddp st(2)
fxch st(1)
fsub qword [0x4739e0]
fstp qword [ebp - 0x3c]
fld qword [ebp - 0x3c]
fmul qword [ebp - 0x3c]
fld qword [ebp - 0x3c]
fadd qword [0x4739d8]
faddp st(1)
fld qword [ebp - 0x3c]
fmul qword [0x4739d0]
fmul qword [ebp - 0x3c]
fsubp st(1)
fld qword [0x473a68]
fadd st(1), st(0)
fld qword [ebp - 0x3c]
fsubp st(2)
fxch st(1)
fsub qword [0x4739c8]
fadd qword [ebp - 0x3c]
fsub qword [ebp - 0x3c]
fsub qword [ebp - 0x3c]
fstp qword [ebp - 0x3c]
fld qword [ebp - 0x3c]
fld qword [0x473a60]
fdiv st(1), st(0)
fld qword [ebp - 0x3c]
faddp st(2)
fld qword [ebp - 0x3c]
faddp st(2)
fld qword [ebp - 0x3c]
fsubp st(2)
fxch st(1)
fstp qword [ebp - 0x3c]
fld qword [ebp - 0x3c]
fsub qword [ebp - 0x3c]
fsub qword [ebp - 0x3c]
fstp qword [ebp - 0x3c]
fld qword [ebp - 0x3c]
fadd qword [ebp - 0x3c]
fstp qword [ebp - 0x3c]
fld qword [ebp - 0x3c]
fmul qword [ebp - 0x3c]
fadd qword [ebp - 0x3c]
fstp qword [ebp - 0x3c]
fld qword [ebp - 0x3c]
mov byte [edi + 0x38], 5
fsub qword [0x473a50]
fstp qword [ebp - 0x3c]
fld qword [0x473920]
fstp qword [ebp - 0x3c]
fld qword [0x473918]
fstp qword [ebp - 0x54]
fld qword [0x473910]
fstp qword [ebp - 0x5c]
fld qword [0x473908]
fstp qword [ebp - 0x5c]
fld qword [0x473900]
fstp qword [ebp - 0x5c]
fld qword [ebp - 0x54]
fcomp qword [ebp - 0x54]
fnstsw ax
test ah, 1
jne 0x426ffe
fld qword [ebp - 0x5c]
fadd qword [ebp - 0x3c]
fstp qword [ebp - 0x5c]
fxch st(4)
fxch st(3)
fxch st(2)
fxch st(1)
mov eax, dword [edi]
mov ecx, eax
shr ecx, 5
and ecx, 0x1f
and eax, 0x1f
lea eax, [ecx + eax + 0x102]
cmp dword [edi + 4], eax
jb 0x427028
fstp st(0)
jmp 0x4273f4
fxch st(3)
mov edx, dword [edi + 0xc]
mov ecx, dword [ebp - 8]
jmp 0x427055
cmp dword [ebp - 0x14], 0
je 0x4275ec
mov eax, dword [ebp - 0x10]
movzx eax, byte [eax]
and dword [ebp + 8], 0
dec dword [ebp - 0x14]
shl eax, cl
or dword [ebp - 0xc], eax
inc dword [ebp - 0x10]
add ecx, 8
mov dword [ebp - 8], ecx
cmp ecx, edx
jb 0x427030
fld qword [0x4739a0]
fstp qword [ebp - 0x2c]
fld qword [0x473998]
fstp qword [ebp - 0x54]
fld qword [0x473990]
fstp qword [ebp - 0x3c]
fld qword [0x473988]
fstp qword [ebp - 0x24]
fld qword [ebp - 0x3c]
fcomp qword [ebp - 0x2c]
fnstsw ax
test ah, 5
jp 0x4270fb
fld qword [ebp - 0x54]
fadd st(2)
fstp qword [ebp - 0x54]
fld qword [ebp - 0x3c]
fld qword [ebp - 0x3c]
fucompp
fnstsw ax
test ah, 0x44
jp 0x4270fb
fld qword [ebp - 0x24]
fld qword [ebp - 0x24]
fucompp
fnstsw ax
test ah, 0x44
jp 0x4270e5
fld qword [ebp - 0x3c]
fld qword [ebp - 0x24]
fmul qword [0x473978]
fsubp st(1)
fstp qword [ebp - 0x2c]
fld qword [ebp - 0x54]
fadd qword [0x473970]
fadd qword [ebp - 0x3c]
fadd qword [ebp - 0x2c]
fld qword [ebp - 0x2c]
fmul qword [0x473968]
fsubp st(1)
fld qword [ebp - 0x3c]
fmul st(4)
fsubp st(1)
fstp qword [ebp - 0x3c]
fld qword [ebp - 0x54]
fcomp qword [ebp - 0x2c]
fnstsw ax
test ah, 0x41
jp 0x4270fb
fld qword [ebp - 0x24]
fsub qword [ebp - 0x3c]
fstp qword [ebp - 0x2c]
mov eax, dword [edx*4 + 0x45a090]
mov ecx, dword [edi + 0x10]
fst qword [ebp - 0x5c]
fld qword [0x473a48]
and eax, dword [ebp - 0xc]
fstp qword [ebp - 0x54]
fld qword [0x473a40]
lea ecx, [ecx + eax*8]
fstp qword [ebp - 0x3c]
fld qword [ebp - 0x5c]
fsub qword [ebp - 0x54]
movzx eax, byte [ecx + 1]
fstp qword [ebp - 0x54]
fxch st(3)
fst qword [ebp - 0x3c]
fld qword [ebp - 0x3c]
fsub qword [ebp - 0x3c]
fld qword [ebp - 0x3c]
fmul qword [0x473a00]
fsubp st(1)
fadd st(3)
fadd qword [ebp - 0x3c]
fstp qword [ebp - 0x3c]
fld qword [ebp - 0x3c]
fmul qword [0x4739f8]
fld qword [ebp - 0x3c]
fadd qword [0x4739f0]
faddp st(1)
fstp qword [ebp - 0x3c]
fld qword [ebp - 0x3c]
fadd st(2)
fadd qword [ebp - 0x3c]
fld qword [ebp - 0x3c]
fmul qword [0x4739e8]
faddp st(1)
fsub qword [0x4739e0]
fstp qword [ebp - 0x3c]
fld qword [ebp - 0x3c]
fmul qword [ebp - 0x3c]
fld qword [ebp - 0x3c]
fadd qword [0x4739d8]
faddp st(1)
fld qword [ebp - 0x3c]
fmul qword [0x4739d0]
fmul qword [ebp - 0x3c]
fsubp st(1)
fadd st(4)
fsub qword [ebp - 0x3c]
fsub qword [0x4739c8]
fadd qword [ebp - 0x3c]
fsub qword [ebp - 0x3c]
fsub qword [ebp - 0x3c]
fstp qword [ebp - 0x3c]
fld qword [ebp - 0x3c]
fdiv st(5)
fadd qword [ebp - 0x3c]
fadd qword [ebp - 0x3c]
fsub qword [ebp - 0x3c]
fstp qword [ebp - 0x3c]
fld qword [ebp - 0x3c]
fsub qword [ebp - 0x3c]
fsub qword [ebp - 0x3c]
fstp qword [ebp - 0x3c]
fld qword [ebp - 0x3c]
fadd qword [ebp - 0x3c]
fstp qword [ebp - 0x3c]
fld qword [ebp - 0x3c]
fmul qword [ebp - 0x3c]
fadd qword [ebp - 0x3c]
fstp qword [ebp - 0x3c]
fld qword [ebp - 0x3c]
mov ebx, dword [ecx + 4]
fsub qword [0x473a50]
mov dword [ebp - 0x20], ebx
fstp qword [ebp - 0x3c]
cmp ebx, 0x10
jae 0x427276
sub dword [ebp - 8], eax
mov dword [ebp - 0x20], 0x3f
add dword [ebp - 0x20], 0xfffffffa
mov ecx, eax
mov eax, dword [ebp - 0x20]
shr dword [ebp - 0xc], cl
mov ecx, dword [ebp - 0x20]
imul eax, ecx
mov ecx, dword [ebp - 0x20]
imul ecx, ecx, 0xffffffac
sub ecx, eax
mov eax, dword [ebp - 0x20]
mov edx, dword [ebp - 0x20]
imul eax, edx
mov edx, dword [ebp - 0x20]
imul eax, edx
imul eax, eax, 0x3d
add ecx, eax
mov eax, dword [ebp - 0x20]
sub ecx, eax
sub ecx, 0xb9
mov dword [ebp - 0x20], ecx
add dword [ebp - 0x20], 0x55
mov eax, dword [ebp - 0x20]
push 0x52
pop ecx
sub ecx, eax
add ecx, dword [ebp - 0x20]
add ecx, dword [ebp - 0x20]
mov dword [ebp - 0x20], ecx
mov eax, dword [ebp - 0x20]
imul eax, eax, 0x28
mov dword [ebp - 0x20], eax
add dword [ebp - 0x20], 0x49
mov eax, dword [edi + 4]
mov ecx, dword [edi + 8]
mov dword [ecx + eax*4], ebx
inc dword [edi + 4]
jmp 0x4273d5
cmp ebx, 0x12
jne 0x427280
push 7
pop edx
jmp 0x427283
lea edx, [ebx - 0xe]
fld qword [0x473958]
xor ecx, ecx
fstp qword [ebp - 0x5c]
cmp ebx, 0x12
fld qword [0x473950]
sete cl
fstp qword [ebp - 0x5c]
fld qword [0x473948]
fstp qword [ebp - 0x5c]
fld qword [0x473940]
fstp qword [ebp - 0x5c]
fld qword [0x473938]
fstp qword [ebp - 0x5c]
lea ecx, [ecx*8 + 3]
fld qword [0x473930]
mov dword [ebp - 0x38], ecx
fstp qword [ebp - 0x54]
fld qword [ebp - 0x5c]
fadd qword [0x473928]
fstp qword [ebp - 0x5c]
jmp 0x4272ff
xor ecx, ecx
cmp dword [ebp - 0x14], ecx
je 0x4277ba
dec dword [ebp - 0x14]
mov dword [ebp + 8], ecx
mov ecx, dword [ebp - 0x10]
movzx ebx, byte [ecx]
mov ecx, dword [ebp - 8]
shl ebx, cl
or dword [ebp - 0xc], ebx
inc dword [ebp - 0x10]
add dword [ebp - 8], 8
lea ecx, [edx + eax]
cmp dword [ebp - 8], ecx
jb 0x4272d9
fxch st(3)
mov ecx, eax
shr dword [ebp - 0xc], cl
fst qword [ebp - 0x5c]
fld qword [0x473a48]
fstp qword [ebp - 0x54]
fld qword [0x473a40]
fstp qword [ebp - 0x2c]
fld qword [ebp - 0x5c]
fsub qword [ebp - 0x54]
mov ecx, dword [edx*4 + 0x45a090]
and ecx, dword [ebp - 0xc]
add dword [ebp - 0x38], ecx
fstp qword [ebp - 0x54]
mov ecx, edx
shr dword [ebp - 0xc], cl
mov ecx, dword [edi + 4]
add edx, eax
sub dword [ebp - 8], edx
mov eax, dword [edi]
mov edx, eax
shr edx, 5
and eax, 0x1f
and edx, 0x1f
lea edx, [edx + eax + 0x102]
mov eax, dword [ebp - 0x38]
lea ebx, [eax + ecx]
cmp ebx, edx
ja 0x4277d8
cmp dword [ebp - 0x20], 0x10
jne 0x427383
cmp ecx, 1
jb 0x4277d8
mov edx, dword [edi + 8]
mov edx, dword [edx + ecx*4 - 4]
mov dword [ebp - 0x20], edx
jmp 0x427387
and dword [ebp - 0x20], 0
mov dword [ebp - 0x38], 0x4f
mov dword [ebp - 0x38], 0x47
mov dword [ebp - 0x28], 0x15
mov edx, dword [ebp - 0x28]
mov ebx, dword [ebp - 0x38]
cmp ebx, edx
jle 0x4273c3
mov edx, dword [ebp - 0x28]
mov ebx, dword [ebp - 0x28]
cmp edx, ebx
je 0x4273c3
mov edx, dword [ebp - 0x38]
mov ebx, dword [ebp - 0x28]
imul edx, edx, 0x29
lea edx, [edx + ebx - 0x12]
add edx, dword [ebp - 0x38]
mov dword [ebp - 0x28], edx
mov edx, dword [edi + 8]
mov ebx, dword [ebp - 0x20]
mov dword [edx + ecx*4], ebx
inc ecx
dec eax
jne 0x4273c3
mov dword [edi + 4], ecx
fxch st(3)
mov eax, dword [edi]
mov ecx, eax
shr ecx, 5
and ecx, 0x1f
and eax, 0x1f
lea eax, [ecx + eax + 0x102]
cmp dword [edi + 4], eax
jb 0x427026
fstp st(3)
push dword [edi + 0x20]
fstp st(3)
mov ebx, dword [edi]
fstp st(1)
and dword [edi + 0x10], 0
fstp st(0)
mov edi, dword [edi + 8]
fstp st(0)
lea eax, [ebp - 0x48]
push eax
lea eax, [ebp - 0x4c]
push eax
lea eax, [ebp - 0x40]
push eax
lea eax, [ebp - 0x44]
push eax
mov eax, ebx
shr eax, 5
and eax, 0x1f
inc eax
and ebx, 0x1f
push eax
add ebx, 0x101
mov dword [ebp - 0x44], 9
mov dword [ebp - 0x40], 6
call fcn.00425972
mov edi, eax
add esp, 0x18
test edi, edi
jne 0x4278c2
push dword [ebp - 0x48]
push dword [ebp - 0x4c]
push dword [ebp - 0x40]
push dword [ebp - 0x44]
call fcn.00425e74
add esp, 0x10
test eax, eax
je 0x427987
mov edi, dword [ebp - 0x30]
push dword [edi + 8]
mov dword [edi], eax
call fcn.0043e7ce
mov byte [edi + 0x38], 6
jmp 0x427484
fstp st(0)
fstp st(3)
fstp st(1)
fstp st(0)
fstp st(0)
mov eax, dword [ebp - 0xc]
push dword [ebp + 8]
mov dword [edi + 0x1c], eax
mov eax, dword [ebp - 8]
mov dword [edi + 0x18], eax
mov eax, dword [ebp - 0x14]
mov dword [esi + 4], eax
mov eax, dword [ebp - 0x10]
mov ecx, eax
sub ecx, dword [esi]
mov dword [esi], eax
add dword [esi + 8], ecx
mov eax, dword [ebp - 0x18]
mov dword [edi + 0x30], eax
mov eax, esi
mov ecx, edi
call fcn.00424392
pop ecx
cmp eax, 1
jne 0x427792
fld qword [0x473a68]
xor ebx, ebx
fstp qword [ebp - 0x5c]
mov dword [ebp + 8], ebx
fld qword [0x473a48]
fstp qword [ebp - 0x54]
fld qword [0x473a40]
fstp qword [ebp - 0x3c]
fld qword [ebp - 0x5c]
fsub qword [ebp - 0x54]
push dword [edi]
fstp qword [ebp - 0x54]
call fcn.0043e7ce
mov eax, dword [esi]
mov ecx, dword [edi + 0x30]
mov dword [ebp - 0x10], eax
mov eax, dword [esi + 4]
mov dword [ebp - 0x14], eax
mov eax, dword [edi + 0x1c]
mov dword [ebp - 0xc], eax
mov eax, dword [edi + 0x18]
mov dword [ebp - 8], eax
mov eax, dword [edi + 0x2c]
mov dword [ebp - 0x18], ecx
cmp ecx, eax
jae 0x427517
sub eax, ecx
dec eax
jmp 0x42751c
mov eax, dword [edi + 0x28]
sub eax, ecx
mov dword [ebp - 0x28], eax
cmp dword [edi + 0x14], ebx
jne 0x4279f8
mov byte [edi + 0x38], bl
mov dword [ebp - 0x20], 0x43
mov eax, dword [ebp - 0x20]
mov ecx, dword [ebp - 0x20]
imul eax, ecx
mov ecx, dword [ebp - 0x20]
sub eax, ecx
add eax, dword [ebp - 0x20]
push 0xfffffffffffffffd
add eax, dword [ebp - 0x20]
mov ecx, dword [ebp - 0x20]
lea eax, [eax + ecx + 0x46]
mov dword [ebp - 0x20], eax
mov eax, dword [ebp - 0x20]
pop ecx
sub ecx, eax
add ecx, dword [ebp - 0x20]
push 0x24
add ecx, dword [ebp - 0x20]
mov dword [ebp - 0x20], ecx
mov eax, dword [ebp - 0x20]
cdq
pop ecx
idiv ecx
push 0xffffffffffffffe9
pop ebx
push 0x53
mov ecx, eax
mov eax, dword [ebp - 0x20]
cdq
idiv ebx
sub eax, ecx
mov ecx, dword [ebp - 0x20]
imul ecx, ecx, 0x29
sub eax, ecx
mov ecx, dword [ebp - 0x20]
sub eax, ecx
mov ecx, dword [ebp - 0x20]
sub eax, ecx
mov ecx, dword [ebp - 0x20]
sub eax, ecx
add eax, dword [ebp - 0x20]
add eax, dword [ebp - 0x20]
mov ecx, dword [ebp - 0x20]
lea eax, [eax + ecx + 0x61]
mov dword [ebp - 0x20], eax
mov eax, dword [ebp - 0x20]
mov ecx, dword [ebp - 0x20]
sub eax, ecx
mov dword [ebp - 0x20], eax
mov eax, dword [ebp - 0x20]
mov ecx, dword [ebp - 0x20]
imul eax, ecx
imul eax, eax, 0x16da
cdq
pop ecx
idiv ecx
mov dword [ebp - 0x20], eax
mov eax, dword [ebp - 0x20]
add eax, dword [ebp - 0x20]
mov ecx, dword [ebp - 0x20]
lea eax, [eax + ecx + 0x2a]
mov dword [ebp - 0x20], eax
mov eax, dword [ebp - 0x20]
add eax, dword [ebp - 0x20]
mov dword [ebp - 0x20], eax
movzx eax, byte [edi + 0x38]
cmp eax, 9
jbe 0x426584
jmp 0x427b12
fstp st(0)
fstp st(3)
fstp st(1)
fstp st(0)
fstp st(0)
mov eax, dword [ebp - 0xc]
mov dword [edi + 0x1c], eax
mov eax, dword [ebp - 8]
mov dword [edi + 0x18], eax
and dword [esi + 4], 0
push dword [ebp + 8]
jmp 0x427bd5
fld qword [0x4739a0]
shr dword [ebp - 0xc], 3
sub dword [ebp - 8], ebx
fstp qword [ebp - 0x34]
fld qword [0x473998]
fstp qword [ebp - 0x54]
fld qword [0x473990]
fstp qword [ebp - 0x3c]
fld qword [0x473988]
fstp qword [ebp - 0x2c]
fld qword [ebp - 0x3c]
fcomp qword [ebp - 0x34]
fnstsw ax
test ah, 5
jp 0x4276bf
fld qword [ebp - 0x54]
faddp st(2)
fxch st(1)
fstp qword [ebp - 0x54]
fld qword [ebp - 0x3c]
fld qword [ebp - 0x3c]
fucompp
fnstsw ax
test ah, 0x44
jp 0x4276c1
fld qword [ebp - 0x2c]
fld qword [ebp - 0x2c]
fucompp
fnstsw ax
test ah, 0x44
jp 0x4276a5
fld qword [ebp - 0x3c]
fld qword [ebp - 0x2c]
fmul qword [0x473978]
fsubp st(1)
fstp qword [ebp - 0x34]
fld qword [ebp - 0x54]
fadd qword [0x473970]
fadd qword [ebp - 0x3c]
fadd qword [ebp - 0x34]
fld qword [ebp - 0x34]
fmul qword [0x473968]
fsubp st(1)
fld qword [ebp - 0x3c]
fmulp st(2)
fsubrp st(1)
fstp qword [ebp - 0x3c]
jmp 0x4276a7
fstp st(0)
fld qword [ebp - 0x54]
fcomp qword [ebp - 0x34]
fnstsw ax
test ah, 0x41
jp 0x4276c3
fld qword [ebp - 0x2c]
fsub qword [ebp - 0x3c]
fstp qword [ebp - 0x34]
jmp 0x4276c3
fstp st(0)
fstp st(0)
fld qword [0x473920]
mov byte [edi + 0x38], 9
fstp qword [ebp - 0x3c]
fld qword [0x473918]
fstp qword [ebp - 0x54]
fld qword [0x473910]
fstp qword [ebp - 0x5c]
fld qword [0x473908]
fstp qword [ebp - 0x5c]
fld qword [0x473900]
fstp qword [ebp - 0x5c]
fld qword [ebp - 0x54]
fcomp qword [ebp - 0x54]
fnstsw ax
test ah, 1
jne 0x42770a
fld qword [ebp - 0x5c]
fadd qword [ebp - 0x3c]
fstp qword [ebp - 0x5c]
push 0xfffffffffffffffd
jmp 0x427bc3
push 0xfffffffffffffffc
jmp 0x427bc3
mov eax, dword [ebp - 0xc]
mov dword [edi + 0x1c], eax
mov eax, dword [ebp - 8]
mov dword [edi + 0x18], eax
mov dword [esi + 4], edx
jmp 0x427606
mov byte [edi + 0x38], 9
mov dword [ebp - 0x38], 0x4f
mov dword [ebp - 0x38], 0x47
mov dword [ebp - 0x28], 0x15
mov eax, dword [ebp - 0x28]
mov ecx, dword [ebp - 0x38]
cmp ecx, eax
jle 0x42770a
mov eax, dword [ebp - 0x28]
mov ecx, dword [ebp - 0x28]
cmp eax, ecx
je 0x42770a
mov eax, dword [ebp - 0x38]
mov ecx, dword [ebp - 0x28]
imul eax, eax, 0x29
lea eax, [eax + ecx - 0x12]
add eax, dword [ebp - 0x38]
mov dword [ebp - 0x28], eax
jmp 0x42770a
mov ecx, dword [ebp - 0xc]
mov dword [edi + 0x1c], ecx
mov ecx, dword [ebp - 8]
mov dword [edi + 0x18], ecx
mov ecx, dword [ebp - 0x14]
mov dword [esi + 4], ecx
mov ecx, dword [ebp - 0x10]
mov edx, ecx
sub edx, dword [esi]
mov dword [esi], ecx
mov ecx, dword [ebp - 0x18]
add dword [esi + 8], edx
mov dword [edi + 0x30], ecx
push eax
jmp 0x427be7
fstp st(0)
mov byte [edi + 0x38], 9
jmp 0x42770a
cmp ebx, 0xfffffffd
jne 0x4277b4
push dword [edi + 8]
call fcn.0043e7ce
mov byte [edi + 0x38], 9
push ebx
jmp 0x427bc3
mov eax, dword [ebp - 0xc]
fstp st(3)
fstp st(3)
mov dword [edi + 0x1c], eax
mov eax, dword [ebp - 8]
fstp st(1)
fstp st(0)
mov dword [edi + 0x18], eax
fstp st(0)
mov dword [esi + 4], ecx
jmp 0x427606
push dword [edi + 8]
fstp st(0)
fstp st(3)
fstp st(1)
fstp st(0)
fstp st(0)
call fcn.0043e7ce
fld qword [0x473920]
fstp qword [ebp - 0x3c]
fld qword [0x473918]
fstp qword [ebp - 0x54]
fld qword [0x473910]
fstp qword [ebp - 0x5c]
fld qword [0x473908]
fstp qword [ebp - 0x5c]
fld qword [0x473900]
fstp qword [ebp - 0x5c]
fld qword [ebp - 0x54]
fcomp qword [ebp - 0x54]
fnstsw ax
test ah, 1
jne 0x42782d
fld qword [ebp - 0x5c]
fadd qword [ebp - 0x3c]
fstp qword [ebp - 0x5c]
mov byte [edi + 0x38], 9
mov dword [ebp - 0x20], 0x43
mov eax, dword [ebp - 0x20]
mov ecx, dword [ebp - 0x20]
imul eax, ecx
mov ecx, dword [ebp - 0x20]
sub eax, ecx
add eax, dword [ebp - 0x20]
push 0xfffffffffffffffd
add eax, dword [ebp - 0x20]
mov ecx, dword [ebp - 0x20]
lea eax, [eax + ecx + 0x46]
mov dword [ebp - 0x20], eax
mov eax, dword [ebp - 0x20]
pop ecx
sub ecx, eax
add ecx, dword [ebp - 0x20]
push 0x24
add ecx, dword [ebp - 0x20]
mov dword [ebp - 0x20], ecx
mov eax, dword [ebp - 0x20]
cdq
pop ecx
idiv ecx
push 0xffffffffffffffe9
pop ebx
push 0x53
mov ecx, eax
mov eax, dword [ebp - 0x20]
cdq
idiv ebx
sub eax, ecx
mov ecx, dword [ebp - 0x20]
imul ecx, ecx, 0x29
sub eax, ecx
mov ecx, dword [ebp - 0x20]
sub eax, ecx
mov ecx, dword [ebp - 0x20]
sub eax, ecx
mov ecx, dword [ebp - 0x20]
sub eax, ecx
add eax, dword [ebp - 0x20]
add eax, dword [ebp - 0x20]
mov ecx, dword [ebp - 0x20]
lea eax, [eax + ecx + 0x61]
mov dword [ebp - 0x20], eax
mov eax, dword [ebp - 0x20]
mov ecx, dword [ebp - 0x20]
sub eax, ecx
mov dword [ebp - 0x20], eax
mov eax, dword [ebp - 0x20]
mov ecx, dword [ebp - 0x20]
imul eax, ecx
pop ecx
push 0xfffffffffffffffd
jmp 0x427b9e
mov ebx, dword [ebp - 0x30]
cmp edi, 0xfffffffd
jne 0x427912
push dword [ebx + 8]
call fcn.0043e7ce
mov dword [ebp - 0x38], 0x4f
mov dword [ebp - 0x38], 0x47
mov dword [ebp - 0x28], 0x15
mov eax, dword [ebp - 0x28]
mov ecx, dword [ebp - 0x38]
cmp ecx, eax
jle 0x42790e
mov eax, dword [ebp - 0x28]
mov ecx, dword [ebp - 0x28]
cmp eax, ecx
je 0x42790e
mov eax, dword [ebp - 0x38]
mov ecx, dword [ebp - 0x28]
imul eax, eax, 0x29
lea eax, [eax + ecx - 0x12]
add eax, dword [ebp - 0x38]
mov dword [ebp - 0x28], eax
mov byte [ebx + 0x38], 9
fld qword [0x4739c0]
mov eax, dword [ebp - 0xc]
fstp qword [ebp - 0x5c]
push edi
fld qword [0x473a48]
fstp qword [ebp - 0x5c]
fld qword [0x473928]
fstp qword [ebp - 0x5c]
fld qword [0x4739b8]
fstp qword [ebp - 0x3c]
fld qword [0x4739b0]
fstp qword [ebp - 0x5c]
fld qword [0x473a50]
fstp qword [ebp - 0x54]
fld qword [ebp - 0x54]
fmul qword [ebp - 0x3c]
fmul qword [ebp - 0x5c]
fsub qword [0x4739a8]
fsub qword [ebp - 0x54]
mov dword [ebx + 0x1c], eax
mov eax, dword [ebp - 8]
mov dword [ebx + 0x18], eax
mov eax, dword [ebp - 0x14]
fstp qword [ebp - 0x3c]
mov dword [esi + 4], eax
mov eax, dword [ebp - 0x10]
mov ecx, eax
sub ecx, dword [esi]
mov dword [esi], eax
mov eax, dword [ebp - 0x18]
add dword [esi + 8], ecx
mov dword [ebx + 0x30], eax
jmp 0x427be9
fld qword [0x473920]
fstp qword [ebp - 0x3c]
fld qword [0x473918]
fstp qword [ebp - 0x54]
fld qword [0x473910]
fstp qword [ebp - 0x5c]
fld qword [0x473908]
fstp qword [ebp - 0x5c]
fld qword [0x473900]
fstp qword [ebp - 0x5c]
fld qword [ebp - 0x54]
fcomp qword [ebp - 0x54]
fnstsw ax
test ah, 1
jne 0x4279ca
fld qword [ebp - 0x5c]
fadd qword [ebp - 0x3c]
fstp qword [ebp - 0x5c]
mov ebx, dword [ebp - 0x30]
mov eax, dword [ebp - 0xc]
mov dword [ebx + 0x1c], eax
mov eax, dword [ebp - 8]
mov dword [ebx + 0x18], eax
mov eax, dword [ebp - 0x14]
mov dword [esi + 4], eax
mov eax, dword [ebp - 0x10]
mov ecx, eax
sub ecx, dword [esi]
mov dword [esi], eax
mov eax, dword [ebp - 0x18]
add dword [esi + 8], ecx
mov dword [ebx + 0x30], eax
push 0xfffffffffffffffc
jmp 0x427be9
fld qword [0x473a38]
mov byte [edi + 0x38], 7
fstp qword [ebp - 0x54]
fld qword [0x473a30]
fstp qword [ebp - 0x34]
fld qword [0x473a28]
fstp qword [ebp - 0x3c]
fld qword [0x473988]
fstp qword [ebp - 0x5c]
fld qword [0x473930]
fstp qword [ebp - 0x3c]
fld qword [ebp - 0x5c]
fsub qword [ebp - 0x54]
fstp qword [ebp - 0x3c]
fld qword [ebp - 0x34]
fmul qword [0x473a20]
fstp qword [ebp - 0x34]
fld qword [ebp - 0x3c]
fadd qword [0x473a18]
fadd qword [ebp - 0x54]
fld qword [ebp - 0x54]
fdiv qword [0x473a60]
fsubp st(1)
fstp qword [ebp - 0x3c]
fld qword [ebp - 0x3c]
fadd qword [ebp - 0x3c]
fsub qword [0x473a58]
fld qword [ebp - 0x3c]
fmul qword [ebp - 0x3c]
fsubp st(1)
fadd qword [0x473a10]
fld qword [ebp - 0x3c]
fdiv qword [0x473a08]
fsubp st(1)
fstp qword [ebp - 0x3c]
jmp 0x427a8c
fstp st(0)
fstp st(3)
fstp st(1)
fstp st(0)
fstp st(0)
mov eax, dword [ebp - 0x18]
push dword [ebp + 8]
mov ebx, edi
mov dword [edi + 0x30], eax
call fcn.00423614
pop ecx
mov ecx, dword [edi + 0x30]
mov dword [ebp - 0x18], ecx
cmp dword [edi + 0x2c], ecx
jne 0x42776e
fld qword [0x473a68]
fst qword [ebp - 0x5c]
fld qword [0x473a48]
fstp qword [ebp - 0x54]
fld qword [0x473a40]
fstp qword [ebp - 0x3c]
fld qword [ebp - 0x5c]
fsub qword [ebp - 0x54]
mov byte [edi + 0x38], 8
fstp qword [ebp - 0x54]
jmp 0x427ade
fstp st(4)
fstp st(2)
fstp st(0)
fstp st(0)
fstp qword [ebp - 0x5c]
push 1
fld qword [0x473a48]
fstp qword [ebp - 0x54]
fld qword [0x473a40]
fstp qword [ebp - 0x3c]
fld qword [ebp - 0x5c]
fsub qword [ebp - 0x54]
fstp qword [ebp - 0x54]
jmp 0x427bc3
fstp st(0)
fstp st(3)
fstp st(1)
fstp st(0)
fstp st(0)
jmp 0x42770a
mov dword [ebp - 0x20], 0x43
mov eax, dword [ebp - 0x20]
mov ecx, dword [ebp - 0x20]
imul eax, ecx
mov ecx, dword [ebp - 0x20]
sub eax, ecx
add eax, dword [ebp - 0x20]
push 0xfffffffffffffffd
add eax, dword [ebp - 0x20]
mov ecx, dword [ebp - 0x20]
lea eax, [eax + ecx + 0x46]
mov dword [ebp - 0x20], eax
mov eax, dword [ebp - 0x20]
pop ecx
sub ecx, eax
add ecx, dword [ebp - 0x20]
push 0x24
add ecx, dword [ebp - 0x20]
mov dword [ebp - 0x20], ecx
mov eax, dword [ebp - 0x20]
cdq
pop ecx
idiv ecx
push 0xffffffffffffffe9
pop ebx
push 0x53
mov ecx, eax
mov eax, dword [ebp - 0x20]
cdq
idiv ebx
sub eax, ecx
mov ecx, dword [ebp - 0x20]
imul ecx, ecx, 0x29
sub eax, ecx
mov ecx, dword [ebp - 0x20]
sub eax, ecx
mov ecx, dword [ebp - 0x20]
sub eax, ecx
mov ecx, dword [ebp - 0x20]
sub eax, ecx
add eax, dword [ebp - 0x20]
add eax, dword [ebp - 0x20]
mov ecx, dword [ebp - 0x20]
lea eax, [eax + ecx + 0x61]
mov dword [ebp - 0x20], eax
mov eax, dword [ebp - 0x20]
mov ecx, dword [ebp - 0x20]
sub eax, ecx
mov dword [ebp - 0x20], eax
mov eax, dword [ebp - 0x20]
mov ecx, dword [ebp - 0x20]
imul eax, ecx
pop ecx
push 0xfffffffffffffffe
imul eax, eax, 0x16da
cdq
idiv ecx
mov dword [ebp - 0x20], eax
mov eax, dword [ebp - 0x20]
add eax, dword [ebp - 0x20]
mov ecx, dword [ebp - 0x20]
lea eax, [eax + ecx + 0x2a]
mov dword [ebp - 0x20], eax
mov eax, dword [ebp - 0x20]
add eax, dword [ebp - 0x20]
mov dword [ebp - 0x20], eax
mov eax, dword [ebp - 0xc]
mov dword [edi + 0x1c], eax
mov eax, dword [ebp - 8]
mov dword [edi + 0x18], eax
mov eax, dword [ebp - 0x14]
mov dword [esi + 4], eax
mov eax, dword [ebp - 0x10]
mov ecx, eax
sub ecx, dword [esi]
mov dword [esi], eax
mov eax, dword [ebp - 0x18]
add dword [esi + 8], ecx
mov dword [edi + 0x30], eax
mov ebx, edi
call fcn.00423614
pop ecx
pop edi
pop esi
pop ebx
leave
ret